ciao.
ho il seguente blocco di codice:
codice:
HRESULT hres = pSvc->ExecQuery(
bstr_t("WQL").GetBSTR(),
bstr_t("SELECT * FROM Win32_DiskDrive WHERE Win32_DiskDrive.DeviceID='\\\\.\\PHYSICALDRIVE0'").GetBSTR(),
WBEM_FLAG_FORWARD_ONLY | WBEM_FLAG_RETURN_IMMEDIATELY,
NULL,
&pEnumerator);
questo codice esegue un interrogazione WQL(linguaggio tipo sql per il wmi) per trovare il disco che ha un deviceid uguale a :\\\\.\\PHYSICALDRIVE0.
Il problema è che tra bstr _bstr_t ecc.. mi sa che sbaglio qualcosa negli apici o altro.
se eseguo questa interrogazione wml
codice:
HRESULT hres = pSvc->ExecQuery(
bstr_t("WQL").GetBSTR(),
bstr_t("SELECT deviceid FROM Win32_DiskDrive").GetBSTR(),
WBEM_FLAG_FORWARD_ONLY | WBEM_FLAG_RETURN_IMMEDIATELY,
NULL,
&pEnumerator);
ottengo
\\\\.\\PHYSICALDRIVE0
e
\\\\.\\PHYSICALDRIVE1
ma quando eseguo la prima interrogazione non trovo niente (n resultati = 0).
cosa sbaglio secondo voi?
grazie.