Win32_USBController

Win32_USBControllerクラスは、USBデバイスの列挙に使うクラスの一種。

Win32_USBController class - Win32 apps | Microsoft Docs

こちらは、USBコントローラらしい。
Win32_USBController.cppで、

こうした。
USBポータブルHDDを挿してない場合、

CoCreateInstance OK!
pLocator = 0x005726f0
pLocator->ConnectServer OK!
pServices = 0x005832a8
CoSetProxyBlanket OK!
pServices->ExecQuery OK!
pEnumerator = 0x005776d0
pEnumerator->Next OK!
pClassObject = 0x0058cbc8
pClassObject->Get OK!
Name: Intel(R) USB 3.0 eXtensible Host Controller - 1.0 (Microsoft)
pClassObject->Get OK!
Caption: Intel(R) USB 3.0 eXtensible Host Controller - 1.0 (Microsoft)

こうなる。
ひとつ前のモデルは、

CoCreateInstance OK!
pLocator = 0x004917c0
pLocator->ConnectServer OK!
pServices = 0x0049cc38
CoSetProxyBlanket OK!
pServices->ExecQuery OK!
pEnumerator = 0x004954d0
pEnumerator->Next OK!
pClassObject = 0x004acda0
pClassObject->Get OK!
Name: Intel(R) USB 3.0 eXtensible Host Controller - 1.0 (Microsoft)
pClassObject->Get OK!
Caption: Intel(R) USB 3.0 eXtensible Host Controller - 1.0 (Microsoft)

こうなる。
最新モデルは、

CoCreateInstance OK!
pLocator = 0x00691630
pLocator->ConnectServer OK!
pServices = 0x006a6a28
CoSetProxyBlanket OK!
pServices->ExecQuery OK!
pEnumerator = 0x00694c90
pEnumerator->Next OK!
pClassObject = 0x006b0f70
pClassObject->Get OK!
Name: Intel(R) USB 3.0 eXtensible Host Controller - 1.0 (Microsoft)
pClassObject->Get OK!
Caption: Intel(R) USB 3.0 eXtensible Host Controller - 1.0 (Microsoft)

こうなる。
違うタイプは、

CoCreateInstance OK!
pLocator = 0x007324f0
pLocator->ConnectServer OK!
pServices = 0x00741cb8
CoSetProxyBlanket OK!
pServices->ExecQuery OK!
pEnumerator = 0x00735fd0
pEnumerator->Next OK!
pClassObject = 0x00749770
pClassObject->Get OK!
Name: Intel(R) USB 3.0 eXtensible Host Controller - 1.0 (Microsoft)
pClassObject->Get OK!
Caption: Intel(R) USB 3.0 eXtensible Host Controller - 1.0 (Microsoft)

こうなる。
どれも変わらない。
(USBコントローラってPC側のUSBの口を示してるから、そりゃ変わらないか・・・。)

Sample/wmi/Win32_USBController/Win32_USBController/src/Win32_USBController at master · bg1bgst333/Sample · GitHub