Delphi-PRAXiS
Seite 2 von 2     12   

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Win32/Win64 API (native code) (https://www.delphipraxis.net/17-win32-win64-api-native-code/)
-   -   Delphi sendmessage an ein Fremdprogramm löst dort kein Event aus (https://www.delphipraxis.net/135409-sendmessage-ein-fremdprogramm-loest-dort-kein-event-aus.html)

Tyrael Y. 10. Jun 2009 13:56

Re: sendmessage an ein Fremdprogramm löst dort kein Event au
 
Ich glaub mit PostMessage kannst du bei Kombination WM_KEYDOWN und W_KEYUP Probleme kriegen, da
beides direkt hintereinander geschieht.

Mit SendMessage würde WM_KEYDOWN verarbeitet werden bevor das nächste SendMessage das WM_KEYUP sendet.

Wenn du einen Tastendruck simulieren willst, daß wirklich wie eine echte Tastatureingabe wirkt, musst du keydown UND keyup benutzen.

Jeder Tastendruck besteht aus zwei Ereignissen - Drücken + Loslassen

Periander 10. Jun 2009 14:07

Re: sendmessage an ein Fremdprogramm löst dort kein Event au
 
Zitat:

Zitat von Tyrael Y.
Ich glaub mit PostMessage kannst du bei Kombination WM_KEYDOWN und W_KEYUP Probleme kriegen, da
beides direkt hintereinander geschieht.

Mit SendMessage würde WM_KEYDOWN verarbeitet werden bevor das nächste SendMessage das WM_KEYUP sendet.

Wenn du einen Tastendruck simulieren willst, daß wirklich wie eine echte Tastatureingabe wirkt, musst du keydown UND keyup benutzen.

Jeder Tastendruck besteht aus zwei Ereignissen - Drücken + Loslassen

Wenn ich anstelle von Postmessage, Sendmessage mit dem WM_Keydown verwende, passiert gar nix. Der Text erscheint nichtmal im Editfeld.




Ich habe festegestellt, wenn ich "sendkey" verwenede funktioniert es, allerdings möchte ich nicht, dass das Programm immer im Focus ist, sonder, dass es nebenbei läuft.


Alle Zeitangaben in WEZ +1. Es ist jetzt 02:39 Uhr.
Seite 2 von 2     12   

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