次の方法で共有


USB デバイス のレジストリ エントリ

この記事では、USB デバイス固有のレジストリ エントリについて説明します。

Important

この記事は、プログラマー向けです。 お客様に USB の問題が発生している場合は、「Windows で USB-C の問題を解決する」を参照してください。

USB ドライバー スタックの動作を構成するためのレジストリ設定

この記事で説明されているレジストリ エントリは、次のキーの下にあります。

HKEY_LOCAL_MACHINE
   SYSTEM
      CurrentControlSet
         Control
            usbflags
               <vvvvpppprrrr>
                  <Device-specific registry entry>

In the vvvvpppprrrr key,

  • vvvv is a 4-digit hexadecimal number that identifies the vendor
  • pppp is a 4-digit hexadecimal number that identifies the product
  • rrrr is a 4-digit hexadecimal number that contains the revision number of the device

ベンダー ID、製品 ID、リビジョン番号の値は、 USB デバイス記述子から取得されます。 The USB_DEVICE_DESCRIPTOR structure describes a device descriptor.

The following table describes the possible registry entries for the vvvvpppprrrr key. USB ドライバー スタックでは、これらのエントリが読み取り専用の値と見なされます。

Registry entry Description Possible values
osvc

REG_BINARY
オペレーティング システムが Microsoft が定義した USB 記述子のデバイスに対してクエリを実行したかどうかを示します。 以前に試行した OS 記述子クエリが成功した場合、値には OS 文字列記述子のベンダー コードが含まれます。
  • 0x0000: デバイスが Microsoft OS 文字列記述子要求に対して有効な応答を提供しませんでした。
  • 0x01xx: The device provided a valid response to the Microsoft OS string descriptor request, where xx is the bVendorCode contained in the response.
IgnoreHWSerNum

REG_BINARY
USB ドライバー スタックがデバイスのシリアル番号を無視する必要があるかどうかを示します。
  • 0x00: この設定は無効になっています。
  • 0x01: デバイスのシリアル番号を無視するように USB ドライバー スタックを強制します。 そのため、デバイス インスタンスは、デバイスが接続されているポートに関連付けられます。
ResetOnResume

REG_BINARY
ポートがスリープ サイクルから再開するときに、USB ドライバー スタックがデバイスをリセットする必要があるかどうかを示します。
  • 0x0000: この設定は無効になっています。
  • 0x0001: USB ドライバー スタックがポートの再開時にデバイスをリセットするように強制します。

Windows で列挙した後のデバイス情報の検索

View the device interface GUID, Hardware ID, and device class information about your device

  1. 関心のあるデバイス インターフェイスを公開するデバイスを見つけて、インスタンス ID を書き留めます。 たとえば、デバイス インターフェイスがクラス {A5DCBF10-6530-11D2-901F-00C04FB951ED} に属している場合は、次のコマンドを使用して適切なデバイス インターフェイスとデバイスを見つけることができます。

    >pnputil /enum-interfaces /class {A5DCBF10-6530-11D2-901F-00C04FB951ED} /instanceid
    
    Microsoft PnP Utility
    
    Interface Path:         \\?\USB#VID_045E&PID_0840#0C33CG9212501N0#{a5dcbf10-6530-11d2-901f-00c04fb951ed}
    Interface Description:  Unknown
    Interface Class GUID:   {a5dcbf10-6530-11d2-901f-00c04fb951ed}
    Device Instance ID:     USB\VID_045E&PID_0840\0C33CG9212501N0
    Interface Status:       Enabled
    
    Interface Path:         \\?\USB#VID_045E&PID_07A5#5&109d12e&0&1#{a5dcbf10-6530-11d2-901f-00c04fb951ed}
    Interface Description:  Unknown
    Interface Class GUID:   {a5dcbf10-6530-11d2-901f-00c04fb951ed}
    Device Instance ID:     USB\VID_045E&PID_07A5\5&109d12e&0&1
    Interface Status:       Enabled
    
  2. デバイスの互換性のある ID の一覧を取得し、デバイス クラス、サブクラス、およびプロトコル コードをメモします。

    >pnputil /enum-devices /instanceid "USB\VID_045E&PID_0840\0C33CG9212501N0" /ids
    
    Microsoft PnP Utility
    
    Instance ID:                USB\VID_045E&PID_0840\0C33CG9212501N0
    Device Description:         USB Composite Device
    Class Name:                 USB
    Class GUID:                 {36fc9e60-c465-11cf-8056-444553540000}
    Manufacturer Name:          (Standard USB Host Controller)
    Status:                     Started
    Driver Name:                usb.inf
    Hardware IDs:               USB\VID_045E&PID_0840&REV_0215
                                USB\VID_045E&PID_0840
    Compatible IDs:             USB\COMPAT_VID_045E&DevClass_00&SubClass_00&Prot00
                                USB\COMPAT_VID_045E&DevClass_00&SubClass_00
                                USB\COMPAT_VID_045E&DevClass_00
                                USB\DevClass_00&SubClass_00&Prot_00
                                USB\DevClass_00&SubClass_00
                                USB\DevClass_00
                                USB\COMPOSITE