如何虚拟激活“MadCatz Strike 7”键盘的特殊功能键?发送其键代码应使MadCatz7软件像注册物理按键一样运行。
这些功能键是否有键码(或是否有更好的方法)?我正在编写一个AutoIt脚本,应该让MadCatz软件通过激活相应的特殊功能键来完成剩下的工作。
这些功能键是否有键码(或是否有更好的方法)?我正在编写一个AutoIt脚本,应该让MadCatz软件通过激活相应的特殊功能键来完成剩下的工作。
试着使用这段代码找出密钥。通常情况下,你的特殊功能键会有一个备用的热键,如ctrl+alt+F10或其他。
Opt('GUICloseOnESC', 0)
Global $tState = DllStructCreate('byte[256]')
GUICreate('MyGUI', 200, 200)
$Label = GUICtrlCreateLabel('', 20, 72, 160, 52, 0x01)
GUICtrlSetFont(-1, 32, 800, 0, 'Tahoma')
GUISetState()
$Prev = -1
While 1
Sleep(10)
If GUIGetMsg() = -3 Then
ExitLoop
EndIf
$Key = 0
$Ret = DllCall('user32.dll', 'int', 'GetKeyboardState', 'ptr', DllStructGetPtr($tState))
For $i = 0x08 To 0xFF
Switch $i
Case 0x0A, 0x0B, 0x0E To 0x0F, 0x16, 0x1A, 0x1C To 0x1F, 0x3A To 0x40, 0x5E, 0x88 To 0x8F, 0x97 To 0x9F, 0xB8 To 0xB9, 0xC1 To 0xDA, 0xE0, 0xE8
ContinueLoop
Case Else
If BitAND(DllStructGetData($tState, 1, $i + 1), 0xF0) Then
$Key = $i
ExitLoop
EndIf
EndSwitch
Next
If $Key <> $Prev Then
GUICtrlSetData($Label, '0x' & Hex($Key, 2))
$Prev = $Key
EndIf
WEnd
如果不直接告诉MadCatz软件按下了特殊键,就没有办法做到这一点,以便软件启动编程模板。
我使用了AutoIt脚本来解决这个问题,等代码完成后会发布。