bgam.es | Browsergames | Forum
Registrierung Kalender Mitgliederliste Teammitglieder Suche Häufig gestellte Fragen Zur Startseite

bgam.es | Browsergames | Forum » Die Ewigen (deutsch/german) » Programmierer- und Grafikerecke » IBroDE.. bräuchte einen denkanstoss.. » Hallo Gast [Anmelden|Registrieren]
Letzter Beitrag | Erster ungelesener Beitrag Druckvorschau | An Freund senden | Thema zu Favoriten hinzufügen
Neues Thema erstellen Antwort erstellen
Zum Ende der Seite springen IBroDE.. bräuchte einen denkanstoss..
Autor
Beitrag « Vorheriges Thema | Nächstes Thema »
Keifor Keifor ist männlich
Laserturmschütze


Dabei seit: 09.11.2002
Beiträge: 67
Herkunft: Berlin<->Halle
xdE Allianz: NoR

großes Grinsen IBroDE.. bräuchte einen denkanstoss.. Auf diesen Beitrag antworten Zitatantwort auf diesen Beitrag erstellen Diesen Beitrag editieren/löschen Diesen Beitrag einem Moderator melden       Zum Anfang der Seite springen

So.. bastel (mal wieder) an nem DEBrowser ähnlichem programm...

Naja.. angefangen hat es, als ich über eine ActiveX Mozilla Komponente gestolpert bin, (benutzt die Gecko Runtime Engine) und damit halt rumgespielt habe.. (deshalb MoBroDE) nur leider war das ganze zu schlecht documentiert und die MSHTML Schnittstelle miserabel beschrieben (ca. jedes fünfte interface existiert.. und nirgends ne beschreibung welche es gibt etc.)..

Naja, da das ganze allerdings auf MSHTML und einem MS Internet Controls Ersatz basierte, war die umstellung auf die Internet Explorer schnittstelle nicht schwierig (und dann wars halt IBroDE)..

Allerdings komme ich jetzt echt nicht weiter.. vielleicht könnte mir ja jemand nen Tip oder hilfe geben.. *in richtung DJ16EL guckt*.. folgendes Problem :

Das Laden der Loginseite und einfügen von Login Daten ist kein Problem per IHTMLDocument2 Interface^^ allerdings hab ich echte probleme mit Framsets.. beziehungsweise auf einzelne Frames zu zugreifen..
Ich kapiers einfach nicht.. da die Seite ja komplett geladen ist, kann ich ja auch auf die Seite mit dem Framset zugreifen.. allerdings weiß ich nicht, woher ich die geladenen Frames nun bekomme..

bin für jegliche anregungen offen^^

[EDIT]

ok.. das problem wäre gelöst.. die lösung dafür ist echt *hust*.. keine ahnung wie man darauf kommen sollte.. da haben die herren beim referenzen schreiben wohl ein wenig geschludert... -.-

__________________
JA ICH PLENKE.
Immer ? - Nein, bevorzugt mit ? und !
Warum ? - Da diese Satzzeichen gerne übersehen werden.
Weitere genutzte "Textunsittlichkeiten" : Kleinschreibung, "..." statt ","

PS : Bin ich jetzt gleich niveaulos, weil ich keine 100-Zeilen-Signatur mit min. 50 Smiles, 10 verschiedenen Farben und 3 Wörtern hab ?
-_- Ich denke nicht !

Dieser Beitrag wurde 1 mal editiert, zum letzten Mal von Keifor: 16.06.2006 04:58.

16.06.2006 04:00 Keifor ist offline E-Mail an Keifor senden Beiträge von Keifor suchen Nehmen Sie Keifor in Ihre Freundesliste auf

Darkon Darkon ist männlich
gesperrt


Dabei seit: 28.03.2006
Beiträge: 121

Auf diesen Beitrag antworten Zitatantwort auf diesen Beitrag erstellen Diesen Beitrag editieren/löschen Diesen Beitrag einem Moderator melden       Zum Anfang der Seite springen

das Zauberwort dürfte DOM heißen *g*

__________________
Wer mich klaut .... darf mich behalten.

18.06.2006 00:07 Darkon ist offline Beiträge von Darkon suchen Nehmen Sie Darkon in Ihre Freundesliste auf

Keifor Keifor ist männlich
Laserturmschütze


Dabei seit: 09.11.2002
Beiträge: 67
Herkunft: Berlin<->Halle
xdE Allianz: NoR

Themenstarter Thema begonnen von Keifor
Auf diesen Beitrag antworten Zitatantwort auf diesen Beitrag erstellen Diesen Beitrag editieren/löschen Diesen Beitrag einem Moderator melden       Zum Anfang der Seite springen

naja.. Theoretisch gehts auch ohne DOM.. ist halt nur n bissl umständlich, wenn die Schnittstelle ja schon bereitsteht..

Ich krieg von der IE Schnitstelle (IWebBrowser) die schnittstellen auf den DOM parser.. nur konnte ich hat nicht auf Frames zugreifen, weil die nicht einfach über DOM zugreifbar waren (DOM Document property Frames[] = IHTMLFramesCollection.. aber wie man da jetzt die framesrausholt O_o)

naja.. die lösung ist, das DOM Document object wie n Container zu behandeln.. weil da irgendwie die Frames in dem Container sind..

ABER das war nirgends... niiiiirgends beschrieben... -.-

[EDIT]
naja.. vielleicht ist das ja auch zu einfach oder so.. aber was ActiveX und Interace nutzung unter w32 angeht, bin ich n ziemlicher anfänger.. ich mag eigentlich eher api nutzung.. da bekommt man wenigstens geleich n fehler, wenn was nicht unterstützt wird..

bei den Interfaces ist es ja mehr so, das man drauf zugreift.. und dann erst der fehler kommt, wenn was nicht unterstützt wird... und beschrieben ist das eigentlich auch alles mehr für die ms eigenen produkte aka VC++, VBS, die ganze .NET produktsparte...

__________________
JA ICH PLENKE.
Immer ? - Nein, bevorzugt mit ? und !
Warum ? - Da diese Satzzeichen gerne übersehen werden.
Weitere genutzte "Textunsittlichkeiten" : Kleinschreibung, "..." statt ","

PS : Bin ich jetzt gleich niveaulos, weil ich keine 100-Zeilen-Signatur mit min. 50 Smiles, 10 verschiedenen Farben und 3 Wörtern hab ?
-_- Ich denke nicht !

Dieser Beitrag wurde 1 mal editiert, zum letzten Mal von Keifor: 18.06.2006 08:30.

18.06.2006 08:25 Keifor ist offline E-Mail an Keifor senden Beiträge von Keifor suchen Nehmen Sie Keifor in Ihre Freundesliste auf

Darkon Darkon ist männlich
gesperrt


Dabei seit: 28.03.2006
Beiträge: 121

Auf diesen Beitrag antworten Zitatantwort auf diesen Beitrag erstellen Diesen Beitrag editieren/löschen Diesen Beitrag einem Moderator melden       Zum Anfang der Seite springen

idr geht das genauso wie z.b. mt JavaScript oder VBScript man führt im "window" nen befehl aus und erhält dessen wert. schnitstellen dazu sollte es genügend geben in alles sprachen. das hätte auch gleich den vorteil das man auf diesen weg die seiten verändern kann. üblicherweise erhält man mit frames.length die anzahl der frames mit framename.document zugriff auf das dokument im frame usw. ich denke mal diese vorgehensweise ist noch die einfachste als das komplett über so interfaces zu machen

__________________
Wer mich klaut .... darf mich behalten.

Dieser Beitrag wurde 1 mal editiert, zum letzten Mal von Darkon: 18.06.2006 12:57.

18.06.2006 12:56 Darkon ist offline Beiträge von Darkon suchen Nehmen Sie Darkon in Ihre Freundesliste auf

DJ16EL
Schlachtschiffkapitän


Dabei seit: 11.09.2002
Beiträge: 1.972
Herkunft: DE
xdE Allianz: GoH 4 Ever

Auf diesen Beitrag antworten Zitatantwort auf diesen Beitrag erstellen Diesen Beitrag editieren/löschen Diesen Beitrag einem Moderator melden       Zum Anfang der Seite springen

Hi,

das Mozilla Control stellt nur einen sehr kleinen Teil des DOMs zur Verfügung.
Auch ich bin damals schon bei den einachsten Sachen an die Grenzen gestoßen und mußte daher DEB auf Mozilla Control-Basis aufgeben. Ich habe es oft genug versucht und oft genug gehofft, das es in neueren Versionen besser wird, aber vergebens.


Tschüü...
Ihr / Euer DJ16EL

__________________

Let the computer work for you, but never become a slave of the technical systems.
"Man kann keinen Fehler in einem Programm korrigieren, den man nicht kennt." (Dijkstra, Edsger W.)
Nicht, was wir erleben, sondern wie wir empfinden, was wir erleben, macht unser Schicksal aus. (Ebner-Eschenbach, Marie)

18.06.2006 21:59 DJ16EL ist offline E-Mail an DJ16EL senden Beiträge von DJ16EL suchen Nehmen Sie DJ16EL in Ihre Freundesliste auf

Keifor Keifor ist männlich
Laserturmschütze


Dabei seit: 09.11.2002
Beiträge: 67
Herkunft: Berlin<->Halle
xdE Allianz: NoR

Themenstarter Thema begonnen von Keifor
Auf diesen Beitrag antworten Zitatantwort auf diesen Beitrag erstellen Diesen Beitrag editieren/löschen Diesen Beitrag einem Moderator melden       Zum Anfang der Seite springen

Zitat:
Original von Darkon
...üblicherweise erhält man mit frames.length die anzahl der frames mit framename.document zugriff auf das dokument im frame usw.

^^ genau das meinte ich, geht ja nicht.. ok.. hier mal die zeilen, mit denen ich wirklich Frames bekomme..
code:
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
....
  doc := (ASender as TWebBrowser).Document as IHTMLDocument2;
  if not Assigned(doc) then Exit;
  for i := 0 to doc.frames.length - 1 do
  begin
    Fetched := nil;
    OleContainer := doc as IOleContainer;
    hres := OleContainer.EnumObjects(OLECONTF_EMBEDDINGS or OLECONTF_OTHERS,
      Enum);
    if hres <> S_OK then OleContainer._Release; else
    begin
      Enum.Skip(i);
      Enum.Next(1, Unk, Fetched);
      dframedoc := (Unk as IWebbrowser2).Document as IHTMLDocument2;
....

kurz.. frames werden wie Dokument Objekte eingebettet im Main Document Objekt behandelt. Und zugreifen kann man, indem man das Main Document als OleContainer verwendet... hmm.. und in der psdk steht da zum IHTMLDocument nüchts von OleContainer.. -.-
Beim IOleContainer Interface steht, das man damit auf eingebettete objekte zugreifen kann.. aber woher soll man das wissen.. O_o
Da fühlt man sich irgendwie, wie n Urmensch, der grad das feuer gefunden hat, wenn man die Lösung denn hat..

@DJ16EL : ich hab imho MozCtrl 1.71 angetestet.. und es gab halt so die "wichtigsten sachen" (kommt ja aufn betrachter an).. aber nebenbei hat MozCtrl keine weiteren eigenschaften gespeichert.. jedesmal die abfrage, ob man die daten (<input>Augenzwinkern unverschlüsselt senden will.. darauf hab ich auch kein bock.. dagegen kann man IECtrl wenigstens stummschalten...

__________________
JA ICH PLENKE.
Immer ? - Nein, bevorzugt mit ? und !
Warum ? - Da diese Satzzeichen gerne übersehen werden.
Weitere genutzte "Textunsittlichkeiten" : Kleinschreibung, "..." statt ","

PS : Bin ich jetzt gleich niveaulos, weil ich keine 100-Zeilen-Signatur mit min. 50 Smiles, 10 verschiedenen Farben und 3 Wörtern hab ?
-_- Ich denke nicht !
19.06.2006 08:56 Keifor ist offline E-Mail an Keifor senden Beiträge von Keifor suchen Nehmen Sie Keifor in Ihre Freundesliste auf

Baumstruktur | Brettstruktur
Gehe zu:
Neues Thema erstellen Antwort erstellen
bgam.es | Browsergames | Forum » Die Ewigen (deutsch/german) » Programmierer- und Grafikerecke » IBroDE.. bräuchte einen denkanstoss..

Impressum

Forensoftware: Burning Board 2.3.6, entwickelt von WoltLab GmbH