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.