AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Programmieren allgemein Webbrowser.OleObject mittels Vorfahren erreichen
Thema durchsuchen
Ansicht
Themen-Optionen

Webbrowser.OleObject mittels Vorfahren erreichen

Offene Frage von "oki"
Ein Thema von oki · begonnen am 14. Dez 2010 · letzter Beitrag vom 17. Jan 2011
 
oki

Registriert seit: 30. Dez 2002
Ort: Brandshagen
1.819 Beiträge
 
Delphi 2007 Professional
 
#1

Webbrowser.OleObject mittels Vorfahren erreichen

  Alt 14. Dez 2010, 08:56
Hallo Leute,

ich hoffe, ich kann meine Frage verständlich formulieren. Ich möchte auf ein Textfeld in einem html-Document zugreifen. Das geht ja so:

wb.OleObject.Document.All.Item('ItemName').Value := 'Test';
Nun habe ich das Problem, dass ich nicht direkt über das BrowserControl zugreife sondern den Container Components nach dem Element durchsuche.
Und jetzt wirds kurz kompliziert. Warum nicht direkt. Ich benutze die TEmbeddedWb-Komponente. Binde ich EmbeddedWB in die uses ein, so bekomme ich eine Fehlermeldung des Compilers bei der Benutzung von Laufzeitbibliotheken. Das war so ne Sache mit zu vielen Pfaden, Zweigen? in der BPL-Nutzung. Ist schon ne' Zeit her, als ich mich darum gekümmert habe. Punkt ist, ich kann in der Unit EmbeddedWB nicht einbinden.

Jetzt dachte ich, egal, OleObject sollte durch einen Vorfahren implementiert werden und hab in einer kleinen Testanwendung mal mit Code-Folding geschaut wo das denn ist. Der Aufruf geht direkt zu TOleControl.OleObjekt. Na, dachte mir nichts leichter als das, da haben wir ja die Vererbung incl. Typ-Konvertierung.


TOleControl(Components[i]).OleObject.Document.All.Item('ItemName').Value := 'Test';
sollte die Lösung sein.

Nichts ist. Bis Item werden gültige Adressen angezeigt, dann ist Schluss. Exception mit Zugriff auf 0000.
Ich denke mal, die Typkonvertierung ist hier falsch. Vielleicht wird OleObject auch durch ein Interface eingebunden. Bin bei der ganzen Sache aber leider nicht fitt. Kann mir einer einen Weg zeigen wie ich das hinbekomme?
Das soll es aber nicht sein:


TEmbeddedWB(Components[i]).OleObject.Document.All.Item('ItemName').Value := 'Test';

Ich dank schon mal im Voraus,

Gruß oki
42
  Mit Zitat antworten Zitat
 


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 17:58 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz