Класс Win32_NetworkAdapter возвращает NULL для логического NetEnabled; - PullRequest
0 голосов
/ 10 мая 2011

Я использую этот пример WMI: http://msdn.microsoft.com/en-us/library/aa390423%28v=vs.85%29.aspx

Я получил информацию из Win32_NetworkAdapter Class , такую ​​как Name и MACAddress;

Однако, когда я получаю логическое значение NetEnabled; ВАРИАНТ vtProp НЕДЕЙСТВИТЕЛЕН?

Любые предложения будут оценены. Благодарю. (Windows XP)

while (pEnumerator)                     
{
    HRESULT hr = pEnumerator->Next(WBEM_INFINITE, 1, 
        &pclsObj, &uReturn);

    if(0 == uReturn)
    {
        break;
    }

    VARIANT vtProp;

    // Get the value of the Name property
    hr = pclsObj->Get(L"NetEnabled", 0, &vtProp, 0, 0); //nothing filled into vtProp?
    wcout << " Net Enabled: " << vtProp.boolVal << endl;

Ответы [ 2 ]

1 голос
/ 10 мая 2011

свойство NetEnabled недоступно в Windows XP, попробуйте вместо этого использовать свойство NetConnectionStatus.

1 голос
/ 10 мая 2011

Из документации, на которую вы ссылались:

NetEnabled

Тип данных: логическое значение

Тип доступа: только для чтения

Указывает, включен адаптер или нет. Если True, адаптер включен. Вы можете включить или отключить NIC, используя методы Enable и Disable.

Windows Server 2003, Windows XP, Windows 2000 и Windows NT 4.0: это свойство недоступно.

...