Hallo,
ich habe ein Programm wo durch einen Hook, bei einem bestimten HotKey (Ctrl + Maustaste) einen Text, welcher in einem Fenster ist kopieren soll.
Das Ereignis wird mittels Sendmessage ausgelöst und mein Programm reagiert dann darauf.
Delphi-Quellcode:
if Msg.WParam = 2706 then
begin
While not ((GetASYNCKeyState (VK_SHIFT) = 0) AND
(GetASYNCKeyState (VK_CONTROL) = 0) AND
(GetASYNCKeyState (VK_MENU) = 0)) do
begin
Application.ProcessMessages;
end;
sleep (50);
keybd_event(VK_CONTROL, MapVirtualKey(VK_CONTROL, 0), 0, 0);
keybd_event(Ord('C'), MapVirtualKey(Ord('C'), 0), 0, 0);
Sleep(50);
keybd_event(Ord('C'), MapVirtualKey(Ord('C'), 0), KEYEVENTF_KEYUP, 0);
sleep (50);
Memo1.PasteFromClipboard;
end;
Allerdings muss ich es zweimal machen, bis er das richtige in die Zwischenablage kopiert. An was liegt das, dass das Programm erst beim zweiten Anlauf den TExt kopiert?
Habt ihr eine Idee?