如何使用C ++在Windows XP中重新启用已禁用的网络连接?

时间:2016-01-29 15:14:13

标签: c++ windows winapi wmi

我发现this article at SO告诉我们如何使用SetupAPI启用/禁用网络订阅者。这到目前为止工作正常。问题是我无法找到在 Windows XP 中禁用的网络连接(适配器)的设备索引。

我有:

  • GUID列表(来自HKLM \ SOFTWARE \ Microsoft \ Windows NT \ Netcards)
  • Windows XP支持的Win32_NetworkAadapter中的所有内容

我尝试没有成功:

  • GetIfTable() - 表中没有禁用的适配器
  • XP
  • 不支持Win32_NetworkAdapter :: InterfaceIndex
  • Win32_NetworkAdapter :: XP中不支持启用()/禁用()

我还可以做些什么来获取设备索引或重新启用已禁用的网络适配器?

1 个答案:

答案 0 :(得分:0)

根据我构建Network Connection Guard tool的经验,最简单的方法是使用netsh命令,而不是API。我的例子是C#,所以我使用System.Diagnostics.Process,但在你的情况下,我相信你可以使用ShellExecute()

另见SO Programmatically disable/enable network interface

上的答案