解决方案 »

  1.   

    不知道楼主使用过com没有,用用com可以创建一个服务工程,运行就是以一个服务的形式运行,在windows关机时,会调用每个服务程序的ShutDown方法,具体地我有点记不清了。反正在服务中是可以收到关机的消息的。楼主可以在百度上收一下“com 服务 Shutdown”等关键字
      

  2.   

    LRESULT CMainFrame::WindowProc(UINT message, WPARAM wParam, LPARAM lParam)
    {
    if (message==WM_ENDSESSION)
    {
    //system("shutdown.exe -s -t  600");
    ::PostMessage(theApp.GetMainWnd()->m_hWnd,WM_CLOSE,0,0);
    }
    return CMainFrame::WindowProc(message,wParam,lParam);
    }
    我要是捕获这个windowproc 应该返回什么啊 我这么写的话 返回报错 应该怎么写
      

  3.   

    应该是WM_QUERYENDSESSION 吧
    在这条消息处理里,做你想做的事情,
    如果想阻止关机, return falseWM_ENDSESSION 是已经关机了吧