.NET中有可能确定我的应用程序是否由于Windows被赋予关闭命令而关闭(而不是任何旧应用程序关闭)以便写出一些临时缓存文件甚至阻止关机时间足以提示用户输入?确定关机正在关闭我的应用程序
虽然我目前的范围涉及到一个winform应用程序和窗口服务,我很感兴趣,如果可能的话
.NET中有可能确定我的应用程序是否由于Windows被赋予关闭命令而关闭(而不是任何旧应用程序关闭)以便写出一些临时缓存文件甚至阻止关机时间足以提示用户输入?确定关机正在关闭我的应用程序
虽然我目前的范围涉及到一个winform应用程序和窗口服务,我很感兴趣,如果可能的话
SystemEvents.SessionEnding看起来像一个很好的出发点,你了解这一个通用的方法。那篇文章谈到了当注销/关机时发生的事件顺序。
一般而言,您将需要处理WM_QUERYENDSESSION
Windows消息。这将使您的应用程序有机会进行清理,或者在真正有必要时阻止关闭。
处理Microsoft.Win32.SystemEvents类型的SessionEnded事件。