window7 休止、スリープ用VBSスクリプト
vistaとかで紹介されているVBSスクリプトが使えなかったので、あきらめて書き直してみた。
CreateObject("Shell.Application").ShutdownWindows Set wShell=CreateObject("WScript.Shell") Do While Not wShell.AppActivate("Windows のシャットダウン") WScript.Sleep 100 Loop WScript.Sleep 1000 wShell.SendKeys "{UP}" WScript.Sleep 1000 wShell.SendKeys "{ENTER}"
やってることは、下記の窓を出して、休止か、スリープか選んでEnter押しているだけ。「スリープ」か「休止」かは、{UP}の数を変えてください。Enterの行を消してみてテストしてみるのが無難でしょう。
後、Windows7で
休止がねえぞ!!(#゚Д゚)ゴルァ!!
かってに復帰するぞ!!(゚Д゚)ウゼェェェ
って人は下記が参考になる感じ。
まずは電源周りだけど、とりあえず「休止状態」を復活させるために、Vistaと同じ方法(「Windows Vistaの[休止状態]オプションを有効にする− @IT」)を試してみることに。ちなみに、powercfgは管理者権限が必要なので、コマンドプロンプトも管理者権限で起動しないとダメ(cmd.exeを右クリックして、「管理者として実行」で起動)。
さらに電源オプションで、ハイブリッドスリープをオフにするのと、タイマー処理もオフに。これで、ようやく「休止状態」がメニューに登場。
ただ、この状態で休止を選択しても、やっぱりしばらくすると勝手に再起動してしまうので、今度はイベントログからスリープからの復帰状況をチェック(「Windows Vistaマシンがスリープ状態から勝手に復帰するのを防止する− @IT」)。復帰理由が「不明」のものもあるものの、
それ以外に使っていない2枚目のNICが悪さしているのもあったので、そいつのプロパティの「電源管理」でスタンバイ状態の解除をOFFにしたうえでデバイスを無効に。使用中のNICが復帰の原因になっているものもあったので、そいつのプロパティの「電源管理」でスタンバイ状態の解除をOFFに変更、ついでに使ってない方のNICデバイスを無効に。
これで再度「休止状態」にチャレンジして、ようやく勝手な再起動はなくなった感じ。ってことは、ようするに使ってないNICが原因だったわけか…。うむ〜。 (一部勘違いしてたので修正)
電力代がちょっといっちゃてる上にHDDの温度もやばい感じなので、エンコバッチとかに休止スクリプトを諦めて組み込むとしますか・・・・