我正在尝试重新映射游戏的一些键(Elsword)。
首先,我使用这段代码来模拟按下的键:
#define WINVER 0x0500
#include <stdio.h>
#include <stdlib.h>
#include <windows.h>
#include "dinput.h"
int main()
{
HWND hWndMain = FindWindow(0, "Elsword");
SetForegroundWindow(hWndMain);
Sleep(3000);
INPUT input[2];
input[0].type=INPUT_KEYBOARD;
input[0].ki.wScan = DIK_V; // direct-input scancode for key '1'
input[0].ki.dwFlags=KEYEVENTF_SCANCODE;
input[1].type=INPUT_KEYBOARD;
input[1].ki.wScan = DIK_V; // direct-input scancode for key '1'
input[1].ki.dwFlags=KEYEVENTF_SCANCODE | KEYEVENTF_KEYUP;
SendInput(2,input,sizeof(INPUT));
Sleep(1000);
return 0;
}
在所有其他应用程序中它工作正常,但在游戏窗口中它什么也不做......