![]() |
im Programm via Handle Klicks ausführen
Hallo,
Ich hoffe ich habe den Beitrag richtig gepostet :-) Also, mein Problem ist: Ich möchte in einem versteckten Firefox Mausklicks ausführen, aber die maus z.B. in Paint noch benutzen können, ihne das sie verschoben wird.
Code:
h beinhaltet hier das Handle von Firefox.
postMessage(h,WM_LBUTTONDOWN,x,y); sleep(100);
postMessage(h,WM_LBUTTONUP,x,y); Das ganze funktionirt auch schon soweit, dass ich die maus klicken lassen kann. allerdings klickt sie immer nur an der X position. So als währe Y null. ist es aber nicht :-( |
AW: im Programm via Handle Klicks ausführen
Lies dir mal den Beitrag hier durch:
![]() Du bentzt es leicht falsch. |
AW: im Programm via Handle Klicks ausführen
Achso, es sagt mir nur ob die Maus gedrückt ist.
Aber warum funktionirts dann im MainMenu von Firefox(Datei,Bearbeiten, usw.)? Oder wie sollte ich es machen? |
AW: im Programm via Handle Klicks ausführen
zur Y-Position, welche angeblich tatsächlich 0 ist.
Was für's Empfangen bestimmt ist, stimmt auch beim Senden ... nur andersrum. ![]() |
AW: im Programm via Handle Klicks ausführen
Zitat:
Zitat:
|
AW: im Programm via Handle Klicks ausführen
Bin nicht der beste in Englisch.
Hätte nicht jemand einen Code-schnipsel?:oops: |
AW: im Programm via Handle Klicks ausführen
ein Schnipsel:
![]() |
AW: im Programm via Handle Klicks ausführen
Die niedrigen Worts legt die x-Koordinate des Cursors. Die Koordinate ist relativ zur linken oberen Ecke des Client-Bereich.
Der hohe Auftragsbestand Wort Gibt die y-Koordinaten des Cursors. Die Koordinate ist relativ zur linken oberen Ecke des Client-Bereich. Wie habe ich das zu verstehen? |
AW: im Programm via Handle Klicks ausführen
*lach* Ich schiess mich ab, google übersetzt ja richtig gut!
Ok, bin ich mal so nett und übersetze das: Zitat:
Zitat:
|
AW: im Programm via Handle Klicks ausführen
Und was ist dann an meinem Code falsch?
|
AW: im Programm via Handle Klicks ausführen
Zitat:
LParam = X- und Y-Position > LoWord(LParam) = X > HiWord(LParam) = Y Und selbst wenn übersetzungsprogramme nicht perfekt sind ... Folgendes hätte einem auch einen Hinweis geben können, daß mit Y in WParam etwas nicht stimmen kann. Zitat:
|
AW: im Programm via Handle Klicks ausführen
postMessage(h,WM_LBUTTONDOWN,x+y,{und was kommt hier hin?});
|
AW: im Programm via Handle Klicks ausführen
Du darfst das dich nicht einfach so addieren! Und warum schreibst du das in wParam!? Das gehört doch in lParam rein! Und was du für wParam übergeben musst steht doch auf der Seite.
|
AW: im Programm via Handle Klicks ausführen
So?
postMessage(h,WM_LBUTTONDOWN,MK_LBUTTON, {irgendeine Addition von x u. y}); |
AW: im Programm via Handle Klicks ausführen
Hat keiner auch nur ein winziges stückchen Code?
|
AW: im Programm via Handle Klicks ausführen
Du bist echt lustig. Wir sind echt gerne bereit zu helfen, aber ein wenig Eigeninitiative könnte schon da sein...
Ich habe nun nicht mal 20 Sekunden gebraucht (wovon der Großteil für das Laden der Hilfe war) um herauszufinden, wie ich lParam zusammenbaue.
Delphi-Quellcode:
(aus der Windows-Unit) übernimmt zwei Parameter: der erste ist für den x-Wert und der zweite von den y-Wert. Nun hast du schon mal lParam.
MakeLParam()
wParam würde ich zunächst mal mit 0 initialisieren und danach evtl. mit MK_LBUTTON probieren. Warum mit 0?! Du schickst ja schon eine Nachricht, die angibt dass MouseButton XYZ down und dann up ist, ergo ist das kein zusätzlicher Key. Daher glaube ich auch nicht, dass du MK_LBUTTON angeben musst. So, und was ergibt das dann komplett:
Delphi-Quellcode:
PostMessage(h, WM_LBUTTONDOWN, 0, MakeLParam(x, y));
Was mich interessieren würde: was war daran wirklich so schwer?! Wo lagen die Probleme?! |
AW: im Programm via Handle Klicks ausführen
Zitat:
trotzdem Danhe :-) |
AW: im Programm via Handle Klicks ausführen
*hmpf* Wie meinen?! Wieso sollte Google einem nicht helfen können?! :gruebel: Es kommt halt so rüber, als wolltest du das Problem nicht lösen wollen und bei sowas stellen sich eben einige -- verständlicherweise -- stur.
|
AW: im Programm via Handle Klicks ausführen[gelöst]
Danke
|
AW: im Programm via Handle Klicks ausführen
Glaubst du ein schwarzes, normales Danke hätte es nicht auch getan?! :wink: Wenn jemand etwas lesen will, dann macht er es weil er will und nicht, weil es rot, groß und fett dargestellt wird.
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 03:49 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