当用户通过加入域的计算机上的“开始”菜单正常关闭时,首先会发生什么,a) 尝试关闭在后台运行的应用程序或 b) 断开与服务器的连接?
我问的原因是当用户登录时,我们在服务器共享上运行一个小型便携式应用程序。
在关机时,除极少数用户外,所有用户的正常行为是应用程序静默终止(它拦截 Windows 关机信号并结束),PC 关机继续正常进行。
对于一些人来说,很明显网络连接已终止,Windows 会抛出一个消息框,其中包含 0xc00000c4,STATUS_UNEXPECTED_NETWORK_ERROR,因为应用程序无法自行关闭,因为它“不存在”,正如它所看到的那样。
那么,是否存在一系列事件,或者是,嗯,谁知道是什么以及什么时候以什么顺序发生?
在关机期间,Windows 只是向所有正在运行的程序发送一条关闭消息。未在给定超时内完成的进程和服务可能会被强制终止,或者可能会提示用户做出决定。
由于关闭是并行完成的,因此没有有序的事件序列。该顺序取决于每个进程终止所花费的时间,并且可能进一步受到硬件性能的影响。
为确保您的程序在此之前终止,您可以创建一个关闭脚本以有序方式关闭它。使用组策略编辑器 (
gpedit.msc
) 并转到 计算机配置 > Windows 设置 > 脚本(启动/关机)。