Witam Wszystkich już jakiś czas próbuje i próbuje i nic mi z tego nie wychodzi mianowicie dążę do tego żeby wyłapać wyjątek w indy 10 O niepoprawnym połaczeniu "invalid userrname/password' w** wątku** i wyświetlić go na Form1 w Labelu zamiast wyrzucania mi błedu na cały ekran.Dodam że niesprawdza się to tylko kiedy program działa w wątku i ma za zadanie łączyć sie do pop3 poprzez login i hasło wpisane w >memo1 i memo2 i jest to pętla
for to do
a tu troche kodu
TSprawdz = class(TThread)
protected
procedure Execute; override;
end;
A tu Execute
procedure TSprawdz.Execute;
var
ilosc:integer;
i:integer;
begin
FreeOnTerminate := True; // zakoncz watek po zaknczeniu tej procedury
Form1.listbox1.clear;
Form1.listbox2.clear;
Form1.listbox3.Clear;
ilosc:=Form1.Memo1.Lines.Count;
for i:=0 to ilosc do
begin
try
Form1.IdPOP3.Host:='pop3.o2.pl'; // host pop3
Form1.IdPOP3.Username:=Form1.Memo1.Lines[i];//username
Form1.Label2.Caption:=Form1.Memo1.Lines[i]; //Aktualnie przetwarzany
Form1.IdPOP3.Password:=Form1.Memo2.Lines[i]; //haslo
Form1.IdPOP3.connect; //polacz
if Form1.IdPop3.Connected=true then
Form1.Listbox1.Items.Add(Form1.Memo1.Lines[i]); //Jesli polaczono dodaje items w Listboxie
except //jesli wystapi blad dodaje Items w Lisboxie
Form1.Listbox3.Items.Add(Form1.Memo1.Lines[i]);
begin
Form1.IdPOP3.Disconnect;
Form1.Listbox2.Items.Add(Form1.Memo1.Lines[i]); //dodaje items w listboxie ze przetworzylo
end;
end;
end;
end;
No i odpalam poprzez
TSprawdz.Create(False);