troushoo

新たなデバイスの接続を調査:setupapi.dev.log

新たなデバイスが接続されたことの調査に使える setupAPI.dev.log を紹介します。デバイスが接続されていた事実の調査に利用可能です。

手順
0. 一例として、VMware 環境の Shared Windows Hello for Business 9 を有効にしてみます。


1. 「%systemdrive%\Windows\inf\setupapi.dev.log」を開きます。


2. 以下のようなログが記録されています。注目点は色付きの部分です。

>>>  [Device Install (Hardware initiated) - USB\VID_0E0F&PID_0004\7&1e3a8971&0&1]
>>>  Section start 2018/09/17 23:04:29.978
      dvi: {Build Driver List} 23:04:30.000
      dvi:      Searching for hardware ID(s):
      dvi:           usb\vid_0e0f&pid_0004&rev_0100
      dvi:           usb\vid_0e0f&pid_0004
      dvi:      Searching for compatible ID(s):
      dvi:           usb\class_0b&subclass_00&prot_00
      dvi:           usb\class_0b&subclass_00
      dvi:           usb\class_0b
      dvi:      Created Driver Node:
      dvi:           HardwareID   - USB\Class_0B&SubClass_00&Prot_00
      dvi:           InfName      - C:\WINDOWS\System32\DriverStore\FileRepository\wudfusbcciddriver.inf_amd64_27dacfdbb1da5960\wudfusbcciddriver.inf
      dvi:           DevDesc      - Microsoft Usbccid Smartcard Reader (WUDF)
      dvi:           Section      - Usbccid_Install.NT
      dvi:           Rank         - 0x00ff2000
      dvi:           Signer Score - INBOX
      dvi:           DrvDate      - 06/21/2006
      dvi:           Version      - 10.0.17134.1
      dvi:      Created Driver Node:
      dvi:           HardwareID   - USB\Class_0B&SubClass_00&Prot_00
      dvi:           InfName      - C:\WINDOWS\System32\DriverStore\FileRepository\usbcciddriver.inf_amd64_78abb7741a40cab2\usbcciddriver.inf
      dvi:           DevDesc      - Microsoft Usbccid Smartcard Reader (UMDF2)
      dvi:           Section      - Usbccid_Install.NT
      dvi:           Rank         - 0x00ff2000
      dvi:           Signer Score - INBOX
      dvi:           DrvDate      - 06/21/2006
      dvi:           Version      - 10.0.17134.1
      dvi: {Build Driver List - exit(0x00000000)} 23:04:30.079
      dvi: {DIF_SELECTBESTCOMPATDRV} 23:04:30.080
      dvi:      Default installer: Enter 23:04:30.081
      dvi:           {Select Best Driver}
      dvi:                Class GUID of device changed to: {50dd5230-ba8a-11d1-bf5d-0000f805f530}.
      dvi:                Selected Driver:
      dvi:                     Description - Microsoft Usbccid Smartcard Reader (WUDF)
      dvi:                     InfFile     - c:\windows\system32\driverstore\filerepository\wudfusbcciddriver.inf_amd64_27dacfdbb1da5960\wudfusbcciddriver.inf
      dvi:                     Section     - Usbccid_Install
      dvi:           {Select Best Driver - exit(0x00000000)}
      dvi:      Default installer: Exit
      dvi: {DIF_SELECTBESTCOMPATDRV - exit(0x00000000)} 23:04:30.092
      dvi: {Core Device Install} 23:04:30.093
      dvi:      {Install Device - USB\VID_0E0F&PID_0004\7&1E3A8971&0&1} 23:04:30.096
      dvi:           Device Status: 0x01806400, Problem: 0x1 (0xc0000493)
      dvi:           Parent device: USB\VID_0E0F&PID_0002\6&30c8ca5f&0&7
      dvi:           {Configure Device - USB\VID_0E0F&PID_0004\7&1E3A8971&0&1} 23:04:30.110
      dvi:                Device Status: 0x01806400, Problem: 0x1 (0xc0000493)
      dvi:                Parent device: USB\VID_0E0F&PID_0002\6&30c8ca5f&0&7
      sto:                {Configure Driver Package: C:\WINDOWS\System32\DriverStore\FileRepository\wudfusbcciddriver.inf_amd64_27dacfdbb1da5960\wudfusbcciddriver.inf}
      sto:                     Source Filter  = usb\class_0b&subclass_00&prot_00
      inf:                     Class GUID     = {50dd5230-ba8a-11d1-bf5d-0000f805f530}
      inf:                     Class Options  = Configurable
      inf:                     {Configure Driver: Microsoft Usbccid Smartcard Reader (WUDF)}
      inf:                          Section Name = Usbccid_Install.NT
      inf:                          {Add Service: WUDFRd}
      inf:                               Start Type    = 3
      inf:                               Service Type  = 1
      inf:                               Error Control = 1
      inf:                               Image Path    = \SystemRoot\System32\drivers\WUDFRd.sys
      inf:                               Leaving existing load order group (base).
      inf:                               Leaving existing display name (Windows Driver Foundation - User-mode Driver Framework Reflector).
      inf:                               Updated service 'WUDFRd'.
      inf:                          {Add Service: exit(0x00000000)}
      inf:                          {Add Service: WinUsb}
      inf:                               Start Type    = 3
      inf:                               Service Type  = 1
      inf:                               Error Control = 1
      inf:                               Image Path    = \SystemRoot\System32\drivers\WinUSB.sys
      inf:                               Display Name  = WinUSB Driver
      inf:                               Group         = Base
      inf:                               Updated service 'WinUsb'.
      inf:                          {Add Service: exit(0x00000000)}
      inf:                          Hardware Id  = USB\Class_0B&SubClass_00&Prot_00
      inf:                          Compatible Id = USB\Class_0B&SubClass_00&Prot_01
      inf:                          Compatible Id = USB\Class_0B&SubClass_00&Prot_02
      inf:                          Compatible Id = USB\Class_0B&SubClass_00
      inf:                          Compatible Id = USB\Class_0B
      inf:                          {Configure Driver Configuration: Usbccid_Install.NT}
      inf:                               Service Name  = WUDFRd
      inf:                               Lower Filters = WinUsb
      inf:                               Included INFs = WINUSB.INF
      inf:                               Config Flags  = 0x00000000
      inf:                          {Configure Driver Configuration: exit(0x00000000)}
      inf:                     {Configure Driver: exit(0x00000000)}
      flq:                     Hardlinking 'C:\WINDOWS\System32\DriverStore\FileRepository\wudfusbcciddriver.inf_amd64_27dacfdbb1da5960\WUDFUsbccidDriver.dll' to 'C:\WINDOWS\System32\drivers\UMDF\WUDFUsbccidDriver.dll'.
      flq:                     Hardlinking 'C:\WINDOWS\System32\DriverStore\FileRepository\winusb.inf_amd64_144aebaa418437c6\winusb.sys' to 'C:\WINDOWS\System32\drivers\winusb.sys'.
      cpy:                     Existing file 'C:\WINDOWS\System32\drivers\winusb.sys' remains unchanged.
      dvi:                     Existing files modified, may need to restart related services.
      sto:                {Configure Driver Package: exit(0x00000bc3)}
      dvi:                Restart required for any devices using this driver.
      dvi:                Install Device: Configuring device (wudfusbcciddriver.inf:usb\class_0b&subclass_00&prot_00,Usbccid_Install.NT). 23:04:30.232
      dvi:                Install Device: Configuring device completed. 23:04:30.237
      dvi:                Device Status: 0x01806000, Problem: 0x0 (0x00000000)
      dvi:                {Restarting Devices} 23:04:30.242
      dvi:                     Start: USB\VID_0E0F&PID_0004\7&1E3A8971&0&1
      dvi:                {Restarting Devices exit} 23:04:30.426
      dvi:           {Configure Device - exit(0x00000000)} 23:04:30.427
      dvi:      {Install Device - exit(0x00000000)} 23:04:30.434
      dvi: {Core Device Install - exit(0x00000000)} 23:04:30.436
<<<  Section end 2018/09/17 23:04:30.441
<<<  [Exit status: SUCCESS]


今回の例では、デバイスインスタンス ID が「USB\VID_0E0F&PID_0004\7&1e3a8971&0&1」であるデバイスが 2018/09/17 23:04:29.978 に接続されたことがわかります。

デバイスインスタンス ID は、デバイス ID (= VID_0E0F&PID_0004) とインスタンス ID (= 7&1e3a8971&0&1) からなるものです。

デバイス ID (= VID_0E0F&PID_0004) は、デバイスが一つ持つ ID で、デバイスの特定につかえます。VID は Vendor を意味し、PID は Product ID を意味します。Linux UDB Project のサイトを確認すると VID0E0F は VMware を、PID0004 は Virtual CCID (Chip Card Interface Device) を意味します。したがって、VMware の Virtual CCID が接続されたことがわかります。


インスタンス ID (= 7&1e3a8971&0&1) は、同じタイプのデバイスを識別するための ID で、デバイスのシリアル番号の情報か、デバイスの接続場所の情報から作成されます。


参考情報元
Determining what device installation required a reboot (英語)
  1. 2018/09/17(月) 23:25:06|
  2. ツール
  3. | トラックバック:0
  4. | コメント:0
<<Fernflower: IntelliJ Community project 内の Java のデコンパイラ | ホーム | Java アプリのヒープダンプの状態を比較>>

コメント

コメントの投稿


管理者にだけ表示を許可する

トラックバック

トラックバック URL
http://troushoo.blog.fc2.com/tb.php/371-d8fe2ea0
この記事にトラックバックする(FC2ブログユーザー)

スポンサーリンク

最新記事

月別アーカイブ

カテゴリ

ツール (78)
ネットワーク (37)
Wireshark (43)
Visual Studio (55)
WinDbg (33)
SOS・Psscor2/Psscor4 (25)
Linux (19)
コンテナ (4)
Azure (17)
Tips (19)
AD (6)
.NET (24)
Python (5)
Java (5)
英語 (1)
About Me (1)
未分類 (0)

全記事表示リンク

全ての記事を表示する

検索フォーム

RSSリンクの表示

リンク

このブログをリンクに追加する