WMI win32_physicalmedia код сбой в Windows 8.1
Здравствуйте, я использую Visual C++ 2010.
Я пытаюсь извлечь информацию об оборудовании с помощью wmi, и все работает нормально, но когда я тестировал приложение в Windows 8.1, приложение вылетает, и оно оказалось из кода win32_physicalmedia.
Вот код:
pSvc->ExecQuery(
bstr_t("WQL"),
bstr_t("SELECT SerialNumber FROM Win32_PhysicalMedia"),
WBEM_FLAG_FORWARD_ONLY | WBEM_FLAG_RETURN_IMMEDIATELY,
NULL,
&pEnumerator);
IWbemClassObject *pclsObjjj;
ULONG uReturnnn = 0;
while (pEnumerator)
{
HRESULT hr = pEnumerator->Next(WBEM_INFINITE, 1,
&pclsObjjj, &uReturnnn);
if(0 == uReturnnn)
{
break;
}
VARIANT vtProp;
Он отлично работает на Windows XP и 7, но на Windows 8.1, когда он достигает, чтобы получить этот, он падает и дает не отправлять.
Любой совет?
1 ответ
Решение
Ладно, ребята, я думаю, я понял. Это потому, что я не добавил "return 0;" в конце!!!!!
На Windows XP и 7 он работает нормально, но если он работает на Windows 8, он падает.
Это странно, я не знаю почему, но проблема все равно решена xD