![]() |
WebBrowser - Überprüfen ob Eingabefeld vorhanden
In meinem Programm wird ständig ein Webbrowser (ich benutze die Embedded Webbrowser Komponenten, die sind aber vollständig mit dem "normalen" Webbrowser kompatibel) benutzt, in dem Inputfelder mit Daten ausgefüllt werden. Manchmal kommt es aber vor, das eine Seite nicht (vollständig) erreichbar (die seite wird angezeigt, es ist aber kein formular zu sehen) ist und dann kriege ich eine wunderbare Access Violation. (Diese mit try ... except abzufangen geht nicht, das habe ich bereits probiert.) Deshalb möchte ich zuerst eine Funktion einbauen, die überprüft ob die Seite korrekt angezeigt wird (also alle Formularfelder vorhanden sind).
Das habe ich mir so gedacht:
Delphi-Quellcode:
Kann mir jemand helfen? Das würde mich ein ganzes Stück weiter bringen :thumb:
function checksite():Boolean
begin if Überprüfen ob ein bestimmtes Element vorhanden ist. then Wenn ja: Result:=true; else Wenn nein: Result:=false; end; |
Re: WebBrowser - Überprüfen ob Eingabefeld vorhanden
Hallo,
eine Gegenfrage: Wie stellst du denn bisher sicher, dass du erst dann auf das HTML Document Object Model zugreifst, wenn es vollständig aufgebaut wurde? Freundliche Grüße |
Re: WebBrowser - Überprüfen ob Eingabefeld vorhanden
Zitat:
|
Re: WebBrowser - Überprüfen ob Eingabefeld vorhanden
Zitat:
Delphi-Quellcode:
Oder meintest du was anderes?
procedure WaitForBrowser(WebBrowser:TEmbeddedWB);
begin while WebBrowser.ReadyState <> READYSTATE_COMPLETE do begin Application.ProcessMessages; Sleep(50); end; end; |
Re: WebBrowser - Überprüfen ob Eingabefeld vorhanden
Zitat:
|
Re: WebBrowser - Überprüfen ob Eingabefeld vorhanden
Wenn ich mich richtig erinnere, dann leistet die Funktion
![]() Dein Zugriffsfehler wird vermutlich durch einen mehrstufigen Ausdruck wie z.B. WebBrowser .OleObject .Document .forms .item('sampleform') .elements .item('user') verursacht, wobei ein NIL-Zeiger (z.B. item('sampleform')) enthalten ist. Um das zu erkennen kannst du den Ausdruck zerlegen und schrittweise ausführen. Gute Nacht |
Alle Zeitangaben in WEZ +1. Es ist jetzt 10:01 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz