Hallo
Ich habe vor ein Programmzu schreiben, bei dem ich einen Webbrowser dazu "missbrauche" einen Login durchzuführen, um danach auf eine vorher definierte Seite zu navigieren, um von dort spezielle Links auszulesen.
Nun habe ich einige Fragen und Probleme, die mir aufgefallen sind.
in der textbox in der ich die Url angebe, fange ich den Enter Key um den Browser anzuleiten zu navigieren.
hierbei ertönt dieser nervige Windows Error Ton. Beim Click auf den Button passiert dies nicht.
Auch wenn ich bei druck auf Enter den Button_Click event aufrufe, kommt dieses "Ding"
Ich habe zum anderen das Problem, das das Webbrowser_Document_Completed event mehr als einmal ausgelößt wird, und ich so nicht ordentlich reagieren kann, was wahrscheinlich an mehreren frames liegt. Bisher ist mein Code
der dazu dient, festzustellen, ob der Browser fertig geladen hat. gibt es eine bessere alternative, die nur einmal durchläuft? WebBrowser readyState_Completed oder so?
das komischste ist, dass ich das Problem habe, dass der Browser bei auslesen von links seltsam reagiert:
Ich habe eine Prozedur (capturing()), die mir die Links rausfischt, die ich brauche, welche einwandfrei funktioniert.
Nur bekomme ich vom Webbrowser ein seltsames Ergebnis
Wenn ich direkt danach auf den btnCap klicke funktioniert call capturing einwandfrei...
bin für jeden hilfreichen Tipp Dankbar
Ich habe vor ein Programmzu schreiben, bei dem ich einen Webbrowser dazu "missbrauche" einen Login durchzuführen, um danach auf eine vorher definierte Seite zu navigieren, um von dort spezielle Links auszulesen.
Nun habe ich einige Fragen und Probleme, die mir aufgefallen sind.
in der textbox in der ich die Url angebe, fange ich den Enter Key um den Browser anzuleiten zu navigieren.
hierbei ertönt dieser nervige Windows Error Ton. Beim Click auf den Button passiert dies nicht.
Auch wenn ich bei druck auf Enter den Button_Click event aufrufe, kommt dieses "Ding"
Ich habe zum anderen das Problem, das das Webbrowser_Document_Completed event mehr als einmal ausgelößt wird, und ich so nicht ordentlich reagieren kann, was wahrscheinlich an mehreren frames liegt. Bisher ist mein Code
VB.NET-Quellcode
- Private Sub wbr_DocumentCompleted(ByVal sender As Object, ByVal e As System.Windows.Forms.WebBrowserDocumentCompletedEventArgs) Handles wbr.DocumentCompleted
- bloaded = True
- End Sub
- Private Sub waitforBrowser()
- Do While Not bloaded
- System.Windows.Forms.Application.DoEvents()
- Loop
- bloaded = false;
- End Sub
der dazu dient, festzustellen, ob der Browser fertig geladen hat. gibt es eine bessere alternative, die nur einmal durchläuft? WebBrowser readyState_Completed oder so?
das komischste ist, dass ich das Problem habe, dass der Browser bei auslesen von links seltsam reagiert:
Ich habe eine Prozedur (capturing()), die mir die Links rausfischt, die ich brauche, welche einwandfrei funktioniert.
Nur bekomme ich vom Webbrowser ein seltsames Ergebnis
VB.NET-Quellcode
- Private Sub NavigateAndCapture(ByVal myuri as Uri)
- wbr.navigate(myuri)
- Call waitforBrowser()
- 'Ich bin definitiv auf der richtigen Seite, der Browser hat fertig geladen
- Call capturing()
- 'macht garnichts
- End Sub
- Private Sub btnCap_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnCap.Click
- Call capturing()
- End Sub
Wenn ich direkt danach auf den btnCap klicke funktioniert call capturing einwandfrei...
bin für jeden hilfreichen Tipp Dankbar