Win32_NetworkAdapter类为boolean NetEnabled返回NULL;

时间:2011-05-10 01:23:58

标签: c++ windows winapi networking wmi

我正在使用WMI的这个示例:http://msdn.microsoft.com/en-us/library/aa390423%28v=vs.85%29.aspx

我检索了来自Win32_NetworkAdapter Class的信息,如名称和MAC地址;

然而,当我得到boolean NetEnabled; vtProp VARIANT是NULL?

任何建议将不胜感激。谢谢。 (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 个答案:

答案 0 :(得分:1)

从您链接到的文档:

  

NetEnabled

     

数据类型:布尔值

     

访问类型:只读

     

指示适配器是否已启用。如果为True,则启用适配器。您可以使用启用和禁用方法启用或禁用NIC。

     

Windows Server 2003,Windows XP,Windows 2000和Windows NT 4.0:此属性不可用。

答案 1 :(得分:1)

在Windows XP中NetEnabled属性不可用,请尝试使用NetConnectionStatus属性。