断开连接的适配器上的WMI EnableDHCP失败

时间:2009-08-12 14:35:11

标签: windows networking wmi

我正在使用WMI Win32_NetworkAdapterConfiguration类EnableDHCP方法在网络适配器上启用DHCP服务。我正在使用XP Embedded SP2,但它也发生在我的桌面上(XP SP3)。

除非拔下网线,否则一切都很好。

如果电缆断开连接,EnableDHCP将返回94(未找到路径,文件或对象),当我查看网络控制面板属性时,它将设置为手动配置,地址为0.0.0.0,掩码为255.0.0.0。

奇怪的是,当处于这种状态时,EnableStatic第一次失败,代码为94或81(无法配置DHCP服务),但第二次失效。

即使拔掉电缆,使用netsh或Windows GUI启用DHCP也能正常工作。

有人知道如何解决这个问题吗?

2 个答案:

答案 0 :(得分:6)

似乎至少有一个人感兴趣,所以我发现了这个:

据我所知,这是WMI中的一个错误。为了解决这个问题,似乎可以直接为适配器设置适当的注册表值。这些存储在

下的注册表中
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters\Interfaces\<guid>

guid包含在GetAdaptersInfo填充的IP_ADAPTER_INFO结构中。

将EnableDHCP DWORD值设置为1。

我还发现使用WMI SetGateways清除网关很有用,否则旧网关就会出现。

我还发现,当EnableStatic说失败时,它确实有效。

此内容仅在网络断开时才相关。

答案 1 :(得分:0)

markh44's answer在11年后仍然有意义。

我发现我不得不添加一个附加步骤:将DisableDhcpOnConnect的值设置为0。如果仅将EnableDHCP设置为1,我在IPv4属性窗口中发现了IP地址和子网掩码。已消失,但仍选择了“使用以下地址”。将DisableDhcpOnConnect设置为0会导致选择“自动获取IP地址”。