WIDからdeviceIDを取得できますが、そのdeviceIDを使用して気象デバイスが有効になっていることを確認します\無効な状態であり、ステータスがOKかどうかは基本的にWQLこのUSBデバイス固有のDeviceIDを使用して、そのデバイスに後で照会します。ここで私が使用してWQLを使用してDeviceIDでUSBデバイスを照会
import wmi
devid = "USB\VID_04F2&PID_B315\6&EF94D1A&0&6"
c = wmi.WMI()
q2 = "SELECT * FROM Win32_PnPEntity WHERE DeviceID = " + devid + " "
dev = c.query(q2)
で例外が発生しましたコード例はある私は、私は次のエラーを取得するこのコードを実行すると:
Traceback (most recent call last):
File "", line 1, in
File "C:\Python27\lib\site-packages\wmi.py", line 1009, in query
return [ _wmi_object (obj, instance_of, fields) for obj in self._raw_query(wql) ]
File "C:\Python27\lib\site-packages\win32com\client\util.py", line 84, in next return _get_good_object_(self.iter.next(), resultCLSID = self.resultCLSID)
pywintypes.com_error: (-2147217385, 'OLE error 0x80041017', None, None)
あなたは私与える可能性があり、おそらく私のWQLクエリは、どういうわけか間違っていますクエリを構成する正しい方法の例?
文字列を '\'から '\\'に変換する方法はありますか? – user6603026
古いバージョンのPythonを使用している場合、簡単な方法は 'Replace'メソッドですが、本当に' Regex' https://docs.python.org/3/library/re.htmlを学ぶべきです。 Pythonの文字列操作に不可欠です。 ( '.Sub'関数に特に注意してください) – Tim