mit dem Release von PB 4.50 und mit meinem Kauf eines Windows-7-Rechners bin ich auf die 64-Bit-Version umgestiegen. Aber gleich mein erstes Testprogramm, welches die Api-Funktion RegisterHotKey() benutzt, funktioniert nicht mehr, d. h. das Drücken der Hotkeys bewirkt nichts. Hier ist der Code. Wenn jemand eine Idee hat, woran das liegen könnte, wäre das toll!
Code: Alles auswählen
Global quit.b = #False
Global MyHotkeyA
Global MyHotkeyQ
Procedure MyHotkeyCallback(hwnd, msg, wParam, lParam)
result = #PB_ProcessPureBasicEvents
Select msg
Case #WM_HOTKEY
If wParam=MyHotkeyA
MessageRequester("Info", "Buchstabe A wurde gedrückt!")
EndIf
;
If wParam =MyHotkeyQ
MessageRequester("Info", "Buchstabe Q wurde gedrückt und Programm wird beendet!")
quit = #True
EndIf
EndSelect
ProcedureReturn result
EndProcedure
#window_0 = 0
OpenWindow(#window_0,200,200,600,400, "Test Hotkey", #PB_Window_SystemMenu)
MyHotkeyA = GlobalAddAtom_("HotA")
MyHotkeyQ = GlobalAddAtom_("HotB")
RegisterHotKey_(WindowID(#window_0), MyHotkeyA, #Null, #VK_A)
RegisterHotKey_(WindowID(#window_0), MyHotkeyQ, #Null, #VK_Q)
SetWindowCallback(@MyHotkeyCallback())
Repeat
Event = WaitWindowEvent()
Until Event = #PB_Event_CloseWindow Or quit = #True
UnregisterHotKey_(WindowID(#window_0), MyHotkeyA)
UnregisterHotKey_(WindowID(#window_0), MyHotkeyQ)
End