EnableStatic method of the Win32_NetworkAdapterConfiguration class
The EnableStatic WMI class method enables static TCP/IP addressing for the target network adapter. As a result, DHCP for this network adapter is disabled.
This topic uses Managed Object Format (MOF) syntax. For more information about using this method, see Calling a Method.
Syntax
uint32 EnableStatic(
[in] string IPAddress[],
[in] string SubnetMask[]
);
Parameters
-
IPAddress [in]
-
Lists all of the static IP addresses for the current network adapter.
Example: 155.34.22.0.
-
SubnetMask [in]
-
Subnet masks that complement the values in the IPAddress parameter.
Example: 255.255.0.0.
Return value
Returns a value of 0 (zero) for a successful completion when a reboot is not required, 1 (one) for a successful completion when a reboot is required, and any other number if there is an error. For more information on error codes, see WMI Error Constants or WbemErrorEnum. For general HRESULT values, see System Error Codes.
-
Successful completion, no reboot required
-
0
Successful completion, no reboot required.
-
Successful completion, reboot required
-
1
Successful completion, reboot required.
-
Method not supported on this platform
-
64
Method not supported on this platform.
-
Unknown failure
-
65
Unknown failure.
-
Invalid subnet mask
-
66
Invalid subnet mask.
-
An error occurred while processing an Instance that was returned
-
67
An error occurred while processing an instance that was returned.
-
Invalid input parameter
-
68
Invalid input parameter.
-
More than 5 gateways specified
-
69
More than five gateways specified.
-
Invalid IP address
-
70
Invalid IP address.
-
Invalid gateway IP address
-
71
Invalid gateway IP address.
-
An error occurred while accessing the Registry for the requested information
-
72
An error occurred while accessing the registry for the requested information.
-
Invalid domain name
-
73
Invalid domain name.
-
Invalid host name
-
74
Invalid host name.
-
No primary/secondary WINS server defined
-
75
No primary or secondary WINS server defined.
-
Invalid file
-
76
Invalid file.
-
Invalid system path
-
77
Invalid system path.
-
File copy failed
-
78
File copy failed.
-
Invalid security parameter
-
79
Invalid security parameter.
-
Unable to configure TCP/IP service
-
80
Unable to configure TCP/IP service.
-
Unable to configure DHCP service
-
81
Unable to configure DHCP service. For more information, see the Remarks section.
-
Unable to renew DHCP lease
-
82
Unable to renew DHCP lease.
-
Unable to release DHCP lease
-
83
Unable to release DHCP lease.
-
IP not enabled on adapter
-
84
IP not enabled on adapter.
-
IPX not enabled on adapter
-
85
IPX not enabled on adapter.
-
Frame/network number bounds error
-
86
Frame or network number bounds error.
-
Invalid frame type
-
87
Invalid frame type.
-
Invalid network number
-
88
Invalid network number.
-
Duplicate network number
-
89
Duplicate network number.
-
Parameter out of bounds
-
90
Parameter out of bounds.
-
Access denied
-
91
Access denied.
-
Out of memory
-
92
Out of memory.
-
Already exists
-
93
Already exists.
-
Path, file or object not found
-
94
Path, file, or object not found.
-
Unable to notify service
-
95
Unable to notify service.
-
Unable to notify DNS service
-
96
Unable to notify DNS service.
-
Interface not configurable
-
97
Interface not configurable.
-
Not all DHCP leases could be released/renewed
-
98
Not all DHCP leases could be released or renewed.
-
DHCP not enabled on adapter
-
100
DHCP not enabled on adapter.
-
2147786788
-
Write lock not enabled. For more information, see INetCfgLock::AcquireWriteLock.
-
Other
-
101 4294967295
Remarks
When using EnableStatic to change the IP address of the remote computer, while being connected through that adapter, you will likely loose connection to the remote computer, and receive an RPC not available error-message. (the settings are changed however). To avoid this scenario, consider changing the Gateway and/or DNS-settings prior to setting the adapter's IP-address.
When using EnableStatic to give an adapter a static IP configuration, the function returns an "81 - Unable to configure DHCP service" if the adapter is already configured with a static address. However, the function still succeeds in setting with the new operation.
Examples
The following VBScript sample demonstrates how to disable DHCP use on an instance of Win32_NetworkAdapterConfiguration. In this case we specify the adapter with an Index of 0. The correct index should be selected from Win32_NetworkAdapter instances for other interfaces.
Note
This script only applies to NT-based systems Change the ipaddr and subnet variables below to the values you wish to apply to the adapter.
Set Adapter = GetObject("winmgmts:Win32_NetworkAdapterConfiguration=1")
ipaddr = Array("1.1.1.1")
subnet = Array("255.255.255.0")
RetVal = Adapter.EnableStatic(ipaddr,subnet)
if RetVal = 0 then
WScript.Echo "DHCP disabled, using static IP address"
else
WScript.Echo "DHCP disable failed"
end if
The following Perl sample demonstrates how to disable DHCP use on an instance of Win32_NetworkAdapterConfiguration. In this case we specify the adapter with an Index of 0. The correct index should be selected from Win32_NetworkAdapter instances for other interfaces.
Note
This script only applies to NT-based systems Change the ipaddr and subnet variables below to the values you wish to apply to the adapter.
use strict;
use Win32::OLE;
my ($Adapter, @ipaddr, @subnet, $RetVal);
eval { $Adapter =
Win32::OLE->GetObject("winmgmts:{impersonationLevel=impersonate}!\\\\.\\root\\cimv2:Win32_NetworkAdapterConfiguration.Index=\"0\""); };
unless ($@)
{
push @ipaddr, "192.168.144.107";
push @subnet, "255.255.255.0";
$RetVal = $Adapter->EnableStatic(\@ipaddr, \@subnet);
if ($RetVal == 0)
{
print "\nDHCP disabled, using static IP address\n";
}
else
{
print "\nDHCP disable failed\n";
}
}
else
{
print STDERR "\n", Win32::OLE->LastError, "\n";
}
Requirements
Requirement | Value |
---|---|
Minimum supported client |
Windows Vista |
Minimum supported server |
Windows Server 2008 |
Namespace |
Root\CIMV2 |
MOF |
|
DLL |
|