代码之家  ›  专栏  ›  技术社区  ›  johnc

确定关机正在关闭我的应用程序

  •  5
  • johnc  · 技术社区  · 16 年前

    在.NET中,是否可以确定我的应用程序是否正在关闭,因为Windows被给予关闭命令(而不是任何旧的应用程序关闭),以便写出一些临时缓存文件,甚至阻止关闭足够长的时间来提示用户输入?

    虽然我目前的范围涉及一个WinForm应用程序和一个Windows服务,但如果可能的话,我有兴趣以一种通用的方式理解这一点。

    3 回复  |  直到 16 年前
        1
  •  7
  •   Harper Shelby damiankolasa    16 年前

    SystemEvents.SessionEnding 看起来是你的一个好起点。这篇文章讨论了注销/关闭发生时所涉及的事件序列。

        2
  •  4
  •   Greg Hewgill    16 年前

    一般来说,您需要处理 WM_QUERYENDSESSION Windows消息。这将使您的应用程序有机会进行清理,或者在确实需要时阻止关闭。

        3
  •  2
  •   HTTP 410    16 年前

    处理Microsoft.Win32.SystemEvents类型上的sessionEnded事件。