休止・スリープ状態復帰時にUSB機器が反応しなくなる問題を解決
Windowsでスリープ状態や休止状態から復帰すると、一部USB機器が動いてくれない(USBコネクタを抜き挿しすれば動く)。
でも、Windows7はスリープ状態からの復帰が素早いらしいから、スリープ機能は使いたい。
そこで、この問題を解決できないかと調べてみた。
Microsoftから配布されているdevconを用いてUSB機器を再認識させることができそう。
でも今度は、毎回ユーザアカウント制御(UAC)の確認画面が出てきて邪魔(一部ソフトだけUAC無効化するのは無理)。これはタスクスケジューラで「最上位の特権」を用いることで解決することができた。
同じ状況でお困りの方も多いと思うので、手順を細かく書いておきます。
この辺の事に詳しいわけではないので、おかしい所があれば教えてくださいm(_ _)m
準備1. devconを用意する
以下のURLからdevconをダウンロードして、適当な場所に解凍しておく
http://support.microsoft.com/kb/311272/ja
準備2. 解決したいUSB機器のVID/PID(DEV)を調べる。
PC Wizardをインストール。
左側のアイコンから「IO Ports」を選択、解決したいUSB機器を探す。
Product ID行のVIDとDEV(PID)の4桁の英数字を控えておく。
1. 「タスク スケジューラ」を開く
(「コントロール パネル」->「表示方法:大きいアイコン」->「管理ツール」->「タスク スケジューラ」)
2. 「タスクの作成」ウインドウを開く
(「操作(A)」->「タスクの作成(R)…」)
3. 以下のとおりに設定する
【全般】
1.) 名前(M)に適当にわかりやすい名前をつける
2.) 「ユーザーがログオンしているかどうかにかかわらず実行する(W)」を選択
3.) 「パスワードを保存しない(P)」にチェック
4.) 「最上位の特権で実行する(I)」にチェック
【トリガー】
1.) [新規(N)...]をクリック
2.) タスクの開始(G)で「イベント時」を選択
3.) ログ(O)で「システム」を選択
4.) ソース(S)で「Power-Troubleshooter」を選択
5.) イベントID(T)に「1」を入力
6.) 詳細設定は「有効」のみチェックを入れておく
【操作】
1.) [新規(N)...]をクリック
2.) 操作(I)で「プログラムの開始」を選択
3.) プログラム/スクリプト(P)に、ダウンロードしたdevcon.exeへのパスを入力
4.) 引数の追加(A)に「disable “USB\VID_****&PID_****”」と入力(****には事前に調べたVID値とDEV(PID)値を入力)
5.) [OK]をクリック
6.) 1から3の操作を再度繰り返す
7.) 引数の追加(A)に「enable “USB\VID_****&PID_****”」と入力(****には事前に調べたVID値とDEV(PID)値を入力)
8.) [OK]をクリック
【条件】
(※特にいじらなくて良い、好みに応じて設定)
【設定】
(※特にいじらなくて良い、好みに応じて設定)
最後に[OK]をクリックして「タスクの作成」ウインドウを閉じる。これでタスクが作成された筈です。
実際にスリープ・休止状態へ移行して様子を確かめてみてください。
※参考にさせて頂いたページ
休止・スリープ復帰時にUSB機器をリセットするバッチ: ぬるま湯な日々
[UAC] 特定のプログラムの「不明な発行元からの…」だけをなくすには? – 教えて!goo
Chishow PRESENTS: iPod touch の時間がずれる
神記事感謝!!USBディスプレイの休止状態復帰時にUSB抜き差ししなきゃいけないのに非常に困っていたのが解決しました。
通りすがりのものですが非常に参考になり助かりました。ありがとうございます。これからも参考になる記事を期待しています。がんばってください。
>>とおりすがり さん
はじめまして。コメントありがとうございます。
他のいくつかのブログやウェブサイトを参考に、Windows7向けにまとめてみた記事ですが、お役に立てたようでよかったです。
スピーカーならまだしも、復帰時にディスプレイが点かないというのはツラいですね。解決できたようで良かったです。
大学生の日記ブログなので、有益な記事ばかりではありませんが、良かったらまたお越しください。
役立つプログラムでも英語表記だと使いこなせませんが、こちらの記事で
解決する事が出来ました。
●devcon はリンク先よりダウンロードし
●PC Wizard は窓の森より最新版をダウンロードしました。
(不要なプログラムを外してセットアップしました)
ありがとうございました。
参考にさせて頂きました。それにしても何故この問題に対してMicrosoftは「把握していません」みたいなスタンスなんでしょうか。極限られた条件でのみ発生する問題なんでしょうか。