![]() |
problem mit sendmessage
Hallo, nachdem ich nun das WindowHandle herausgefunden habe, wollte ich ne Taste an das programm senden mittels sendmessage
hier mal der code:
Delphi-Quellcode:
ja nur leider passiert nix im programm, er gibt mir nicht aus dass es nicht funktioniert, aber er reagiert auch nciht auf die taste.
wnd := FindWindow('Afx:00400000:0',nil);
try sendMessage(wnd, WM_KEYDOWN, VK_F10,0); except showmessage('nicht funktioniert'); exit; end; was mache ich falsch!? |
Re: problem mit sendmessage
Hallo!
Bist Du Dir sicher, dass FindWindow ein Handle zurückgibt? Irgendwie sieht die Fensterbezeichnung komisch aus... Prüf mal den Wert von wnd. |
Re: problem mit sendmessage
Ja ich bin mir sogar sehr sicher dass er einen wert zurückgibt.
im moment ist es 131748, ist ja auch egal, auf jedenfall nicht null.... ich könnte vielleicht ja mal testen ob das Handle auch auf das richtige fenster zeigt, weiß jemand wie man das handle (fenster) maximieren kann! |
Re: problem mit sendmessage
:wall: Seh' ich jetzt erst: Du musst noch ein
Delphi-Quellcode:
hinterherschicken. Irgendwann muss die Taste ja auch wieder losgelassen werden.
sendMessage(wnd, WM_KEYUP, VK_F10,0);
|
Re: problem mit sendmessage
Und SendMessage löst keine Exception aus, sondern hat einen Rückgabewert, abhängig von der Nachricht, den man auswerten kann.
|
Re: problem mit sendmessage
Danke, habe den Code eingefügt aber es passiert nix...
habe auch nchmal überprüft ob das richtige windowhandle für die anwendung gefunden wurde und es wurde auch... ich habe zum test das programm maximiert und dann den sendmessage teil ausgefürht aber es geht noch net!
Delphi-Quellcode:
=====>keine reaktion auf tastendruck
wnd :=
FindWindow('Afx:00400000:0',nil); showwindow(wnd,3); sendMessage(wnd, WM_KEYDOWN, VK_F10,0); sendMessage(wnd, WM_KEYUP, VK_F10,0); |
Re: problem mit sendmessage
wie führst du den teil aus während das prog maximiert ist?
setze mal ne showmessage hinter den except bereich damit du dir auch sicher sein kannst das das alles durchgeführt wird |
Re: problem mit sendmessage
also so wie der code einen beitrag weiter oben steht führe ich ihn aus... (ohne try und so)
das fenster wird auch maximiert, nur der virtuelle tastendruck funktioniert halt nicht |
Re: problem mit sendmessage
musst du nicht als message WM_SYSKEYDOWN und WM_SYSKEYUP senden?? :gruebel:
|
Re: problem mit sendmessage
da bin ich ehrlich gesagt überfragt, weil ich mich mit diesen ganzen funktionen nicht auskenne, ich werds aber mal ausprobierne, vielleicht klappts ja dann!
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 15:07 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