0

Windows 7 で Chrome の WebUSB を実行して、スマートカード リーダーを開こうとしています。フィルターをオンにせずに navigator.usb.requestDevices() を使用すると、デバイスが表示されることがあります。vendorId と productId をフィルターに含めると、デバイスは Chrome で選択/リストされません。さらに、デバイスを操作しようとすると

    .then(() => device.selectConfiguration(1))
    .then(() => device.claimInterface(0))

アクセスが拒否されました (権限が不十分です)。実際には、デバイスを Chrome に接続して操作するために、 WebUSB ドキュメントに掲載されているものとまったく同じようにフォーマットされたデバイス記述子が各デバイスに本当に必要ですか? また、Zadig を使用してドライバを WinUSB に変更しようとしましたが、何も変わりませんでした。

       ---===>Device Information<===---
English product name: "SCR33xx v2.0 USB SC Reader"

ConnectionStatus:                  
Current Config Value:              0x01  -> Device Bus Speed: Full
Device Address:                    0x03
Open Pipes:                           3

          ===>Device Descriptor<===
bLength:                           0x12
bDescriptorType:                   0x01
bcdUSB:                          0x0200
bDeviceClass:                      0x00  -> This is an Interface Class Defined Device
bDeviceSubClass:                   0x00
bDeviceProtocol:                   0x00
bMaxPacketSize0:                   0x20 = (32) Bytes
idVendor:                        0x04E6 = Identive Group Inc.
idProduct:                       0x5116
bcdDevice:                       0x0304
iManufacturer:                     0x01
     English (United States)  "SCM Microsystems"
iProduct:                          0x02
     English (United States)  "SCR33xx v2.0 USB SC Reader"
iSerialNumber:                     0x00
bNumConfigurations:                0x01

          ---===>Open Pipes<===---

          ===>Endpoint Descriptor<===
bLength:                           0x07
bDescriptorType:                   0x05
bEndpointAddress:                  0x83  -> Direction: IN - EndpointID: 3
bmAttributes:                      0x03  -> Interrupt Transfer Type
wMaxPacketSize:                  0x0008 = 0x08 bytes
bInterval:                         0x10

          ===>Endpoint Descriptor<===
bLength:                           0x07
bDescriptorType:                   0x05
bEndpointAddress:                  0x05  -> Direction: OUT - EndpointID: 5
bmAttributes:                      0x02  -> Bulk Transfer Type
wMaxPacketSize:                  0x0040 = 0x40 bytes
bInterval:                         0x00

          ===>Endpoint Descriptor<===
bLength:                           0x07
bDescriptorType:                   0x05
bEndpointAddress:                  0x84  -> Direction: IN - EndpointID: 4
bmAttributes:                      0x02  -> Bulk Transfer Type
wMaxPacketSize:                  0x0040 = 0x40 bytes
bInterval:                         0x00

       ---===>Full Configuration Descriptor<===---

          ===>Configuration Descriptor<===
bLength:                           0x09
bDescriptorType:                   0x02
wTotalLength:                    0x005D  -> Validated
bNumInterfaces:                    0x01
bConfigurationValue:               0x01
iConfiguration:                    0x03
     English (United States)  "CCID Class"
bmAttributes:                      0xA0  -> Bus Powered
  -> Remote Wakeup
MaxPower:                          0x32 = 100 mA

          ===>Interface Descriptor<===
bLength:                           0x09
bDescriptorType:                   0x04
bInterfaceNumber:                  0x00
bAlternateSetting:                 0x00
bNumEndpoints:                     0x03
bInterfaceClass:                   0x0B  -> This is a Chip/Smart Card USB Device Interface Class
bInterfaceSubClass:                0x00
bInterfaceProtocol:                0x00
iInterface:                        0x04
     English (United States)  "CCID Interface"

          ===>HID Descriptor<===
bLength:                           0x36
bDescriptorType:                   0x21
bcdHID:                          0x0110
bCountryCode:                      0x00
bNumDescriptors:                   0x07
bDescriptorType:                   0x03
wDescriptorLength:               0x0000
bDescriptorType:                   0x00
wDescriptorLength:               0x12C0
bDescriptorType:                   0x00
wDescriptorLength:               0x4000
bDescriptorType:                   0x1F
wDescriptorLength:               0x0000
bDescriptorType:                   0x00
wDescriptorLength:               0x3267
bDescriptorType:                   0x00
wDescriptorLength:               0xE700
bDescriptorType:                   0x4C
wDescriptorLength:               0x0006

          ===>Endpoint Descriptor<===
bLength:                           0x07
bDescriptorType:                   0x05
bEndpointAddress:                  0x83  -> Direction: IN - EndpointID: 3
bmAttributes:                      0x03  -> Interrupt Transfer Type
wMaxPacketSize:                  0x0008 = 0x08 bytes
bInterval:                         0x10

          ===>Endpoint Descriptor<===
bLength:                           0x07
bDescriptorType:                   0x05
bEndpointAddress:                  0x05  -> Direction: OUT - EndpointID: 5
bmAttributes:                      0x02  -> Bulk Transfer Type
wMaxPacketSize:                  0x0040 = 0x40 bytes
bInterval:                         0x00

          ===>Endpoint Descriptor<===
bLength:                           0x07
bDescriptorType:                   0x05
bEndpointAddress:                  0x84  -> Direction: IN - EndpointID: 4
bmAttributes:                      0x02  -> Bulk Transfer Type
wMaxPacketSize:                  0x0040 = 0x40 bytes
bInterval:                         0x00
4

0 に答える 0