我想知道.NET Window Service的OnStop()在哪种情况下不会触发?
当计算机突然重启,电源故障,关机或任何其他情况时会触发吗?
答案 0 :(得分:2)
它将在机器的服务控制管理器收到该服务的停止指令的情况下触发。
如果有人选择通过Services MMC管理单元执行Stop操作(直接发送到您的服务或标记为依赖项的服务),或者有人发出sc stop
命令,则会发生这种情况在命令行(再次,您的服务或依赖)。
或者,如果计算机上运行的任意程序(具有足够的权限)连接到服务控制管理器并发出停止命令,则可能发生这种情况。
当计算机突然重启,电源故障,关机或任何其他情况时会触发吗?
可以选择接收关机事件 - 请参阅CanShutdown
和OnShutdown
。您还可以处理一些电源状态更改事件(请参阅OnPowerEvent
)。