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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 15.03.2011, 23:31   #1
Тутонхамон
Пользователь
 
Аватар для Тутонхамон
 
Регистрация: 09.02.2011
Сообщений: 43
Сообщение Абракадабра в Memo

Программа принимает сообщение с @mail.ru, и отправляет его в Memo следующим образом:
Код:
Memo2.text:=idmessage1.Body.Text;
Отображаются только английские символы и цифры,
а вместо русских символов абракадабра;

Цитата:
Çäðàâñòâóéòå, Åâãåíèé!
Что делать?
Может кто уже сталкивался с этой проблемой.
Тутонхамон вне форума Ответить с цитированием
Старый 21.03.2011, 22:00   #2
Usov
Форумчанин
 
Аватар для Usov
 
Регистрация: 29.09.2009
Сообщений: 228
По умолчанию

какая делфа?
мой пример для мейл.ру под D7:
Код:

procedure TForm1.Button1Click(Sender: TObject);
var
  k,i,FMsgCount: Integer;
  url: String;
  s: String;
begin
  if POP.Connected then
    POP.Disconnect;
  POP.Host := 'pop.mail.ru';
  POP.Port := 110;
  POP.Username := 'wqwdwqdqwdqwdq@mail.ru';
  POP.Password := '312h3l12jh3';
  try
    POP.Connect;
  except
    on E: Exception do
      begin
        MessageDlg(E.Message, mtError, [mbOK], 0);
        Exit;
      end;
  end;
  FMsgCount := POP.CheckMessages;
  for i:=1 to FMsgCount do
  begin
    POP.Retrieve(i, Msg);
    for k:=0 to Msg.MessageParts.Count-1 do
    begin
      if (Msg.MessageParts.Items[k] is TIdText) then
        s := (Msg.MessageParts.Items[k] as TIdText).Body.Text;
      s := GetSubStr(s ,'<a href=http://fxmail.ru/registration?action=check', '>');
      if s <> '' then
        begin
          Memo1.Lines.Text := 'http://fxmail.ru/registration?action=check'+s;
          Break;
        end;
    end;
  end;
end;
Usov вне форума Ответить с цитированием
Старый 21.03.2011, 22:37   #3
kangreon
Форумчанин
 
Аватар для kangreon
 
Регистрация: 03.04.2009
Сообщений: 305
По умолчанию

Текст в кодировке UTF8
Решается проблема леко.
Код:
Memo2.text:=UTF8Decode(idmessage1.Body.Text);
kangreon вне форума Ответить с цитированием
Старый 22.03.2011, 09:40   #4
)Игнат(
Форумчанин
 
Регистрация: 06.01.2008
Сообщений: 180
По умолчанию

Можно так-же попробовать функцию
Код:
ANSIToUTF8(String); 
UTF8ToANSI(String);
Я так проблему решил.
)Игнат( вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
memo int 20h Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM 10 26.07.2010 07:36
Memo artemavd Общие вопросы Delphi 5 02.01.2009 07:36
Перевод из Memo по английскому в Memo по русскому Sanek777 Общие вопросы Delphi 5 26.09.2008 00:17
В Memo сделать так, чтобы текст был разного цвета, разноцветный memo Artem Компоненты Delphi 3 07.09.2007 13:40
В Memo ввёл раз!!! в Memo ввёл два!!! а где Memo ввёл раз??? Хs-You Компоненты Delphi 6 19.08.2007 19:48