![]() |
Setienquelltext von TWebbrowser anzeigen...[gelöst]
Hossa,
Also das handeln von Internet sachen ist absolutes Neuland für mich. Aber einges habe ich schon hinbekommen. Doch zuerst was ich eigentlich will. Ich hab hier ne URL in der ein Javascript steht. Das wollte ich dann steuern, bzw bedienen. Schnell war klar das das mittels
Delphi-Quellcode:
Nicht geht, da die Indy Komponente kein Javaskript kann.
Function LoadHTML(URL: String): String;
Var IdHTTP1: tidhttp; Begin IdHTTP1 := TIdHTTP.create(Nil); result := IdHTTP1.Get(URL); IdHTTP1.free; End; Also hab ichs mal mit TWebBrowser probiert. Und Wunderherlich, es öffnet sich ein fenster in dem ich ganz normal navigieren kann. Alles super. In dem Fenster Tippe ich nen Code ein und drücke dann auf einen Button, das ich da drauf drücke kriege ich mittels
Delphi-Quellcode:
Mit. Und alles wunderbar.
Procedure TForm2.WebBrowser1BeforeNavigate2(Sender: TObject;
Const pDisp: IDispatch; Var URL, Flags, TargetFrameName, PostData, Headers: OleVariant; Var Cancel: WordBool); Doch das Problem ist das ich danach gerne wieder "unsichtbar" also ohne das Browserfensterchen weiterarbeiten würde. Das geht aber nur wenn ich das Aktuelle Browserfenster auslesen kann. Und genau da ist mein Problem. Laut diversen Posts und anderen Tipps und Tricks soll es mittels
Delphi-Quellcode:
Möglich sein.
Var
aHTMLDoc: IHTMLDocument2; aHTMLBody: IHTMLElement; swHTMLText: WideString; Begin If Not VarIsEmpty(WebBrowser1.Document) Then Begin aHTMLDoc := WebBrowser1.Document As IHTMlDocument2; aHTMLBody := aHTMLDoc.Get_body; swHTMLText := aHTMLBody.outerHTML; ShowMessage(swHTMLText); End; Doch dazu mus man die Units "ActiveX" und "MSHTML_TLB" einbinden. ActiveX hab ich in meinem D5Pro allerdings kennt er MSHTML_TLB nicht. Und im I-net finde ich keinen Download zu dieser Unit. Mus man nun unter D5 das ganz anders lösen, oder gibts die unit doch irgenwo zum DL ? |
Re: Setienquelltext von TWebbrowser anzeigen...
Ahh
das mus man auch wissen die Unit MSHTML_TLB.pas kann man selbst erstellen : Komponente -> ActiveX importieren Microsoft HTML Object Library anwählen Unit Anlegen Klicken Dann gehts :) |
Alle Zeitangaben in WEZ +1. Es ist jetzt 00:36 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