Hallo zusammen.
Ich sitze hier vor einem kleinen Problem und hoffe, dass mir geholfen werden kann. ^^
Mein Problem besteht mit dem Mozilla
ActiveX Control v1.7t1 (mit v1.6 ging es auch nicht).
Ich versuche an den Quelltext der anzeigten Seite zu kommen und zwar z.B. mit:
Delphi-Quellcode:
MozillaBrowser: TMozillaBrowser;
MemoDebug: TMemo;
...
MemoDebug.Lines.Add(MozillaBrowser.OleObject.Document.Body.InnerHTML);
// oder
vTemp := (MozillaBrowser.document);
for i:= 0 to vTemp.Length - 1 do
MemoDebug.Lines.Add(vTemp.Item[i].Src);
// oder
MemoDebug.Lines.Add(MozillaBrowser.OleObject.Document.getElementsByTagName('td'));
Dabei bekomme ich folgende Fehlermeldungen:
"Bibliothek nicht registriert"
"Die Methode 'Length' wird vom Automatisierungsobjekt nicht unterstützt."
"Die Methode 'getElementsByTagName' wird vom Automatisierungsobjekt nicht unterstützt."
Ich habe das Active X Control wie beschrieben installiert (registriert sich selbst) und dann in Delphi 6 über "
ActiveX importieren" importiert.
Das Surfen funktioniert auch super, aber ich brauche eben auch den Seitenquelltext.
Warum ich ausgerechnet dieses Control verwende?
Weil das IE-Equivalent ziemlich buggy war und ich aber dennoch eine 100%ige Browseremulation bräuchte (weshalb ich
Indy nicht verwende).
Danke schonmal im Vorraus.
Edit:
Ach ja, MozillaBrowser.OleObject.Document.Title funktioniert und ich habe mir schon überlegt, dass das Control ja nicht das MS-
DOM sondern das DOM1 vom
W3C verwendet und daher Document.Body.InnerHTML nicht funktionieren könnte. Nur Document.getElementsByTagName ist im
DOM Level 1 enthalten und funtioniert dennoch nicht.