Python 在计算机睡眠/休眠后冻结

发布于 2024-08-16 09:13:21 字数 150 浏览 7 评论 0原文

我有一个使用 pythonw 在后台运行的 python 脚本。如果我关闭笔记本电脑,它就会进入睡眠模式。当我打开笔记本电脑时,我的程序几乎没有任何功能,并在几秒钟后冻结。有什么方法可以让我的脚本知道我的计算机是否进入睡眠模式,以便它可以处于休眠状态并在我重新打开笔记本电脑时重新启动?

I have a python script that is running in the background with pythonw. If I close my laptop, it goes into sleep mode. and when I open my laptop, my program has little functionality and freezes after a couple of seconds. Is there any way that my script can tell if my computer is going into sleep mode, so that it can lie dormant and restart when I re-open my laptop?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

年少掌心 2024-08-23 09:13:21

您可以捕获其中包含 PBT_APMQUERYSUSPEND 事件的 WM_POWERBROADCAST 窗口消息。要在Python程序中捕获此消息,您可以创建新的不可见窗口并让单独的线程重复调用GetMessage()

在最坏的情况下,您可以仅使用 ctypes 来归档所有这些,但您也可以使用 pywin32,有时称为 win32py

You can catch WM_POWERBROADCAST window message with PBT_APMQUERYSUSPEND event inside it. To catch this message inside Python program, you can create new invisible window and make separate thread repeatedly calling GetMessage().

In the worst case you can archieve all these by using ctypes only, but you can also use pywin32, sometimes referred to as win32py.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文