Domanda

Sto lavorando sullo sviluppo di una query WMI per la mia applicazione. Ha bisogno di trovare la porta COM virtuale assegnata per un dato VID / PID. La mia domanda attualmente appare così:

"SELECT DeviceID FROM Win32_SerialPort WHERE PNPDeviceID = \"USB\\VID_10C4&PID_EA60\\0001\""

Sulla base della mia ricerca, deve restituire "COM8". Tuttavia, sto diventando un insieme vuoto.

Sono confronti di stringhe valido WQL? Se non ricordo male, SQL permette loro, ma essendo un sottoinsieme, non sono sicuro se il supporto per loro è stato riportato.

Se necessario, suppongo posso interrogare "SELECT DeviceID,PNPDeviceID FROM Win32_SerialPort" e poi nel codice parse attraverso i risultati utilizzando stringa confronta, ma preferirei per limitare i risultati della query, se possibile.

Inoltre, mi chiedevo, se la stringa confronta sono infatti supportati in WQL, essi sono tra maiuscole e minuscole, e / o c'è un modo per specificare caso?

Grazie.

È stato utile?

Soluzione

Ho usato questo (C #):

"Select * From Win32_SerialPort Where PnPDeviceId = \"PCI\\\\VEN_14F1&DEV_2F30&SUBSYS_205D14F1&REV_01\\\\4&1F7DBC9F&0&10F0\""

avevo bisogno di sfuggire alle backslash una volta per amore di WMI e ancora una volta per C # 's bene, così ho finito con backslash quadruple nella query.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top