ホーム
製品リスト
ダウンロード
オンラインショップ
お問い合わせ
会社概要
ブログ
検索
ダウンロード
ショップ
お問い合わせ
会社概要
ブログ
Toggle navigation
Jungo
製品ホーム
製品
WinDriver 製品一覧
WinDriver PCI
WinDriver USB
WinDriver for Servers
Windows ドライバーのデジタル署名サービス
WHQL (HLK) プレテスト代行サービス
ダウンロード
WinDriver PCI
WinDriver USB
価格
技術情報
テクニカル情報
マニュアル ダウンロード
テクニカル ドキュメント
FAQ
リリースノート
ブログ
お問い合わせ
テクニカル ドキュメント #53
Doc ID:
53
製品:
WinDriver
Version:
5.04 - 5.22
WinDriver (v5.04 - 5.22) を使用して USB デバイスをどのようにリセットしますか?
WinDriver には、USB デバイスをリセットする API があります: WD_UsbResetDevice() および WD_UsbResetDeviceEx() (WinDriver v5.04 で追加)。既存の設定を保存しながら、これらの関数を使用して、ハブ ドライバでデバイスを再初期化します。
WD_UsbResetDeviceEx()
関数 (v5.04 で追加) で、ソフト リセット (以前のバージョンで使用していた、WD_UsbResetDevice() 関数で実行したリセットと似ています) とハード リセットを識別できます。
WD_UsbResetDeviceEx() 関数を使用した、ソフト リセットとハード リセットの違いは、次のとおりです:
ソフト リセット
: デバイスが無効状態になった時のみ、リセット要求を発行します (Microsoft のドライバによって実行時)。
ハード リセット
: デバイスが無効または有効な状態に関わらず、常にリセット要求を発行します。
ハード リセット
オプションを使用するには、WD_UsbResetDeviceEx() へ渡される WD_USB_RESET_DEVICE 構造体の dwOptions フィールドに WD_USB_HARD_RESET フラグを設定します。デフォルトでは、dwOptions フィールドに 0 に設定すると、関数は
ソフト リセット
を実行します - i.e. 例、現在、デバイスが無効な場合のみ、リセット要求を発行します。
次の例に従って、WD_UsbResetEx() 関数を使用して、
ハード リセット
を実行します:
WD_USB_RESET_DEVICE reset;
BZERO(resest);
reset.hDevice = hDevice; //The handle received from
// WD_UsbDeviceRegister()
reset.dwOptions = WD_USB_HARD_RESET;
WD_UsbResetDeviceEx(hWD, &reset);
注意:
ハード リセットを実行する際にシステム クラッシュを防ぐには、次の内容を実行することを推奨します: WD_UsbResetDeviceEx() を呼出し後、すぐに、デバイスを登録解除し (WD_UsbDeviceUnregister() 関数を呼んで)、スキャンを行い (WD_UsbScanDevice() 関数を呼んで)、再び登録します (WD_UsbDeviceRegister() 関数を呼んで)。これで、Windows がデバイスのすべてのリソースを割り当て、後に起こる可能性のある競合を防ぎます。
このサイトでは、サイトや広告を改善するために Cookie を使用します。サイトを利用することで、Cookie の使用に同意するものといたします。詳細は
プライバシーについて
をご覧ください。
同意する