请教:键盘钩子怎样替换键值?
写了个键盘钩子程序,想实现下面的功能:
比如:用户输入'A'时,自动替换成'B'。
修改KBDLLHOOKSTRUCT的vkCode和scanCode怎么都不行啊?钩子程序是好的
LRESULT CALLBACK LowLevelKeyboardProc(int nCode, WPARAM wParam, LPARAM lParam)
{
if (nCode == HC_ACTION)
{
KBDLLHOOKSTRUCT* pStruct = (KBDLLHOOKSTRUCT*)lParam;
if (pStruct->vkCode == 0x41) //A
{
pStruct->vkCode = 0x42; //B
//pStruct->scanCode = 0x33;
wParam = 0x42;
}
return CallNextHookEx(g_hHook, nCode, wParam, lParam);
}
}