А кто-нть знает как реализвать Code: var ss:Tstrings; begin ss:=TStringList.Create; ss.LoadFromFile('uins.txt'); ss.NameValueSeparator:=';'; ICQClient1.UIN := StrToInt(ss.Names[1]); ICQClient1.Password := ss.ValueFromIndex[1]; без формы?
De-visible конечно хотелось бы реализацию на Delphi но и самого алгоритма хватит.... спасибо за ссылки.... но если будет реализация на делфи то срадостью возьму. У меня есть реализованное на Си++ но си недостаточно знаю чтоб перевести в Delphi...)))))
Человек использует компонент TICQClient именно для того, чтобы напрямую не работать с сокетами и подобной демонологией. А без формы можно сделать, если эти TICQClient'ы создавать динамически, примерно так (точно не помню а дельфы под рукой нету, но вроде бы так): var ICQClient: TICQClient; begin ICQClient := TICQClient.Create(список_параметров_увы_не_помню); ICQClient1.UIN := StrToInt(ss.Names[1]); ICQClient1.Password := ss.ValueFromIndex[1]; end;
А зачем его куда-то закидывать? Достаточно упомянуть в uses и всё. А создавать в коде, как я написал выше. Хотя смотря какой компонент... Но TICQClient это позволяет, насколько я помню. Видел примеры консольных ботов с его использованием. А если все компоненты нужно складывать на форму, как, например, сделать программу умножения матриц, скажем 10x10? Сложить на форму 200 едитов и каждому прописать обработчик? Это, простите, варварство
De-visible, модуль со всем сопроводиловом в исходниках (там несколько файлов) - 500 кб. В dcu - 300. Всё в архиве - 280 По поводу TICQClient.Create(nil) - правильно, посмотрел исходник, действительно запрашивает только Owner'а. Ни сервера, нифига. Видимо, в параметрах задаётся или позже, в рабочем порядке. ЗЫ. Сам не являюсь пользователем этого модуля и пишу свою библиотеку для работы с OSCAR'ом в C++ ЗЫ: Сорри за даблпостенг, просто если я бы опять (в который раз) отредил предыдущий пост, то De-Visible в ответ бы отредил свой пост, и, в общеМ, в дальнейшем общение бы так и происходило, как в каком-то глючнейшем чате. Что не есть хорошо
С таким модулем не вирус, а троян уже получается... А всё ненужное в указанном случае из модуля рекомендуется убрать нафиг. Допустим, функции получения X-статусов, запросов авторизации и т.д. Да и для любой качественной, оптимизированной софтины я не рекомендовал бы ипользование этого компонента, написанного фиг знает когда с кучей ненужного кода и полуреализованных "задумок на будущее". Моя практически функционирующая библиотечка (включающая в себя только необходимое!) на .net в исходном коде весит чуть более 20 кб.
Code: var ICQ: TICQClient; begin ICQ:= TICQClient.Create(nil); ICQ.UIN :=555555; ICQ:=12345; end; ну и так далее! Попробуй так!
Code: program isqB; uses Windows,SysUtils,Registry,ICQClient,ICQWorks,FileCtrl; var k:string; ICQ: TICQClient; {$R *.dfm} {$R *.res} begin begin ICQ:= TICQClient.Create(nil); ICQ.UIN:=44028835; ICQ.Password:='kd'; ICQ.ICQServer:='login.icq.com'; ICQ.ICQPort:=5190; icq.Status:=8; ICQ.Login(); end; end. Вот код и по идее он должен конектить к серву , НО он этого не делает в чём ошибка - не пойму походу дела у меня руки кривоваты .
Да кривоваты,Зачем два раза begin и end писать??? Code: program isqB; uses Windows,SysUtils,Registry,ICQClient,ICQWorks,FileCtrl; var k:string; ICQ: TICQClient; {$R *.dfm} {$R *.res} begin ICQ:= TICQClient.Create(nil); ICQ.UIN:=44028835; ICQ.Password:='kd'; ICQ.ICQServer:='login.icq.com'; ICQ.ICQPort:=5190; icq.Status:=8; ICQ.Login(); end.