[WinAPI] Handle ermitteln \ Programm in Programm

Biehler

BiehlerProductions
ID: 89792
L
4 Mai 2006
1.948
181
Hi,

vorweg: Ich weis, wie ich den Handle von einem Fenster und einem Steuerelement darin abfragen kann.

Aber:
Ich will aber vom Internet Explorer (Alternativ: jedem beliebigen Browser) den Handle des URL Eingabe Feldes ermitteln.

Und in Folge dessen logischerweise auch den Handle des "OK" Buttons.

Annahmen zu URL Zeile:

Ich könnte die Browser eventuell auch per Kommandozeile ansteuern, jedoch will ich mich nicht auf die Willkür der Programmierer festlegen.

Annahme zu "OK" Button:

Ich könnte auch eine entsprechende WM_KEYDOWN (o.ä.) Message senden, aber das käme dann sowieso aufs Gleiche raus, ob ich die Message sende oder den Umweg über den Handle des Buttons gehe.

Grund:

Ich würde gern ne Surfbar coden für den privaten Gebrauch auf meiner Seite.
Nun ist es mir zu kompliziert, in ASM Bilder anzeigen zu lassen usw :ugly:
Deshalb hab ich mir gedacht, die Aufgabe könnt ich ja eigentlich dem Browser überlassen.
Nur wie kann ich jetzt meine Surfbar FUnktionalität mit der des Browsers verbinden :ugly:
Also Quasi den IE in meinem Programm wie in einem Frame anzeigen.

Ich hab mir mal gedacht, rein theoretisch könnte ich auch im Programm dne IE starten und ihn an mein Programm "heften", indem ich nen Hook einrichte, sodass ich bei jeder Mausbewegung benachrichtigt werde.
Dann könnte ich prüfen, ob der IE betroffen ist und dementsprechend die Koordinaten meines Programmes ändern.
Die Ansteuerung würde dann wie oben ablaufen.

Aber das hört sich aufs Erste ziemlich "unschön" an und da wollt ich mal fragen, ob ich das anders bewerkstelligen könnte :)

__________________
mfg
Biehler

Man sperrte mir die Sig bis zum 24.11 8O
 
Viel zu kompliziert 8O

Du kannst dir direkt "einen IE in deine Toolbar setzen". Mit VisualBasic gibts einfach ein Steuerelement, dass du verwendest und dem du sagen kannst, welche URL er laden soll. Damit hättest du dann wirklich einen IE als Frame im Programm.

Wie es ohne Basic funktioniert, musst du mal googlen. Zumindest sollte das wesentlich besser sein, als dem Benutzer irgendwas fernzusteuern, was er ned will.
 
Du kannst dir direkt "einen IE in deine Toolbar setzen". Mit VisualBasic gibts einfach ein Steuerelement, dass du verwendest und dem du sagen kannst, welche URL er laden soll. Damit hättest du dann wirklich einen IE als Frame im Programm.

Jo, in VB isses einfach, in Delphi gibts dafür afaik auch nen extra Element für.
Das Ganze würde dann afaik irgendwie mit ActiveX Objekten (oder COM, aber da weis ich eh nicht so recht, was das ist und wie die funktionieren) funktionieren und weis der Geier alles.
Aber ehrlich gesagt, ich hab keine Ahnung, wie ich sowas mit ASM ansprechen kann^^

Soweit ich weis, ist das ja in C++ schon kein 10 Zeiler mehr.

Wobei das ned mal das Problem wäre, aber ich find nicht unbedingt viele Infos zu "ActiveX + Assembler".
 
unter vb kenne ich mich sehr gut aus...wenn du probs hast kannste ja mal antickern, (event. wird´s ja ein programmierauftrag für mich :p ):
ICQ: 228-925-445
Skype: gregor5478
 
Nö, ich wills ja selber machen, ohne VB ;)
Es geht ja um den Spaß an der Freude :p

Hab jetzt aber von J. Rohde ein paar Links bekommen.

https://ourworld.compuserve.com/homepages/ernies_world/a.htm
https://www.masm32.com/board/index.php?topic=1874.0
https://www.masm32.com/board/index.php?topic=1884.0

Ob die mir was bringen, kann ich ned sagen, bin noch ned dazugekommen.

Aber mich würd trotzdem, auch wenn es funzen sollte, interessieren, wie ich gezielt den Handle der Eingabezeile bestimmen kann ;)

De Fakto ist es ja so, dass ich per WinAPI Calls die kompletten Handles innerhalb eines Programmes durchgehen kann.
Nur die Frage ist dann, wie kann ich feststellen, dass ich das Handle der EIngabeleiste hab und ned von der Google Suchleiste.