4

我知道这shutdown -a将中止 Windows 关闭,但我需要知道是否有任何可以检查的地方以查看是否正在进行关闭。

理想情况下,我想要一个像这样的小程序:

 import os

 while True:
    shuttingDown = <shutdown variable to check>
    if shuttingDown:
         os.system("shutdown.exe -a")
4

1 回答 1

1

为了防止 Windows 在发生时关闭,您可以对WM_QUERYENDSESSION消息做出反应(不知道您是否可以使用 Python 的 win32 API 轻松做到这一点,但在 C 中很简单)。这可能不会阻止应用程序关闭,因为 Windows 将 WM_ENDSESSION 发送给那些对查询消息回答 TRUE 的人。

我猜您宁愿使用“shutdown.exe”来防止定时关机。我确定该程序使用InitiateSystemShutdown来显示关闭对话框,但是没有资源可以拦截该调用(至少我没有找到或知道允许这种事情的 Windows 功能)。

于 2010-03-01T21:10:46.827 回答