Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Начинающим";
Текущий архив: 2010.01.17;
Скачать: [xml.tar.bz2];

Вниз

Компонент MRIM   Найти похожие ветки 

 
Ohotnic ©   (2009-11-25 07:32) [0]

Здравствуйте.
Скачал http://yxu.org.ru/index.php?do=load&id=1&cat=sources компонент для Delphi для работы с Mail Ru Agent(MRA) протоколом. Помогите разобраться,  Мне нужен хотя бы фрагмент кода из действующей программы например из окна ввода логина и пароля и соединение с сервером.


 
TIF ©   (2009-11-26 06:58) [1]

Первым делом читаем кто автор творения и ищем его официальный сайт
То бишь ищем readme, или ищем подробности в комментариях в pas-файлах, или просто-напросто гуглим ;-)

Сайт автора - http://www.mak-ms.com
На данный момент он не работает, но это не беда, ибо кеш у поисковиков никто не отменял. В гугле страницы от 14 ноября:
http://www.google.com/search?q=site%3Amak-ms.com%2Fforum+TMailClient

Там же заодно находим весьма ценное замечание:
Mail.ru сменили версию протокола. Раньше была 1.7, теперь 1.12. Нужно поменять версию в proto.pas

Пожертвую результат своих давних экспериментов :)
Проверялось на Delphi 7

Что нужно:
MailClient1: TMailClient;
TcpClient1: TTcpClient;


У TMailClient обрабатываем следующие события:
procedure TForm1.MailClient1RecievedHost(Sender: TObject);
begin
  MailClient1.Connect;
end;

procedure TForm1.MailClient1Connect(Sender: TObject);
begin
  MailClient1.Hello;
end;

procedure TForm1.MailClient1Hello(Sender: TObject);
begin
  MailClient1.Authorize;
end;

(меня уже смущает, почему сразу в Connect нельзя было прописать Authorize, но проверять себя сейчас не буду, долго :)

Подключаемся:
var
  MessCount, i, j: Integer;
  MrimS: String;
begin
  TCPClient1.Active:=True;
  if TCPClient1.Connected
    then MrimS:=TCPClient1.Receiveln(#$A); // Получаем IP и порт для подключения
  TCPClient1.Disconnect; // Подстрахуемся
  if MrimS <> ""
    then for i:=1 to Length(MrimS) do
      if MrimS[i] = ":"
         then begin
                 MailClient1.Host:=Copy(MrimS, 0, i-1);
                 MailClient1.Port:=StrToInt(Copy(MrimS, i+1, Length(MrimS)-i));
                 break;
              end;
  if MailClient1.HostInit
    then MailClient1.Connect  // Подключаемся
    else MailClient1.RequestHost;


Запрашиваем авторизацию у контакта:
MailClient1.ContactAuthorize("andrewtishkin@mail.ru");

Отправляем сообщение:
MailClient1.SendMessage("andrewtishkin@mail.ru", "Привет :)");

Отправляем SMS:
MailClient1.SendSMS("+7 ... ", "Тестируем СМС");

Чтобы облегчить тестирование:
  if MailClient1.Connected
    then SendMessage ...
    else // Нет подключения


Отключаемся:
  MailClient1.Disconnect;


 
TIF ©   (2009-11-26 07:29) [2]

Хе-хе, как раз 5 дней назад, 21 ноября, всё это проскакивало на винграде:
http://forum.vingrad.ru/index.php?showtopic=275368&view=findpost&p=2026693

Google рулит...



Страницы: 1 вся ветка

Форум: "Начинающим";
Текущий архив: 2010.01.17;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.45 MB
Время: 0.015 c
2-1257602459
Zalm
2009-11-07 17:00
2010.01.17
DSPack + WebCam


2-1259123521
Ohotnic
2009-11-25 07:32
2010.01.17
Компонент MRIM


1-1233135151
nes
2009-01-28 12:32
2010.01.17
TPopupMenu - подменю с левой стороны


2-1257530320
Zalm
2009-11-06 20:58
2010.01.17
Странности с TMediaPlayer


2-1259392755
Kuzmi4
2009-11-28 10:19
2010.01.17
Открыть новую форму, полностью переписав её





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский