Blog : Win32_NetworkAdapter class

Win32_NetworkAdapter class

Windows Desktop App Development
 Windows Development Reference
 System Administration
 Windows Management Instrumentation
 WMI Reference
 WMI Classes
 Win32 Classes
 Win32_NetworkAdapter
 Win32_NetworkAdapter Methods
  30 out of 45 rated this helpful - Rate this topic
The Win32_NetworkAdapter class is deprecated. Use the MSFT_NetAdapter class instead. The Win32_NetworkAdapter WMI class represents a network adapter of a computer running a Windows operating system.

Win32_NetworkAdapter only supplies IPv4 data. For more information, see IPv6 and IPv4 Support in WMI.

The following syntax is simplified from Managed Object Format (MOF) code and includes all of the inherited properties. Properties are listed in alphabetic order, not MOF order.

Syntax
Copy class Win32_NetworkAdapter : CIM_NetworkAdapter
{
  string  AdapterType;
  uint16  AdapterTypeID;
  boolean  AutoSense;
  uint16  Availability;
  string  Caption;
  uint32  ConfigManagerErrorCode;
  boolean  ConfigManagerUserConfig;
  string  CreationClassName;
  string  Description;
  string  DeviceID;
  boolean  ErrorCleared;
  string  ErrorDescription;
  string  GUID;
  uint32  Index;
  datetime InstallDate;
  boolean  Installed;
  uint32  InterfaceIndex;
  uint32  LastErrorCode;
  string  MACAddress;
  string  Manufacturer;
  uint32  MaxNumberControlled;
  uint64  MaxSpeed;
  string  Name;
  string  NetConnectionID;
  uint16  NetConnectionStatus;
  boolean  NetEnabled;
  string  NetworkAddresses[];
  string  PermanentAddress;
  boolean  PhysicalAdapter;
  string  PNPDeviceID;
  uint16  PowerManagementCapabilities[];
  boolean  PowerManagementSupported;
  string  ProductName;
  string  ServiceName;
  uint64  Speed;
  string  Status;
  uint16  StatusInfo;
  string  SystemCreationClassName;
  string  SystemName;
  datetime TimeOfLastReset;
};
Members
The Win32_NetworkAdapter class has these types of members:

•Methods
•Properties
Methods
The Win32_NetworkAdapter class has these methods.

Method Description
Disable  Disables the network adapter.
 
Enable  Enables the network adapter.
 
Reset Not implemented. For more information about how to implement this method, see the Reset method in CIM_NetworkAdapter.
 
SetPowerState Not implemented. For more information about how to implement this method, see the SetPowerState method in CIM_NetworkAdapter.
 

 

Properties
The Win32_NetworkAdapter class has these properties.

AdapterType
Data type: string
Access type: Read-only

Network medium in use.

Windows NT:  This property may not be applicable to all types of network adapters listed within this class.
The network adapters are as follows:

"Ethernet 802.3"
"Token Ring 802.5"
"Fiber Distributed Data Interface (FDDI)"
"Wide Area Network (WAN)"
"LocalTalk"
"Ethernet using DIX header format"
"ARCNET"
"ARCNET (878.2)"
"ATM"
"Wireless"
"Infrared Wireless"
"Bpc"
"CoWan"
"1394"
AdapterTypeID
Data type: uint16
Access type: Read-only

Network medium in use. Returns the same information as the AdapterType property, except that the information is in the form of an integer.

Windows 2000 and Windows NT 4.0:  This property is not applicable.
Value Meaning
0 (0x0) Ethernet 802.3
 
1 (0x1) Token Ring 802.5
 
2 (0x2) Fiber Distributed Data Interface (FDDI)
 
3 (0x3) Wide Area Network (WAN)
 
4 (0x4) LocalTalk
 
5 (0x5) Ethernet using DIX header format
 
6 (0x6) ARCNET
 
7 (0x7) ARCNET (878.2)
 
8 (0x8) ATM
 
9 (0x9) Wireless
 
10 (0xA) Infrared Wireless
 
11 (0xB) Bpc
 
12 (0xC) CoWan
 
13 (0xD) 1394
 

 

AutoSense
Data type: boolean
Access type: Read-only

If True, the network adapter can automatically determine the speed of the attached or network media. This property is inherited from CIM_NetworkAdapter.

This property has not been implemented yet. It returns a NULL value by default.

Availability
Data type: uint16
Access type: Read-only

Availability and status of the device. Inherited from CIM_LogicalDevice.

Value Meaning
1 (0x1) Other
 
2 (0x2) Unknown
 
3 (0x3) Running or Full Power
 
4 (0x4) Warning
 
5 (0x5) In Test
 
6 (0x6) Not Applicable
 
7 (0x7) Power Off
 
8 (0x8) Off Line
 
9 (0x9) Off Duty
 
10 (0xA) Degraded
 
11 (0xB) Not Installed
 
12 (0xC) Install Error
 
13 (0xD) Power Save - Unknown

The device is known to be in a power save state, but its exact status is unknown.
 
14 (0xE) Power Save - Low Power Mode

The device is in a power save state, but still functioning, and may exhibit degraded performance.
 
15 (0xF) Power Save - Standby

The device is not functioning, but could be brought to full power quickly.
 
16 (0x10) Power Cycle
 
17 (0x11) Power Save - Warning

The device is in a warning state, though also in a power save state.
 

 

Caption
Data type: string
Access type: Read-only

Short description of the object—a one-line string. This property is inherited from CIM_ManagedSystemElement.

ConfigManagerErrorCode
Data type: uint32
Access type: Read-only

Windows Configuration Manager error code.

Value Meaning
0 (0x0) Device is working properly.
 
1 (0x1) Device is not configured correctly.
 
2 (0x2) Windows cannot load the driver for this device.
 
3 (0x3) Driver for this device might be corrupted, or the system may be low on memory or other resources.
 
4 (0x4) Device is not working properly. One of its drivers or the registry might be corrupted.
 
5 (0x5) Driver for the device requires a resource that Windows cannot manage.
 
6 (0x6) Boot configuration for the device conflicts with other devices.
 
7 (0x7) Cannot filter.
 
8 (0x8) Driver loader for the device is missing.
 
9 (0x9) Device is not working properly. The controlling firmware is incorrectly reporting the resources for the device.
 
10 (0xA) Device cannot start.
 
11 (0xB) Device failed.
 
12 (0xC) Device cannot find enough free resources to use.
 
13 (0xD) Windows cannot verify the device's resources.
 
14 (0xE) Device cannot work properly until the computer is restarted.
 
15 (0xF) Device is not working properly due to a possible re-enumeration problem.
 
16 (0x10) Windows cannot identify all of the resources that the device uses.
 
17 (0x11) Device is requesting an unknown resource type.
 
18 (0x12) Device drivers must be reinstalled.
 
19 (0x13) Failure using the VxD loader.
 
20 (0x14) Registry might be corrupted.
 
21 (0x15) System failure. If changing the device driver is ineffective, see the hardware documentation. Windows is removing the device.
 
22 (0x16) Device is disabled.
 
23 (0x17) System failure. If changing the device driver is ineffective, see the hardware documentation.
 
24 (0x18) Device is not present, not working properly, or does not have all of its drivers installed.
 
25 (0x19) Windows is still setting up the device.
 
26 (0x1A) Windows is still setting up the device.
 
27 (0x1B) Device does not have valid log configuration.
 
28 (0x1C) Device drivers are not installed.
 
29 (0x1D) Device is disabled. The device firmware did not provide the required resources.
 
30 (0x1E) Device is using an IRQ resource that another device is using.
 
31 (0x1F) Device is not working properly. Windows cannot load the required device drivers.
 

 

ConfigManagerUserConfig
Data type: boolean
Access type: Read-only

If True, the device is using a user-defined configuration. This property is inherited from CIM_LogicalDevice.

CreationClassName
Data type: string
Access type: Read-only
Qualifiers: Key, MaxLen (256)

Name of the first concrete class to appear in the inheritance chain used in the creation of an instance. When used with the other key properties of the class, the property allows all instances of this class and its subclasses to be uniquely identified. This property is inherited from CIM_LogicalDevice.

Description
Data type: string
Access type: Read-only

Description of the object. This property is inherited from CIM_ManagedSystemElement.

DeviceID
Data type: string
Access type: Read-only
Qualifiers: Key

Unique identifier of the network adapter from other devices on the system. This property is inherited from CIM_LogicalDevice.

ErrorCleared
Data type: boolean
Access type: Read-only

If True, the error reported in LastErrorCode is now cleared. This property is inherited from CIM_LogicalDevice.

ErrorDescription
Data type: string
Access type: Read-only

More information about the error recorded in LastErrorCode, and information about any corrective actions that may be taken. This property is inherited from CIM_LogicalDevice.

GUID
Data type: string
Access type: Read-only

Globally unique identifier for the connection.

Windows Server 2003, Windows XP, Windows 2000, and Windows NT 4.0:  This property is not available.
Index
Data type: uint32
Access type: Read-only

Index number of the network adapter, stored in the system registry.

Example: 0

InstallDate
Data type: datetime
Access type: Read-only

Date and time the object was installed. This property does not need a value to indicate that the object is installed. This property is inherited from CIM_ManagedSystemElement.

This property has not been implemented yet. It returns a NULL value by default.

Installed
Data type: boolean
Access type: Read-only
Qualifiers: Deprecated

If True, the network adapter is installed in the system.

InterfaceIndex
Data type: uint32
Access type: Read-only

Index value that uniquely identifies the local network interface. The value in this property is the same as the value in the InterfaceIndex property in the instance of Win32_IP4RouteTable that represents the network interface in the route table.

Windows XP, Windows 2000, and Windows NT 4.0:  This property is not available.
LastErrorCode
Data type: uint32
Access type: Read-only

Last error code reported by the logical device. This property is inherited from CIM_LogicalDevice.

MACAddress
Data type: string
Access type: Read-only

Media access control address for this network adapter. A MAC address is a unique 48-bit number assigned to the network adapter by the manufacturer. It uniquely identifies this network adapter and is used for mapping TCP/IP network communications.


Manufacturer
Data type: string
Access type: Read-only

Name of the network adapter's manufacturer.

Example: "3COM"

MaxNumberControlled
Data type: uint32
Access type: Read-only

Maximum number of directly addressable ports supported by this network adapter. A value of 0 (zero) should be used if the number is unknown.

MaxSpeed
Data type: uint64
Access type: Read-only

Maximum speed, in bits per second, for the network adapter. This property is inherited from CIM_NetworkAdapter.

This property has not been implemented yet. It returns a NULL value by default.

For more information about using uint64 values in scripts, see Scripting in WMI.

Name
Data type: string
Access type: Read-only

Label by which the object is known. When subclassed, the property can be overridden to be a key property. This property is inherited from CIM_ManagedSystemElement.

NetConnectionID
Data type: string
Access type: Read/write

Name of the network connection as it appears in the Network Connections Control Panel program.

Windows Server 2003 and Windows XP:  This property is read-only.
Windows 2000 and Windows NT 4.0:  This property is not available.
NetConnectionStatus
Data type: uint16
Access type: Read-only

State of the network adapter connection to the network.

Windows XP with SP3 and later:  This property returns a value of 2 for a client that is connected to an authenticated port.
Windows XP with SP2 and earlier:  This property returns a value of 9 for a client that is connected to an authenticated port.
Windows 2000 and Windows NT 4.0:  This property is not available.
Value Meaning
0 (0x0) Disconnected
 
1 (0x1) Connecting
 
2 (0x2) Connected
 
3 (0x3) Disconnecting
 
4 (0x4) Hardware not present
 
5 (0x5) Hardware disabled
 
6 (0x6) Hardware malfunction
 
7 (0x7) Media disconnected
 
8 (0x8) Authenticating
 
9 (0x9) Authentication succeeded
 
10 (0xA) Authentication failed
 
11 (0xB) Invalid address
 
12 (0xC) Credentials required
 

 

NetEnabled
Data type: boolean
Access type: Read-only

Indicates whether the adapter is enabled or not. If True, the adapter is enabled. You can enable or disable the NIC by using the Enable and Disable methods.

Windows Server 2003, Windows XP, Windows 2000, and Windows NT 4.0:  This property is not available.
NetworkAddresses
Data type: string array
Access type: Read-only

Array of network addresses for an adapter. This property is inherited from CIM_NetworkAdapter.

This property has not been implemented yet. It returns a NULL value by default.

PermanentAddress
Data type: string
Access type: Read-only

Network address hard-coded into an adapter. This hard-coded address may be changed by firmware upgrade or software configuration. If so, this field should be updated when the change is made. The property should be left blank if no hard-coded address exists for the network adapter. This property is inherited from CIM_NetworkAdapter.

This property has not been implemented yet. It returns a NULL value by default.

PhysicalAdapter
Data type: boolean
Access type: Read-only

Indicates whether the adapter is a physical or a logical adapter. If True, the adapter is physical.

Windows Server 2003, Windows XP, Windows 2000, and Windows NT 4.0:  This property is not available.
PNPDeviceID
Data type: string
Access type: Read-only

Windows Plug and Play device identifier of the logical device. This property is inherited from CIM_LogicalDevice.

Example: "*PNP030b"

PowerManagementCapabilities
Data type: uint16 array
Access type: Read-only

Array of the specific power-related capabilities of a logical device. This property is inherited from CIM_LogicalDevice.

Value Meaning
0 (0x0) Unknown
 
1 (0x1) Not Supported
 
2 (0x2) Disabled
 
3 (0x3) Enabled

The power management features are currently enabled but the exact feature set is unknown or the information is unavailable.
 
4 (0x4) Power Saving Modes Entered Automatically

The device can change its power state based on usage or other criteria.
 
5 (0x5) Power State Settable

The SetPowerState method is supported. This method is found on the parent CIM_LogicalDevice class and can be implemented. For more information, see Designing Managed Object Format (MOF) Classes.
 
6 (0x6) Power Cycling Supported

The SetPowerState method can be invoked with the PowerState parameter set to 5 (Power Cycle).
 
7 (0x7) Timed Power-On Supported

The SetPowerState method can be invoked with the PowerState parameter set to 5 (Power Cycle) and Time set to a specific date and time, or interval, for power-on.
 

 

PowerManagementSupported
Data type: boolean
Access type: Read-only

If True, the device can be power-managed (can be put into suspend mode, and so on). The property does not indicate that power management features are currently enabled, only that the logical device is capable of power management. This property is inherited from CIM_LogicalDevice.

ProductName
Data type: string
Access type: Read-only

Product name of the network adapter.

Example: "Fast EtherLink XL"

ServiceName
Data type: string
Access type: Read-only

Service name of the network adapter. This name is usually shorter than the full product name.

Example: "Elnkii"

Speed
Data type: uint64
Access type: Read-only

Estimate of the current bandwidth in bits per second. For endpoints which vary in bandwidth or for those where no accurate estimation can be made, this property should contain the nominal bandwidth. This property is inherited from CIM_NetworkAdapter.

Windows Server 2003, Windows XP, Windows 2000, and Windows NT 4.0:  This property has not been implemented yet. It returns a NULL value by default.
For more information about using uint64 values in scripts, see Scripting in WMI.

Status
Data type: string
Access type: Read-only

Current status of the object. This property is inherited from CIM_ManagedSystemElement.


The values are:

"OK"
"Error"
"Degraded"
"Unknown"
"Pred Fail"
"Starting"
"Stopping"
"Service"
StatusInfo
Data type: uint16
Access type: Read-only

State of the logical device. If this property does not apply to the logical device, the value 5 (Not Applicable) should be used. This property is inherited from CIM_LogicalDevice.

Value Meaning
1 (0x1) Other
 
2 (0x2) Unknown
 
3 (0x3) Enabled
 
4 (0x4) Disabled
 
5 (0x5) Not Applicable
 

 

SystemCreationClassName
Data type: string
Access type: Read-only

Value of the scoping computer's CreationClassName property. This property is inherited from CIM_LogicalDevice.

SystemName
Data type: string
Access type: Read-only

Name of the scoping system. This property is inherited from CIM_LogicalDevice.

TimeOfLastReset
Data type: datetime
Access type: Read-only

Date and time the network adapter was last reset.

Remarks
The Win32_NetworkAdapter class is derived from CIM_NetworkAdapter.

Examples
For script code examples, see WMI Tasks for Scripts and Applications and the TechNet ScriptCenter Script Repository.

For C++ code examples, see WMI C++ Application Examples.

Requirements
Minimum supported client
 Windows 2000 Professional [desktop apps only]
Minimum supported server
 Windows 2000 Server [desktop apps only]
Namespace
 \root\CIMV2
 
MOF
 Cimwin32.mof
DLL
 Cimwin32.dll

See also
Computer System Hardware Classes
 

 

Send comments about this topic to Microsoft

Build date: 9/21/2012

 
Did you find this helpful? Yes No
 Not accurate  Not enough depth  Need more code examples Tell us more... (1500 characters remaining)   
Community Additions
ADD Speed property is string not integer
{quota}
Speed

Data type: uint64
Access type: Read-only
{/quota}
The statement above is wrong and misleading, at least on Win7.

The code below works on Win7 64 bit.
{code}

hr = pclsObj->Get(L"Speed", 0, &vtProp, 0, 0);
if (SUCCEEDED(hr) && (V_VT(&vtProp) == VT_BSTR)) {
wcout << " Speed: " << vtProp.bstrVal << endl;
}
VariantClear(&vtProp);

{/code}
 emerg.reanimator
2/17/2012
Method For Finding the Default Network Adapter.


I use this query first and then run a query based on the result.


"SELECT InterfaceIndex, Destination FROM Win32_IP4RouteTable WHERE Destination='0.0.0.0'"


You should only have one default network destination 0.0.0.0.


The InterfaceIndex is then used to grab the Network Adapter you want.


"SELECT * FROM Win32_NetworkAdapter WHERE InterfaceIndex=" + insertVariableHere

 iceCreamPoopingTaco
9/28/2010
Associators


•Win32_PnPEntity

•Win32_ComputerSystem

•Win32_NetworkAdapterConfiguration

•Win32_IRQResource

•Win32_DeviceMemoryAddress

•Win32_PortResource

•Win32_NetworkProtocol

•Win32_SystemDriver


 Thomas Lee
8/5/2009
More Than You Think!
Warning: There are a lot of these adapters on a typical computer system. You have to do considerable processing in order to figure out which is the real one that you want!

Here are some guidelines to qualify Win32_NetworkAdapter:

AdapterType: "Ethernet 802.3"
MACAddress: String Length > 16
Availability: 3
PNPDeviceID: InStr ( PNPDeviceID, "PCI") = 1
Installed: vbTrue
ConfigManagerErrorCode: 0
:

You will still get more than one valid network adapter...
Then you need to search through the collection of Win32_NetworkAdapterConfiguration, qualify like this:

Index:
MACAddress: Length > 16
DefaultIPGateway: String Length > 6
DNSServerSearchOrder: Array of strings with length > 6
IPEnabled: vbTrue
IPAddress: Array of strings with length > 6

...by then you should have it narrowed down to one or two configured adapters!
 Thomas Lee
6/17/2009
Example for WSH
' Example for WSH

' Alexander Klimoff (winchanger.whatis.ru)

strComputer = "." Set objWMIService = GetObject("winmgmts:\\" & strComputer & "\root\CIMV2") Set colItems = objWMIService.ExecQuery("SELECT * FROM Win32_NetworkAdapter")

For Each objItem in colItems  Wscript.Echo "Name: " & objItem.Name  Wscript.Echo "Description: " & objItem.Description  Wscript.EchoNext Thomas Lee
6/17/2009
StatusInfo is null in Windows XP
StatusInfo is null in Windows XP