Я работаю над разработкой запроса WMI для своего приложения. Он должен найти назначенный виртуальный COM-порт для заданного VID/PID. Мой запрос в настоящее время выглядит следующим образом:Использование WQL для ограничения результатов в строчном совпадении
"SELECT DeviceID FROM Win32_SerialPort WHERE PNPDeviceID = \"USB\\VID_10C4&PID_EA60\\0001\""
На основании своих исследований, он должен вернуть "COM8"
. Тем не менее, я получаю пустой набор.
Являются ли сравнения строк действительными в WQL? Насколько я помню, SQL позволяет им, но будучи подмножеством, я не уверен, что поддержка их была перенесена.
При необходимости я могу запросить "SELECT DeviceID,PNPDeviceID FROM Win32_SerialPort"
, а затем в синтаксическом анализе кода с помощью сравнения строк, но я предпочел бы ограничить результаты запроса, если это возможно.
Кроме того, мне было интересно, если строки сравнения действительно поддерживаются в WQL, они чувствительны к регистру и/или есть способ указать регистр?
Спасибо.
@ Garett: Этот вопрос касается только WMI и WQL. Тот же запрос можно легко реализовать на C#, C++ или на любом другом языке, который может обращаться к WMI. –