如何截获系统键,如:Ctrl+Alt+Delete 和 window(带有一个窗口)键等,
也就是说按系统建会指向自己的程序,不用钩子,

解决方案 »

  1.   

    对于window键很容易,
    你只要在PreTranslateMessage()里处理即可:
    如:
    BOOL CMydilog::PreTranslateMessage(MSG* pMsg) 
    {
       if (pMsg->message == WM_KEYDOWN)
    {
                if(pMsg->wParam==VK_LWIN)
                  {
                 ........
                    }..
    }如果你对Ctrl+Alt+Delete进行捕获就要费点事了,
    因为alt这个键不是那么简单就可以的.
    参考一下下面的文章:http://www.vckbase.com/document/viewdoc.asp?id=424
    http://www.vckbase.com/document/viewdoc.asp?id=242
      

  2.   

    hook不能解决热键的问题,参见http://www.csdn.net/Develop/read_article.asp?id=15645
      

  3.   

    谢谢 jiangsheng(蒋晟.MSMVP2004Jan)的指教!