E-Bildirege işlemlerini otomatikleştirmek için bir uygulama geliştiriyorum. Uygulamamda iki adet webbrowser kullandım webbrowser1 ve webbrowser2. Webbrowser2 de giriş ekranını açıyorum ilgili bilgileri doldurulduktan sonra Captc için resmi indirip captc yi çözüp giriş yapılıyor giriş yapılınca site ikinci bir explorer açıyor newwindow2 eventını kullanarak açılan ikinci pencereyi webbrowser1'e yönlendiriyorum sisteme giriş yaptıktan sonra geçmiş dönem borç sorgulaması yapmak için webbrowser1 de dolaşırken sistemden güvenli çıkış yapıldı deyip beni atıyor. Acaba sorun ne olabilir. Kodları aşağıda veriyorum.
Siteye giriş ve borç sorgulama ekranına geçiş kodu
Kod: Tümünü seç
procedure TForm1.pcEbilGiris;
begin
tmr1.Enabled:=False;
WebBrowser2.BringToFront;
WebBrowser2.Navigate('https://ebildirge.sgk.gov.tr/WPEB/amp/loginldap');
while WebBrowser2.ReadyState <> READYSTATE_COMPLETE do
begin
Sleep(1);
Application.ProcessMessages;
end;
WebBrowser2.Refresh;
while WebBrowser2.ReadyState <> REFRESH_COMPLETELY do
begin
Sleep(1);
Application.ProcessMessages;
end;
dzISYERIID:=sp1.FieldByName('İşyeriID').Value;
WebBrowser2.OleObject.Document.getElementByID('j_username').Value:=sp1.FieldByName('KULLANICI KODU').Text;
WebBrowser2.OleObject.Document.getElementByID('isyeri_kod').Value:=sp1.FieldByName('KUL KOD').Text;
WebBrowser2.OleObject.Document.getElementByID('j_password').Value:=sp1.FieldByName('SİS ŞİFRESİ').Text;
WebBrowser2.OleObject.Document.getElementByID('isyeri_sifre').Value:=sp1.FieldByName('İŞY ŞİFRESİ').Text;
tmr1.Enabled:=True;
while True do
begin
Application.ProcessMessages;
Sleep(1);
if WebBrowser1.LocationURL='https://ebildirge.sgk.gov.tr/WPEB/amp/loginldap' then
begin
ShowMessage('1');
WebBrowser1.Navigate('https://ebildirge.sgk.gov.tr/WPEB/amp/donemBorcGoruntule');
Break;
end;
end;
end;
Kod: Tümünü seç
procedure TForm1.WebBrowser2NewWindow2(ASender: TObject; var ppDisp: IDispatch;
var Cancel: WordBool);
begin
ppDisp := WebBrowser1.DefaultInterface;
end;