![]() |
Hotkey eines fremden Programmes Simulieren
Hallo, DP-Volk!
Ich möchte einen Hotkey von einem fremden Programm auslösen, ohne dass das Programm in der Vordergrund muss. Hab mich schon durch etliche google-pages gesucht (Also wenn gleich kommt, ich solle die Suche benutzen, bitte Link zum Fred zuposten). Das ganze soll etwa so aussehen, als ob ich ALT+D an z.B. Mozilla sende und oben links das Datei-Popupmenu erscheint. Ausprobiert habe ich z.b.
Delphi-Quellcode:
Wie gesagt, ich möchte nicht unbedingt, dass das Fenster des Programmes in den Vordergrund muss, aber wenn es geniale Vorschläge gibt, in welcher das Fenster den Focus bekommt bin ich dafür auch offen ;)
Postmessage(h,wm_keydown,VK_MENU,0);
Postmessage(h,wm_keydown,Ord('D'),0); Postmessage(h,wm_keyup,Ord('D'),0); Postmessage(h,wm_keyup,VK_MENU,0); Danke lowF |
Re: Hotkey eines fremden Programmes Simulieren
Hallo lowF, sollte bei den meisten Fenstern klappen.
Wenn es bei manchen Anwendungen nicht will, zusätzlich mit AttachThreadInput und oder SystemParametersInfo arbeiten.
Delphi-Quellcode:
var hWindow: HWND; begin hWindow := FindWindow(nil, 'Unbenannt - Editor'); if hWindow <> 0 then begin if IsIconic(hWindow) then ShowWindow(hWindow, SW_RESTORE); BringWindowToTop(hWindow); SetForegroundWindow(hWindow); keybd_event(VK_MENU , 0, 0, 0); keybd_event(Ord('D') , 0, 0, 0); keybd_event(Ord('D') , 0, KEYEVENTF_KEYUP, 0); keybd_event(VK_MENU , 0, KEYEVENTF_KEYUP, 0); end; end. lg. Astat |
Re: Hotkey eines fremden Programmes Simulieren
Hi Astat.
Danke für deinen Beitrag, ich werde das gleich mal ausprobieren. Wenn es noch Vorschläge ohne "Focused Window" gibt, bin ich natürlich dafür offen :D Trotzdem nochmal danke lowF |
Alle Zeitangaben in WEZ +1. Es ist jetzt 22:16 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