Python зависает после сна компьютера / гибернации - PullRequest
2 голосов
/ 24 декабря 2009

У меня есть сценарий Python, который работает в фоновом режиме с Pythonw. Если я закрою свой ноутбук, он перейдет в спящий режим. и когда я открываю свой ноутбук, моя программа мало функционирует и через пару секунд зависает. Есть ли какой-нибудь способ, которым мой сценарий может определить, переходит ли мой компьютер в спящий режим, чтобы он мог бездействовать и перезагружаться при повторном открытии ноутбука?

1 Ответ

0 голосов
/ 12 октября 2010

Вы можете поймать WM_POWERBROADCAST сообщение окна с событием PBT_APMQUERYSUSPEND внутри него. Чтобы поймать это сообщение в программе Python, вы можете создать новое невидимое окно и создать отдельный поток, неоднократно вызывая GetMessage().

В худшем случае вы можете архивировать все это, используя только ctypes, но вы также можете использовать <a href="http://pypi.python.org/pypi/pywin32" rel="nofollow">pywin32</a>, иногда называемый win32py.

...