Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Работа с сетью в Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 29.11.2009, 13:37   #1
KoBRaAndrey
Форумчанин
 
Регистрация: 01.10.2009
Сообщений: 302
По умолчанию По POP3 с Mail.ru получаю "крякозябры"

Получаю письмо с мейл ру:
pop3.connect;
pop3.Login;
POP3.Retrieve(52,IdMessage1);
Memo1.Lines.AddStrings(IdMessage1.B ody);

Получаю: Ïåðåñòàíü ñïóñêàòü ñ ñåáÿ ëîæü, îáìàí, ïðåäàòåëüñòâî!
KoBRaAndrey вне форума Ответить с цитированием
Старый 29.11.2009, 13:51   #2
MadReason
Ищу работу
Форумчанин
 
Аватар для MadReason
 
Регистрация: 16.02.2007
Сообщений: 269
По умолчанию

меняй кодировку.
http://onlisoft.h11.ru/faqdelphi/3.txt

почитай тут, есть примеры определения кодировок и их конвертации
Пишу на Delphi все что угодно, недорого, красиво, с комментариями
###icq 107335###
MadReason вне форума Ответить с цитированием
Старый 29.11.2009, 14:47   #3
KoBRaAndrey
Форумчанин
 
Регистрация: 01.10.2009
Сообщений: 302
По умолчанию

Прочитал, не нашел чего-то ответ

Поставил в настройках NoEncode\NoDecode, вышол бред, но кодировка кои.
В том файле нашел код кодировки кои ту вин:
Код:
const
Koi: Array[0..66] of Char = ('T', 'Ё', 'ё', 'А', 'Б', 'В', 'Г', 'Д', 'Е', 'Ж',
'З', 'И', 'Й', 'К', 'Л', 'М', 'Н', 'О', 'П', 'Р',
'С', 'Т', 'У', 'Ф', 'Х', 'Ц', 'Ч', 'Ш', 'Щ', 'Ъ',
'Ы', 'Ь', 'Э', 'Ю', 'Я', 'а', 'б', 'в', 'г', 'д',
'е', 'ж', 'з', 'и', 'й', 'к', 'л', 'м', 'н', 'о',
'п', 'р', 'с', 'т', 'у', 'ф', 'х', 'ц', 'ч', 'ш',
'щ', 'ъ', 'ы', 'ь', 'э', 'ю', 'я');
Win: Array[0..66] of Char = ('ё', 'Ё', 'T', 'ю', 'а', 'б', 'ц', 'д', 'е', 'ф',
'г', 'х', 'и', 'й', 'к', 'л', 'м', 'н', 'о', 'п',
'я', 'р', 'с', 'т', 'у', 'ж', 'в', 'ь', 'ы', 'з',
'ш', 'э', 'щ', 'ч', 'ъ', 'Ю', 'А', 'Б', 'Ц', 'Д',
'Е', 'Ф', 'Г', 'Х', 'И', 'Й', 'К', 'Л', 'М', 'Н',
'О', 'П', 'Я', 'Р', 'С', 'Т', 'У', 'Ж', 'В', 'Ь',
'Ы', 'З', 'Ш', 'Э', 'Щ', 'Ч', 'Ъ');


function WinToKoi(Str: String): String;
var
i, j, Index: Integer;
begin
Result := '';

for i := 1 to Length(Str) do
begin
Index := -1;
for j := Low(Win) to High(Win) do
if Win[j] = Str[i] then
begin
Index := j;
Break;
end;

if Index = -1
then Result := Result + Str[i]
else Result := Result + Koi[Index];
end;
end;

function KoiToWin(Str: String): String;
var
i, j, Index: Integer;
begin
Result := '';

for i := 1 to Length(Str) do
begin
Index := -1;
for j := Low(Win) to High(Win) do
if Koi[j] = Str[i] then
begin
Index := j;
Break;
end;

if Index = -1
then Result := Result + Str[i]
else Result := Result + Win[Index];
end;
end; 

Пример использования:
procedure TForm1.Button1Click(Sender: TObject);
begin
Memo1.Text := WinToKoi(Memo2.Text);
end;

procedure TForm1.Button2Click(Sender: TObject);
begin
Memo1.Text := KoiToWin(Memo2.Text);
end;
пишу:
Memo1.Text := KoiToWin(Memo1.Text);
0 разницы. Но штирлиц с легкостью переобразует текст кои ту вин без ошибок
Странно! В Memo иероглифы, когда копирую сюда то русские буквы, и функция кои ту вин работает с таким текстом! Что сделать с мемо чтобы были руские буквы?
теперь опять какието кодировки... типа - ú.ù. разшифровывает штирлиц просто..

Последний раз редактировалось KoBRaAndrey; 29.11.2009 в 20:44.
KoBRaAndrey вне форума Ответить с цитированием
Старый 29.11.2009, 15:43   #4
Квэнди
Старожил
 
Аватар для Квэнди
 
Регистрация: 13.12.2006
Сообщений: 3,859
По умолчанию

Смотрите исходный текст письма в любом почтовом клиенте, в котором оно отображается нормально. В исходнике будет указана кодировка ( по аналогии с HTML документами), именно эту кодировку вам и надо прописать в Idpop3 при получении письма.
ICQ не для вопросов, а для предложений. Для вопросов используйте форум
IRC канал клуба программистов|Мои статьи
Квэнди вне форума Ответить с цитированием
Старый 29.11.2009, 16:45   #5
KoBRaAndrey
Форумчанин
 
Регистрация: 01.10.2009
Сообщений: 302
По умолчанию

На мейл ру можно выбирать кодировку при просмотре. А где прописать ето в Idpop?

Не кто не подскажет как перевести:
óÔ×ÏÒÅÎÏ ÎÏ×ÉÊ ÚÁÐÉÓ ÐÒÏ ÄÏÍÅÎÎÅ ¦Í'Ñ:
в нормальный текст?

Последний раз редактировалось Stilet; 30.11.2009 в 10:42.
KoBRaAndrey вне форума Ответить с цитированием
Старый 29.11.2009, 22:14   #6
Квэнди
Старожил
 
Аватар для Квэнди
 
Регистрация: 13.12.2006
Сообщений: 3,859
По умолчанию

Цитата:
Сообщение от KoBRaAndrey Посмотреть сообщение
Не кто не подскажет как перевести:
óÔ×ÏÒÅÎÏ ÎÏ×ÉÊ ÚÁÐÉÓ ÐÒÏ ÄÏÍÅÎÎÅ ¦Í'Ñ:
в нормальный текст?
еще раз читаем:
Цитата:
Смотрите исходный текст письма в любом почтовом клиенте, в котором оно отображается нормально. В исходнике будет указана кодировка ( по аналогии с HTML документами), именно эту кодировку вам и надо прописать в Idpop3 при получении письма.
ICQ не для вопросов, а для предложений. Для вопросов используйте форум
IRC канал клуба программистов|Мои статьи
Квэнди вне форума Ответить с цитированием
Старый 29.11.2009, 22:17   #7
KoBRaAndrey
Форумчанин
 
Регистрация: 01.10.2009
Сообщений: 302
По умолчанию

Где прописать в Idpop3???
KoBRaAndrey вне форума Ответить с цитированием
Старый 30.11.2009, 08:25   #8
Квэнди
Старожил
 
Аватар для Квэнди
 
Регистрация: 13.12.2006
Сообщений: 3,859
По умолчанию

Для этого используются кодеры/декодеры с вкладки indy/misc
Покажите полный исходный текст письма с всеми заголовками (просмотреть можно в любом клиента: outlook, thunderbird и т.д.
ICQ не для вопросов, а для предложений. Для вопросов используйте форум
IRC канал клуба программистов|Мои статьи
Квэнди вне форума Ответить с цитированием
Старый 30.11.2009, 08:56   #9
KoBRaAndrey
Форумчанин
 
Регистрация: 01.10.2009
Сообщений: 302
По умолчанию

Вот исходный текст:

Return-path: <notify@hostmaster.net.ua>
Received: from [193.29.220.4] (port=50205 helo=odb2.hostmaster.net.ua)
by mx78.mail.ru with esmtp
id 1MxQ5a-000AR2-00
for mini-mod@mail.ru; Mon, 12 Oct 2009 22:57:46 +0400
Received-SPF: none (mx78.mail.ru: 193.29.220.4 is neither permitted nor denied by domain of hostmaster.net.ua) client-ip=193.29.220.4; envelope-from=notify@hostmaster.net.ua; helo=odb2.hostmaster.net.ua;
X-Mru-PTR: odb2.hostmaster.net.ua
X-Mru-NR: 1
X-Mru-OF: Linux (ethernet/modem)
X-Mru-RC: UA
Message-Id: <1255373866.3266990040@mx78.mail.ru >
Received: from oscar3.hostmaster.net.ua ([10.10.1.60] helo=oscar.hostmaster.net.ua)
by odb2.hostmaster.net.ua with smtp (Exim 4.69)
(envelope-from <notify@hostmaster.net.ua>)
id 1MxQ5Z-0008Fu-G6; Mon, 12 Oct 2009 21:57:45 +0300
From: ".UA Registration System" <notify@hostmaster.net.ua>
To: "Customers" <help@org.ua>
Date: Mon, 12 Oct 2009 21:57:45 +0300
Subject: CREATED: mini-mod.org.ua (Domain Record #36241281)
Mime-Version: 1.0
Content-Type: text/plain; charset=koi8-u
Content-Transfer-Encoding: 8bit
Reply-To: notify@hostmaster.net.ua
X-Notifier: UANIC-NOTIFY
X-Template: DOM_NEW
X-UANIC-QID: 14786188
X-Spam: Not detected
X-Mras: Ok

To: help@org.ua,mini-mod@mail.ru,mini-mod@mail.ru

уФЧПТЕОП ОПЧЙК ЪБРЙУ РТП ДПНЕООЕ ¦Н'С:

domain: mini-mod.org.ua
admin-c: MINI6-UANIC
tech-c: MINI6-UANIC
status: OK-UNTIL 20101012215643
dom-public: NO
nserver: ns.secondary.net.ua
nserver: primaryns.kiev.ua
remark: Mini-Mod
changed: UARR170-UANIC 20091012215643
source: UANIC
KoBRaAndrey вне форума Ответить с цитированием
Старый 30.11.2009, 09:05   #10
Квэнди
Старожил
 
Аватар для Квэнди
 
Регистрация: 13.12.2006
Сообщений: 3,859
По умолчанию

Цитата:
Mime-Version: 1.0
ключевая фраза
Вам необходимо использовать IdDecoderMIME с вкладки indy/Misc
ICQ не для вопросов, а для предложений. Для вопросов используйте форум
IRC канал клуба программистов|Мои статьи
Квэнди вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
POP3 Cpluser Общие вопросы .NET 1 30.11.2009 11:25
Считываю цвета и получаю $FFFFFFFF.. Alex Cones Мультимедиа в Delphi 13 18.11.2009 20:14
Крякозябры в Excel 2007 amigo Microsoft Office Excel 4 13.12.2008 15:17
Получаю хендл окна виндовского калькулятора Lich Win Api 8 01.07.2008 10:43
Отправка сообщений с использованием POP3 AidarBik Работа с сетью в Delphi 7 08.01.2008 12:16