P
Port111
Здравствуйте. Использую в своей программе компонент ICQClient v1.34
Мне необходимо чтобы когда в программе происходило определенное действие отправлялось сообщение на мне на аську.
Но проблема в следующем, если программу запущенна в нескольких экземплярах одновременно или UIN отправили в тайм аут (если программу запускали много раз), то icqclient не коннектится ... тогда мне необходимо чтобы icqclient использовал для отправки другой UIN.
В связи с этим у меня несколько проблем:
1. Если хочу использовать событие OnError
<!--shcode--><pre><code class='Delphi'>procedure ICQClient1Error(Sender: TObject; ErrorType: TErrorType;
ErrorMsg: String);[/CODE]
то Delphi выдает ошибку [Error] Unit1.pas(72): Undeclared identifier: 'TErrorType'
Почему и как поправить?
2. Так как событие OnError я не могу использовать, то использую событие ICQClient1ConnectionFailed.
ТО есть если оно происходит мне надо подключиться под другим UIN'ом из списка.
Написал процедуру
<!--shcode--><pre><code class='Delphi'>procedure TForm1.ICQEnter(icqclient :TICQClient);
begin
case EnterUIN of
0:
begin
icqclient.UIN:=111111;
icqclient.Password:='123456';
icqclient.Login(0);
end;
1:
begin
icqclient.UIN:=2222222;
icqclient.Password:='123456';
icqclient.Login(0);
end;
2:
begin
icqclient.UIN:=333333;
icqclient.Password:='123456';
icqclient.Login(0);
end
else
begin
icqclient.UIN:=4444444;
icqclient.Password:='123456';
icqclient.Login(0);
end;
end;
end;[/CODE]
и вызываю её в событии ICQClient1ConnectionFailed
<!--shcode--><pre><code class='Delphi'>EnterUIN:=EnterUIN+1;
ICQEnter(ICQClient1);[/CODE]
Для проверки, специально ложил первый UIN в тайм аут и запускал.
Происходит следующие: Событие ICQClient1ConnectionFailed срабатывает
EnterUIN увеличивается и становиться равным 1, потом выполняется кусок из case of
<!--shcode--><pre><code class='Delphi'> 1:
begin
icqclient.UIN:=2222222;
icqclient.Password:='123456';
icqclient.Login(0);
end;[/CODE]
И всё и НЕ логиниться и НЕ вызывается событытия ICQClient1ConnectionFailed
Пожалуйста помогите...что не так?
Заранее спасибо
Мне необходимо чтобы когда в программе происходило определенное действие отправлялось сообщение на мне на аську.
Но проблема в следующем, если программу запущенна в нескольких экземплярах одновременно или UIN отправили в тайм аут (если программу запускали много раз), то icqclient не коннектится ... тогда мне необходимо чтобы icqclient использовал для отправки другой UIN.
В связи с этим у меня несколько проблем:
1. Если хочу использовать событие OnError
<!--shcode--><pre><code class='Delphi'>procedure ICQClient1Error(Sender: TObject; ErrorType: TErrorType;
ErrorMsg: String);[/CODE]
то Delphi выдает ошибку [Error] Unit1.pas(72): Undeclared identifier: 'TErrorType'
Почему и как поправить?
2. Так как событие OnError я не могу использовать, то использую событие ICQClient1ConnectionFailed.
ТО есть если оно происходит мне надо подключиться под другим UIN'ом из списка.
Написал процедуру
<!--shcode--><pre><code class='Delphi'>procedure TForm1.ICQEnter(icqclient :TICQClient);
begin
case EnterUIN of
0:
begin
icqclient.UIN:=111111;
icqclient.Password:='123456';
icqclient.Login(0);
end;
1:
begin
icqclient.UIN:=2222222;
icqclient.Password:='123456';
icqclient.Login(0);
end;
2:
begin
icqclient.UIN:=333333;
icqclient.Password:='123456';
icqclient.Login(0);
end
else
begin
icqclient.UIN:=4444444;
icqclient.Password:='123456';
icqclient.Login(0);
end;
end;
end;[/CODE]
и вызываю её в событии ICQClient1ConnectionFailed
<!--shcode--><pre><code class='Delphi'>EnterUIN:=EnterUIN+1;
ICQEnter(ICQClient1);[/CODE]
Для проверки, специально ложил первый UIN в тайм аут и запускал.
Происходит следующие: Событие ICQClient1ConnectionFailed срабатывает
EnterUIN увеличивается и становиться равным 1, потом выполняется кусок из case of
<!--shcode--><pre><code class='Delphi'> 1:
begin
icqclient.UIN:=2222222;
icqclient.Password:='123456';
icqclient.Login(0);
end;[/CODE]
И всё и НЕ логиниться и НЕ вызывается событытия ICQClient1ConnectionFailed
Пожалуйста помогите...что не так?
Заранее спасибо