LRESULT CALLBACK HookKbd(int nCode,WPARAM wParam,LPARAM lParam)
{
PKBDLLHOOKSTRUCT p=(PKBDLLHOOKSTRUCT)lParam;
if (p->vkCode==VK_F2)
{
p->vkCode=0x31;
p->scanCode=MapVirtualKey(0x31,MAPVK_VK_TO_VSC);
}
return CallNextHookEx(hhk,nCode,wParam,lParam);
}怎么实现不了按键修改...按F2输出的还是F2没分给啊...只是希望大家一起讨论下

解决方案 »

  1.   

    把 int nCode,WPARAM wParam,LPARAM lParam 这3个参数逐个修改-测试不就行了, 呵, 也不用多少时间; 如果把这3个参数都改遍了, 都还是改不了原来的按键, 那就证明在这个步骤里是修改不了按键的,呵;
      

  2.   

    关注,钩子也做过一个,很多没完全弄明白。这个问题俺也不明白
    interested in this issue, i have made a hook before , but still there are many questions for me about this subject including this one.
      

  3.   


    LRESULT CALLBACK HookKbd(int nCode,WPARAM wParam,LPARAM lParam)
    {
    PKBDLLHOOKSTRUCT p=(PKBDLLHOOKSTRUCT)lParam;
    if (p->vkCode==VK_F2)
    {
    keybd_event(VK_F3, 0, KEYEVENTF_KEYUP, 0);
    return;
    }
    return CallNextHookEx(hhk,nCode,wParam,lParam);