Windows Hotkey auslösen über API (z. B. Alt-F10)???

Alle Fragen um die Programmierung, die sich sonst nicht kategorisieren lassen. Von Makro bis Codeblock, von IF bis ENDIF

Moderator: Moderatoren

Antworten
Benutzeravatar
Markus Walter
Programmier-Gott
Programmier-Gott
Beiträge: 1018
Registriert: Di, 24. Jan 2006 10:22
Wohnort: Saarland

Windows Hotkey auslösen über API (z. B. Alt-F10)???

Beitrag von Markus Walter »

Hi,

ich müsste einen Windows-Hotkey auslösen (z. B. Alt-F10).

Grundsätzlich kann ich für eine "normale" Taste einen Hotkey auslösen:

Code: Alles auswählen

PostMessageA(HWND_BROADCAST, /*WM_HOTKEY*/ 0x312, 0, VK_F4)
in dem Fall für F4.

Aber wie geht das für eine "Kombinationstaste", z. B. Alt-F10 oder Ctrl-F10 oder Ctrl-Alt-F10???

Hintergrund ist, dass ich ein anderes Programm in den Vordergrund bringen möchte, welches über einen Hotkey aufgerufen werden kann.
Gruß
Markus

Mitglied der XUG Saarland-Pfalz
Günter Beyes
Rekursionen-Architekt
Rekursionen-Architekt
Beiträge: 315
Registriert: Mo, 16. Okt 2006 13:04
Wohnort: Region Stuttgart

Beitrag von Günter Beyes »

Hallo Markus,

Das müßte mit der API-Funktion keybd_event gehen.

Im Forum Windows, API findest du was dazu:

"Keys von Xbase++ an andere Programme senden", 3.12.2006.

Viele Grüße,
Günter
Benutzeravatar
Markus Walter
Programmier-Gott
Programmier-Gott
Beiträge: 1018
Registriert: Di, 24. Jan 2006 10:22
Wohnort: Saarland

Beitrag von Markus Walter »

habe es herausbekommen:

Code: Alles auswählen


#define MOD_ALT              18   // Hex: 12
#define MOD_CONTROL       2
#define VK_F12                123

PostMessageA(HWND_BROADCAST, WM_HOTKEY, 0, Bin2w( Chr(MOD_ALT + MOD_CONTROL)+Chr(VK_F12) ))
löst den Hotkey STRG-ALT-F12 aus...
Gruß
Markus

Mitglied der XUG Saarland-Pfalz
Antworten