« アースソフト PT2 地上・BS/110CSデジタルチューナーまとめ | トップページ | メモ 2009年8月 »

2009.08.11

休止・スリープ復帰時にUSB機器をリセットするバッチ

PCが休止やスリープから復帰したとき
USB機器を見失う場合に自動で再認識
させる方法を備忘録として記載。

更新:
2010/2/8
Windows 7 ではこの方法が使用可能。
休止・スリープ状態復帰時にUSB機器が反応しなくなる問題を解決

2010/1/23
三月兎などで販売されているカードリーダー
「TFTEC SCR001」はWin7 x64で使用すると休止状態から
復帰したときに認識しなくなる不具合がある。

カードリーダー TFTEC SCR001のVIDとPIDは以下。
1:VID=058F PID=9520
2:VID=BC01 PID=CE67
上記「1:」「2:」のどちらかで対応。

2010/1/16
B-CAS赤カードは3種類の接点パターンが
出回っており、このパターンが左右対称のものを
使用するとRW-5100ではリーダー起動ごとに
刺し直しが必要とのこと。

2009/8/11
復帰時にSHARPカードリーダーRW-5100が
安定して再認識出来ているので
記事書き起こし。
-----


●休止・スリープ復帰時に特定のUSB機器をリセットするバッチ
手順:

1:MS純正ツールを用意する。
devcon
→デバイスをリセットするツール。
 ダウンロード後、実行して適当なフォルダへ解凍しておく。
 devconはWindows 7でも動作するとのこと。

2:USB機器を再起動するバッチファイルを用意する。
 ・USBデバイス再起動バッチ
  Device_Off_On.zip
  →バッチ内のVIDとPIDを再認識させたい
   デバイスのものへ書き換えておく。
   デフォルトは
   日立カードリーダーHX-520UJ.J/HX-520UJ.K
    SMARTCARD R/W M-520U-PC/SC
    VID=0858 PID=2102
   で設定してある(Vista SP1での不具合対策用)。
 ・SHARPのカードリーダーRW-5100が
  PC復帰時にロストする現象を回避するための
  専用バッチ。
  上のDevice_Off_On.zipのVID/PIDを
  RW-5100のVID/PIDに合わせただけ。
  RW-5100_Off_On.zip
※初回使用前に、バッチ内の
 DEVCONPATHとVID/PIDを環境に合わせて
 変更しておくこと。

3:休止やスリープからの復帰を監視して
 .exe や .batを起動できるツールを用意
Suspender
Restarter
→どちらか1つをPCに常駐させて
 「スタートアップ」へショートカットを放り込んでおく。

4:「3:」のツールに「2:」の.batファイルを設定する。

以上

※バッチを手直ししたら全USB機器の再起動も
 可能っぽいけど、環境によって不具合が
 出るかもなので自重した(特に外付けHDDとか)。

※手順の「2:」でVID・PIDの調べ方が判らない場合は
 以下のどれかの方法で確認する。
 A:USB機器付属の.infファイルの中身を確認。
 B:PcWizardをインストール。
  左側に出るアイコンのうち IO Ports を選択。
  右側に出るUSBポートの一覧を順番にクリックして
  カードリーダーの名前を探し、
  Product ID行のVIDとDEVの4桁の英数字を控える。
  (DEVはPIDと同じ意味)

※VID/PIDさえ判れば、どのUSB機器でも
 再起動できるはず。

|

« アースソフト PT2 地上・BS/110CSデジタルチューナーまとめ | トップページ | メモ 2009年8月 »

「パソコン・インターネット」カテゴリの記事

「趣味」カテゴリの記事

コメント

コメントを書く



(ウェブ上には掲載しません)


コメントは記事投稿者が公開するまで表示されません。



トラックバック

この記事のトラックバックURL:
http://app.cocolog-nifty.com/t/trackback/35143/45896845

この記事へのトラックバック一覧です: 休止・スリープ復帰時にUSB機器をリセットするバッチ:

« アースソフト PT2 地上・BS/110CSデジタルチューナーまとめ | トップページ | メモ 2009年8月 »