\ возможность автозагрузки
(опция
в
и /файле настроек small_rabot.ini);
" 7 \ индикация значка в трее (закрыть средней
статус, пра-
кнопкой мыши, левая кнопка
вая - подсказка).
Т е п е р ь п е р е й д е м
н е п о с р е д с тв е н н о к коду.«.
И
так, приступим к основной задаче. Для рабо-
ты нам понадобиться следующее:
1
\ бесплатная среда разработки IDE
J
TurboDelphi Lite (TDL) portable для отладки
и компиляции тестового проекта. Страница про-
екта www.andyaska.com/?act=download&mode=detail-
&id=34 и прямая ссылка на скачивание www.andyas-
ka.com/?act=download&mode=get&id=34);
t
) \ модуль-компонент ICQClient (GNU библио-
^ )тека ICQ http://sourceforge.net/projects/ticqlib
или на официальном сайте разработчика компо-
нента TICQClient www.cobans.net);
наличие интернета и свободный номер
ICQ.
Ввиду ограниченности места в журнале, рас-
смотрим только основные моменты реализации.
Ввиду избыточности визуальной формы для про-
граммы, разработку осуществим на\Л/тАР1. Преж-
де всего, создадим свой класс /сс/вос/с и добавим
события
о п М е з в а д е Р е с у , о п О И И п е М Б д И е с у
и
о п С о п п е с Н о п Р а И е б
компонента
ТЮ О С Н епЬ
Кода будет самый минимум. Реализация подоб-
ного подхода представлена в следующих листин-
гах. Основной модуль, создание класса и назначе-
ние событий:
type
icqsock=class
ICQClientl :TICQCIient;
procedure MessageRecv(Sender: TObject; Msg,
UIN: String);
procedure ConnectionFailed(Sender: TObject);
procedure Login(Sender: TObject);
procedure LogOff(Sender: TObject);
public
constructor Create;
destructor Destroy; override;
procedure WndProc(var Msg:TMessage);
end;
var
Msg: tmsg;
ICQClientl: TICQClient;
Server 1:icqsock;
ini: TlniFile;
FWND: HWND;
status: string = ‘выключен.
..’;
path, s, bd, Passwords ProxyUserlD_, ProxyPass_,
ProxyHost_, dostup: string;
uin_, ProxyPort_, icq, conn, flag2: integer;
fl: textfile;
constructor icqsock.Create;
Begin
inherited Create;
FWnd:= AllocateHWnd(WndProc);
ICQClientl := TICQCIient.Create(nil); / / назначение
событий модуля
ICQClientl .OnMessageRecv := MessageRecv;
ICQClientl .OnConnectionFailed :=
ConnectionFailed;
ICQClientl .OnLogin := Login;
ICQClientl .OnLogOff := LogOff
End;
destructor icqsock.Destroy;
Begin
ICQClientl.Free;
deAllocateHWnd(fwnd);
inherited Destroy
End;
begin
/ / путь к базе ответов и вопросов
s:= ExtractFilepath(paramstr(0)) +
Extra ctFilename( paramstr( 0));
path:= ChangeFileExt(s, ‘.ini’); / / настройки
ini:= TlniFile.Create(path);
timer_create;
Server1:= icqsock.Create;
with server 1.ICQClientl do begin
ConvertToPlaintext := true;
ConnectionTimeout := 0;
ICQPort := 5190;
ICQPortViaHTTP := 80;
ICQServer := ‘login.icq.com’;
ICQServerViaHTTP := ‘http.proxy.icq.com’;
PortRangeFirst := 3000;
PortRangeLast := 50000;
SecureLogin := true;
© © ©
П р и ш ё л с р а б о т ы , с н я л б о т и н к и ,
П о н я т ь н е м о ж е т - ч т о з а х р е н ь :
В е с ь д о м с в е р к а е т , н и п ы л и н к и ,
Б е л ь ё п о с т и р а н о , н е л е н ь
С у п р у г е б ы л о м ы т ь п о с у д у ,
С т а з н а к р ы в а т ь , в а р и т ь о б е д !
*
Р о д н а я , э т о п р о с т о ч у д о !»
« Д а ,.
. О т к л ю ч и л и И Н Т Е Р Н Е Т .
..»
предыдущая страница 37 Компьютер 2013 02 читать онлайн следующая страница 39 Компьютер 2013 02 читать онлайн Домой Выключить/включить текст