#c #windows #winapi #networking #wmi
#c #Windows #winapi #сеть #wmi
Вопрос:
Я использую этот пример WMI: http://msdn.microsoft.com/en-us/library/aa390423(v=vs.85).aspx
Я извлек информацию из класса Win32_NetworkAdapter, такую как имя и MacAddress;
Однако, когда я получаю boolean NetEnabled; вариант vtProp равен NULL?
Любые предложения будут оценены. Спасибо. (Windows XP)
while (pEnumerator)
{
HRESULT hr = pEnumerator->Next(WBEM_INFINITE, 1,
amp;pclsObj, amp;uReturn);
if(0 == uReturn)
{
break;
}
VARIANT vtProp;
// Get the value of the Name property
hr = pclsObj->Get(L"NetEnabled", 0, amp;vtProp, 0, 0); //nothing filled into vtProp?
wcout << " Net Enabled: " << vtProp.boolVal << endl;
Ответ №1:
Из документации, на которую вы ссылались:
NetEnabled
Тип данных: логическое значение
Тип доступа: только для чтения
Указывает, включен адаптер или нет. Если значение True, адаптер включен. Вы можете включить или отключить сетевой адаптер, используя методы Enable и Disable.
Windows Server 2003, Windows XP, Windows 2000 и Windows NT 4.0: это свойство недоступно.
Ответ №2:
NetEnabled
свойство недоступно в Windows xp, попробуйте вместо него использовать NetConnectionStatus
свойство.