好不容易界面有反映了,但是有2个问题实在不明白了
1,先请看/************** 二 *****************/
   用来判断是否按了“f”,结果无用,试了 (char)(pev->paramL) == 102 、wParam == 102 也无用,这些可是网上找到的例子啊,晕,都没效果,应用程序keyCode = Msg.wParam接受到的都是256,257,求助!2,回头看/************** 一 *****************/,找到一个例子  if  (!(lParam  &  0xA0000000))//响应一次,结果也是没反应,靠2个变量对付了过去,不知道有什么好办法?LRESULT CALLBACK HookProc(int nCode,WPARAM wParam,LPARAM lParam)
{
    EVENTMSG* pev=(EVENTMSG* )lParam;
    if( (nCode>=0))/************** 一 *****************/
    {
        if(GetKeyState(102)&0x80  /************** 二 *****************/
        ){
            //return 1;
        }
        else {  
            PostMessage(hWndMain,HOOKAPI_FIRSTCOMMAND,wParam,HOOKAPI_SECONDPARAM);
        }
    }
    return((int)CallNextHookEx(hLogHook,nCode,(char)(-1),lParam));
}

解决方案 »

  1.   

    第二个问题,判断在某一键按下时另外一键是否已经按下,用if(GetKeyState(102))判断,否则,
    直接用if(wParam == 102)来判断就可以了。
    第一个问题,不大懂你的意思 。。 你的程序是要实现什么??
      

  2.   

    你这个到底有没有钩到信息啊看看你的SetWindowHookEx
      

  3.   

    wParam == 102 也无用是你的钩子没生效你用全局钩子,看看你的共享数据段写的对不对,属性应设置为读写共享。
      

  4.   

    SEGMENTS ShareSEG CLASS 'ShareCLASS' SHARED
    这个是不是共享数据段
      

  5.   

    问题解决,奇怪的是:为什么我在2000下WH_KEYBOARD_LL居然不正确,非要用WH_KEYBOARD