• 締切済み

PCを指定時間に休止状態にしたり復帰させたりする方法

PCを指定時間に休止状態にしたり、復帰させたりしたいと思っています。 復帰はタスクスケジューラで、休止状態はrundll32.exeを使ってできることとが分かったのですが、rundll32で休止状態にすると、タスクスケジューラでの自動起動ができないようです。(どこかのサイトにも書かれていました) そこで、rundll32以外の方法で休止状態にする方法(コマンド、WindowsAPIなど)をご存知の方がいらっしゃいましたらご教授ください。 会社のPCで、フリーソフトを落としたり持ち込んだりはできないので、コマンドやAPIが存在しているのならば、それを実行するプログラムを作ればいいかと思っています。

みんなの回答

  • Donotrely
  • ベストアンサー率41% (537/1280)
回答No.2

>今回お聞きしたいことは、rundll32以外の方法で休止状態にする方法ですが、 >rundll32を使用して休止状態にできなくて困っているというわけでは >ありません。 これは失礼しました。 >できないのは、このコマンドで休止状態にした後、タスクスケジューラに登録された >別のexeなどが起動する時間に休止状態から復帰させることです。 原理的にできません。 なぜならCPUクロックが停止しているからです。 起動されるタスクもプログラムなら、起動させるタスクスケジューラもプログラムなのです。 CPUが停止している以上プログラムによるタスク開始処理を実行することは不可能です。 入出力デバイスによるトリガーで、止まった場所から再開させることなら可能ですけど。

ronbori
質問者

お礼

度々ありがとうございます。 色々と試してみましたが、やっぱりコマンドで休止状態にする以上、無理そうですね。 「Windowsのシャットダウン」ウィンドウからユーザ操作によって休止状態に 入れると復帰できるのに、rundll32で休止状態に入れると復帰できないというのは、 ちょっと引っかかるところですが。。。 同じ休止状態でも内部的に何か違うんでしょうね。 仕方なく、「Windowsのシャットダウン」ウィンドウを表示させて、 休止状態にしてEnterを押すというキーストロークを仮想的に行わせる アプリを作って、休止状態にすることで、どうにかやることができました。 ただ、キーストロークが決まっていて、デスクトップを表示させている状態じゃないとうまく行かないので、 デキはいまいちなのですが。。。

  • Donotrely
  • ベストアンサー率41% (537/1280)
回答No.1

>そこで、rundll32以外の方法で休止状態にする方法(コマンド、WindowsAPIなど)をご存知の方がいらっしゃいましたらご教授ください。 そこまで意欲がある方が >タスクスケジューラでの自動起動ができないようです。(どこかのサイトにも書かれていました) 他人の言った表面的なことを鵜呑みにするというのは... ダメな原因は何か?を理解する努力をしてから別の手段をさがすべきではないでしょうか。 例えば、XPがCドライブに普通にインストールされていれば C:\WINDOWS\system32\rundll32.exe powrprof.dll,SetSuspendState という内容のコマンドファイル(バッチファイル)を作ります。 仮にファイル名を kyuushi.cmd か kyuushi.bat にします。 これで、PCを一時休止を有効化して、 タスクスケジューラでkyuushi.cmdかkyuushi.batを設定すればどうかな。 正常なPCならできます。

ronbori
質問者

お礼

回答ありがとうございます。 でもちょっと質問の仕方が悪かったので求めている回答と違いました。 今回お聞きしたいことは、rundll32以外の方法で休止状態にする方法ですが、 rundll32を使用して休止状態にできなくて困っているというわけでは ありません。 >C:\WINDOWS\system32\rundll32.exe powrprof.dll,SetSuspendState これを使用して休止状態にすることはできます。 できないのは、このコマンドで休止状態にした後、タスクスケジューラに登録された 別のexeなどが起動する時間に休止状態から復帰させることです。 スタートメニューから普通に休止状態にすると、指定の時間に 休止状態から復帰して、登録したアプリが起動するのですが、 上記コマンドで休止状態に入れると時間になっても復帰しません。 (もちろん電源ボタンを押せば復帰できます。) 私のIBMと後輩のFMVとDELLでも試しましたが全部同じ結果だったので、 もしかしたら仕様かバグかな~と思ってます。

関連するQ&A

  • VBでスタンバイや休止状態から特定時刻に復帰できますか?

    スタンバイ状態からの復帰、できれば、休止状態からの復帰時に、 特定アプリケーションを実行するような設定を行いたいのですが、 プログラム、特にVBで実現したく思うのですが、指定時間になったら、 スタンバイや休止状態から復帰し、特定プログラムを実行するプログラムは 実現可能でしょうか。もし、可能でしたら、それに必要なAPI関数などを 教えていただけると幸いです。 やはり休止状態からの復帰を特定時刻に行うというのは、プログラム上で 実現するのは難しいでしょうか。

  • 休止状態から復帰したときつながらない

    Windows XP で 休止状態から復帰したとき、インターネットにつながらないです。(DHCPです) 調子がいいときは、数分くらい待つとつながるのですが、調子が悪いとPCを再起動しないとつながりません。 「修復」コマンドをやると「修復操作は完了しました」とすぐ出るのですが・・・。 再起動をするとつながるということは、何かコマンドを実行すればつながるのだと思うのですが、再起動以外に方法はないでしょうか?

  • pcの休止状態からの復帰

    パソコンの休止状態ってありますがなんなのでしょうか。  休止した状態(pcは電池と○の中にNとあるマークだけが点灯しています)から復帰させるためにはいつも電源ボタンを長く押して電源を切りもう一度電源ボタンを押しています。なんか変です・・・・。  正式な復帰の方法を教えて下さい。  IBM ThinkPad OS WinXP Pro

  • 休止状態からの復帰方法教えてください!!!

    「休止活動からは電源ボタンを押すと復帰できる」と聞きましたが 電源ボタンを押してもエンターキーなど押しても復帰できません。 壊れてしまったのでしょうか? ちなみに休止状態にしたくてやったわけではないので状況とか わからないんです。急に「休止状態を準備しています」ってなって しまってそれ以来どこを触ってもつかなくなってしまったんです。 サポートにも電話しましたが繋がらず、もうどうしていいか わからなくてパニックになってます…。 (今は家族専用のPCでやってます)誰か教えてください!!!

  • 指定した時間に休止状態にできません

    ネットゲームでPCを使っているのですが、 ソフトを起動したまま電源を入れて放置して寝ると 親が怒って勝手に電源を切るのです。 仕方なく、親にばれないように指定した時間に休止状態になるように設定してみたのですが時間が経っても休止状態にならず困っています。 ちなみに、休止状態を有効にし、 電源設定 常にオン モニタの電源を切る なし ハードディスクの電源を切る なし システムスタンバイ なし システム休止状態 1分後 の状態で試してみた所、2分以上待ちましたが休止になりませんでした。 マウスなどの動きが止まった時間から指定した時間が経つまで休止状態にはならないと聞いたのですが、全く触れていないのに休止にはならず。 ネットゲームが常時オンラインでネットが繋がっているからでしょうか? 休止状態に入るまではネットを繋げた状態で、ゲームも繋がった状態にしておきたいのですが・・・その状態だと休止にはならないのでしょうか? ネットを繋いだ状態で休止状態にする方法はありませんか? (休止状態でもネット接続したい、という意味ではなく、ネットゲームなどを接続していても休止状態に入るように、という意味です) アドバイスお願いします。

  • 休止状態からの復帰

    XPプロ SP3ですが休止状態からの復帰の方法をご指導願います。

  • 休止状態からの復帰

    こんにちは。 デュアルコアCPU、メモリ2GB程度のPCでXPからVistaに乗り換えた方にお聞きしたいのですが、 休止状態からの復帰はXPとVistaではどちらの方が早いですか? もしくは皆さんの環境では休止状態から電源を押してHDDが落ち着く迄何秒程掛かりますか?

  • 休止状態から復帰した時の状態を元に戻したい!(自動ログオンをやめたい)

    Microsoftの指紋認証装置Fingerprint Readerを導入して、今まで自動ログオン状態にしていた環境を元に戻したんですが(「ようこそ」画面を出すようにした)、再起動時は普通に「ようこそ」画面が出るんですけど、休止状態から復帰した時は、今まで通り自動ログオンしてしまいます。これを何とか、元の「ようこそ」画面が出てくる状況に戻したいんです。 自分でやれると思うことはやったつもりです。「窓の手」や「Win高速化PC+」などのカスタマイズソフトの設定も元に戻しましたし、コマンドラインで rundll32 netplwiz.dll,UsersRunDll を実行して、「ユーザーがこのコンピュータを使うには、ユーザー名とパスワードの入力が必要」のチェックがついていることも確認しました。また、ダミーのユーザーを作ってみたりもしましたが、結局徒労に終わりました。 単純に、休止状態から復帰した時も、カスタマイズする前と同様、「ようこそ」画面が出てくれればそれでいいんです。上記の通り、色々やってみたんですけどダメでした。助けて下さい!!

  • VB2010でスタンバイや休止モードの復帰検出

    Visual Basic 2010で作ったプログラム(exeファイル)を実行中にスタンバイまたは休止モードに移行し、その後そのモードから復帰した時に発生するイベント、または復帰を検出する方法は有りませんか?(Formはアクティブになっていません。)

  • タスクスケージューラでシャットダウン可能?

    時間を設定するとその時間になると強制でシャットダウンするか休止にする方法ありますか? できればタスクスケジューラでコマンド追加でしたいのですが。 フリーソフトでもインストールしたくありませんので。 簡単なEXE作成方法でも結構です。それをタスクスケジューラで実行させられますよね?