想做一些关机清尾工作,在 win 和 Linux 平台运行的 Python 脚本如何监听系统关机重启的操作?

2014-07-30 20:38:22 +08:00
 decken
3869 次点击
所在节点    Python
6 条回复
izoabr
2014-07-30 20:41:41 +08:00
linux下,以前是init6和init0来弄的,win下不知道,是不是注册表里有相关的条目可以动啊。
wy315700
2014-07-30 20:42:37 +08:00
关机的时候会给进程发送SIGTERM消息的吧

监听一下就行了
sandtears
2014-07-30 22:10:01 +08:00
Windows 的组策略管理器(gpedit.msc) 里面有关机脚本的设定。
见下图:



Linux 的话可以写在 /etc/rc0.d/ 里面
decken
2014-07-30 22:29:44 +08:00
@sandtears 用户程序的话没可能让用户这样做吧。我的想法是直接在程序中处理
sandtears
2014-07-30 23:03:23 +08:00
@decken Linux 的话安装的时候把脚本丢进去就是了。 Windows 的话你看看有没有改注册表的地方
tmqhliu
2014-07-30 23:30:27 +08:00
直接用 Win32 API 从消息循环里监听 WM_QUERYENDSESSION 或 WM_ENDSESSION

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/125328

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX