通讯可使用EVENT,或同名消息。
如果你做成全局键盘钩子,可在程序初始化时候调用。

解决方案 »

  1.   

    WINDOWS挂钩监控函数的实现步骤WINDOWS挂钩函数只有放在动态链接库DLL中才能实现所有事件的监控功能。
      

  2.   

    在应用程序主函数中建立窗口后,调用InitHooksDll()函数来初始化动态链接库,并将应用程序主窗口句柄传递给链接库,然后调用InstallFilter()函数挂接键盘事件监控回调函数。
      

  3.   

    找了一个例子,但它的钩子过程独立完成一个功能,应用程序只需安装钩子就可以了,钩子过程并没有跟应用程序通信,我的钩子过程只要截获组合键消息就可以了LRESULT CALLBACK KyeHook(int nCode,WPARAM wParam,LPARAM lParam) 
    {
         if(按键==ctrl + alt + enter)
       
           //怎么通知程序?
    }程序只要收到通知就弹出一个对话框,那么该怎么调用?
      

  4.   

    You can pass a HWND to your hook dll. When your hook blocks the ctrl+alt+enter message, you use SendMessage to tell your own program. Dont' forget to set your HWND variable (which is in the dll) to be shared.
      

  5.   

    LRESULT CALLBACK KyeHook(int nCode,WPARAM wParam,LPARAM lParam) 
    {
         if(按键==ctrl + alt + enter)
       
           //怎么通知程序?
           HWND hwnd=FindWindow("","xxx");//find programe  handle 
           SendMessage(hwnd,WM_USER,0,0);
    }
    //then in your programe, you deal with WM_USER message
      

  6.   

    我想在钩子过程里截获组合键后就PulseEvent(),在应用程序里waitforsingleobject(),但查了msdn,这两个函数有几个版本,怎么用啊?那些参数
      

  7.   

    同意kingzai() 的说法,你可以专门做一个线程来接收这个消息,也在主程序中做一个消息接收程序,就像你按下一按钮一样,既使主程序不在活动中也能接收到,不用搞得那么复杂