2018年10月
  1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30 31      
無料ブログはココログ

« ウィンドウからプロセスを特定する。 | トップページ | スクリプトでスリープを抑止する。(その2) »

2010年3月10日 (水)

スクリプトでスリープを抑止する。

Vistaでは、なんでも、WM_POWERBROADCASTのPBT_APMQUERYSUSPENDが来ないらしく、BROADCAST_QUERY_DENYが返せないとか。
代わりに、SetThreadExecutionState()を出しておけとか。

SetThreadExecutionState()関数の解説記事によれば、
「ローカルのキーボードまたはマウスによる入力、サーバーアクティビティ、ウィンドウフォーカス切り替えなどのアクティビティは、システムで自動的に検出されます。」

ならば、スクリプト的には、

SleepDenier.vbs

set wshell=createobject("wscript.shell")
do while wshell.popup("Sleep 抑止中 ...",60,"Sleep Denier",)=-1
  wshell.sendkeys "%{tab}"
loop

« ウィンドウからプロセスを特定する。 | トップページ | スクリプトでスリープを抑止する。(その2) »