- 締切済み
VBでスタンバイや休止状態から特定時刻に復帰できますか?
スタンバイ状態からの復帰、できれば、休止状態からの復帰時に、 特定アプリケーションを実行するような設定を行いたいのですが、 プログラム、特にVBで実現したく思うのですが、指定時間になったら、 スタンバイや休止状態から復帰し、特定プログラムを実行するプログラムは 実現可能でしょうか。もし、可能でしたら、それに必要なAPI関数などを 教えていただけると幸いです。 やはり休止状態からの復帰を特定時刻に行うというのは、プログラム上で 実現するのは難しいでしょうか。
- みんなの回答 (2)
- 専門家の回答
みんなの回答
- TAGOSAKU7
- ベストアンサー率65% (276/422)
すいません。。。回答ではないです。 質問のタイトルは「特定時間の復帰」質問内容は「スタンバイ/休止状態解除時の認識」となってますが、どちらがしたいのかがわかりません。 復帰を行いたいのですか?それとも、復帰したのを認識したいのですか? 特定時間の「休止状態からの復帰」は確かに無理っぽいですね。 ちなみに調べたところ、あくまでたぶんなのですが・・・ アプリでスタンバイ状態から、復帰できるような感じです。で、休止状態になる前に休止状態を拒否する定数を送ると休止を回避できるようです。 これが何を意味するかというと、WINDOWSから「これからスタンバイ/休止状態になる」というのを受け取ることができ、そのあとのイベントは「スタンバイ/休止状態」からの復帰後のイベントが発生していると言えます。 だから「スタンバイ/休止状態からの復帰」は認識可能です。 たぶんSendMessageでも可能ではないかと思うのですが・・・かなり自信ありません。 定数はおそらく Const WM_POWERBROADCAST = &H218 Const PBT_APMQUERYSUSPEND = &H0 Const PBT_APMQUERYSTANDBY = &H1 Const PBT_APMQUERYSUSPENDFAILED = &H2 Const PBT_APMQUERYSTANDBYFAILED = &H3 Const PBT_APMSUSPEND = &H4 Const PBT_APMSTANDBY = &H5 Const PBT_APMRESUMECRITICAL = &H6 Const PBT_APMRESUMESUSPEND = &H7 Const PBT_APMRESUMESTANDBY = &H8 Const PBTF_APMRESUMEFROMFAILURE = &H1 Const PBT_APMBATTERYLOW = &H9 Const PBT_APMPOWERSTATUSCHANGE = &HA Const PBT_APMOEMEVENT = &HB あたりだと思います・・・たぶん・・・ しかし、いろいろなメーリングリストを見てると、「NTでは無理だ」とか「DOS/Vのノートではトンチンカンな定数が来る」とか色々言われていて、何が正しいのか検証できません。 もう少し調査が必要です。
- haporun
- ベストアンサー率40% (230/562)
スタンバイはともかく、休止状態は完全に電源を切ってしまうので、内部のプログラムがどうとか言うのは難しそうですね。 Wake On LANって知ってますか? LAN上のパソコンが電源の入っていないパソコンにメッセージを送って起動させると言うものです。 そういうAPIがあるとかないとかは聞いたことがないですが、その辺で攻めてみてはどうでしょうか。 もちろん、復帰時に何かさせるのはLAN上のパソコンになってしまいますが。 さらに、Wake On LANに対応したネットワークカードやマザーボードが必要です・・・。