Apa sintaks WMI / WQL Query untuk menghubungkan semua perangkat ke USB Hub tertentu?
Saya dapat membuka terminal PS dan menghitung semua Perangkat Hub USB, seperti:
gwmi Win32_UsbHub | fl *
Output akan mengembalikan daftar semua perangkat USB Hub pada sistem. Berikut adalah contoh dari salah satu perangkat tersebut.
Device ID: USB\VID_0451&PID_DD01\6&16FAF918&1&2, PNP Device ID: USB\VID_0451&PID_DD01\6&16FAF918&1&2, Description: Generic SuperSpeed USB Hub
Availability
Caption=Generic SuperSpeed USB Hub
ClassCode
ConfigManagerErrorCode=0
ConfigManagerUserConfig=False
CreationClassName=Win32_USBHub
CurrentAlternateSettings
CurrentConfigValue
Description=Generic SuperSpeed USB Hub
DeviceID=USB\VID_0451&PID_DD01\6&16FAF918&1&2
ErrorCleared
ErrorDescription
GangSwitched
InstallDate
LastErrorCode
Name=Generic SuperSpeed USB Hub
NumberOfConfigs
NumberOfPorts
PNPDeviceID=USB\VID_0451&PID_DD01\6&16FAF918&1&2
PowerManagementCapabilities
PowerManagementSupported
ProtocolCode
Status=OK
StatusInfo
SubclassCode
SystemCreationClassName=Win32_ComputerSystem
SystemName=JMR-ENG-SARAH
USBVersion
Menggunakan katakanlah PNPDeviceID
untuk hub ini, saya ingin mendapatkan semua perangkat yang terhubung, jika ada untuk itu.
Saya benar-benar hijau dengan PS dan WMI, tetapi saya berpikir untuk menggunakan ASSOCIATES OF
sebagai berikut:
Get-WmiObject Win32_PnPEntity | select "ASSOCIATORS OF {Win32_UsbHub.DeviceID='USB\VID_0451&PID_DD01\6&16FAF918&1&2'}"
Anehnya, pencacahan tidak mencantumkan orang tua dan anak-anak, meskipun Pengelola Perangkat mencantumkan hal-hal dengan baik dan memiliki Orang Tua.
Mungkin seperti yang saya ucapkan. Banyak cara lain membuat kesalahan, jadi saya melakukan penelitian dan melihat sintaks ini. Saya awalnya berpikir untuk menggunakan gwmi
perintah. Bagaimanapun, saya tahu Device Manager
bahwa ada perangkat yang terhubung, tetapi perintah di atas menghasilkan layar kosong.
WMI Explorer
tidak banyak membantu.
Apa yang akan menjadi SELECT
pernyataan untuk digunakan?
sumber