C# Windows 7 在计算机关闭前运行 exe

C# Windows 7 在计算机关闭前运行 exe

我想在计算机(运行 Windows 7)关闭之前运行一个可执行文件,将 XML 文件保存在本地驱动器上。

我知道可以在关机前运行脚本。可以在本地组策略编辑器的计算机配置 --> Windows 设置 --> 脚本(启动/关机)下进行配置。

我尝试将可执行文件放入关机属性中,但不起作用。如何在计算机关机前运行可执行文件?如何关联关机事件?

答案1

在关闭启动时启动进程是个坏主意。在这个阶段,最有可能的结果是返回错误1115ERROR_SHUTDOWN_IN_PROGRESS

更好的方法是安装一个服务并注册该服务以通过以下方式接收关机通知RegisterServiceCtrlHandlerEx,请参阅关闭:

服务应用程序在其处理程序例程中接收关闭通知。要注册服务控制处理程序,请使用该RegisterServiceCtrlHandlerEx函数。

AC# 服务将通过设置来执行此操作CanShutdown为 true,然后处理OnShutdown事件。作为服务而不是应用程序非常重要,因为当没有会话登录时可能会发生关机,并且/或者当关机发生时可能正在运行多个会话。

相关内容