RegisterHotKey frage
-
floppy schrieb:
so frisst es die laptop tastatur wenigstens
also den vorteil hab ich...
Na, das hört sich ja schonmal gut an...
-
HWND currentTop; currentTop = GetForegroundWindow(); AttachThreadInput (GetWindowThreadProcessId (currentTop, NULL), GetCurrentThreadId(), TRUE); //AttachThreadInput (GetWindowThreadProcessId (hwnd, NULL), GetCurrentThreadId(), TRUE); BYTE cBuf[256]; GetKeyboardState (cBuf); //AttachThreadInput (GetWindowThreadProcessId (hwnd, NULL), GetCurrentThreadId(), FALSE); AttachThreadInput (GetWindowThreadProcessId (currentTop, NULL), GetCurrentThreadId(), FALSE); if (cBuf['B']&0x80 && cBuf['C']&0x80) { MessageBox oder sonst ne aktion }
so geht es eingermaßen..., aber leider nur bei jedem 2. mal (also es geht immer einmal, dann wieder einmal nicht
)
ob tasten gedrückt wurden, die nicht dazugehören müsste ich hier auch noch extra. und auf dem laptop gehts auch nicht
was tun? ich könnte es wieder mit GetKeyState() machen, dann geht es wenigstens jedes mal und nicht jedes zweite...
-
ich habe das mittlerweile mal ganz anders versucht. ganz ohne HOTKEY... einfach mit PeekMessage() und dann alles in eine funktion
aber das ist noch verbugter *lol* also funktioniert schon in der regel, aber ich glaub ich mach das einfach wieder mit GetKeyState und frag die alle ab, wenn WM_HOTKEY gesendet wurde, dass war noch am zuverlässigsten