WM_QUERYENDSESSION消息就是退出时系统发送得,可以处理此消息达到不让系统退出

解决方案 »

  1.   

    只要消息返回FALSE,系统就不退出。不过对强制退出则无效,比如NT,2000得任务管理器等
      

  2.   

    WM_QUERYENDSESSION这个消息是在哪里添加到程序里来的啊?
      

  3.   

    消息加进去了,我在退出前显示了一个messagebox,但是系统马上就说我的程序没有响应,然后就强行把他结束掉了,我不能延迟或阻塞这个消息怎么办啊?
      

  4.   

    强行把他结束掉了,这是没有办法的,而且也是一个健壮的操作系统所应该的。
    那个MessageBox是系统的吗?如果是,你可以选取消。
      

  5.   

       用系统钩子作作看,捕获WM_QUERYENDSESSION 不处理!
      

  6.   

    那个messagebox是我自己显示的,我想延迟一段时间处理的,但是如果系统给的时间太快了就没有办法了的啊?怎么能延迟系统关闭的时间呢?
      

  7.   

      使用系统钩子,截获WH_GETMESSAGE试一试。
      

  8.   

    一般的可以重载 windowproc 函数
    下来处理消息,当消息为退出消息时直接返回即可