如何解决如何以编程方式禁用网络连接属性中的特定项目?
我想知道是否存在某些API /代码来禁用(当前)网络连接属性中的特定项?
如果是,您能否显示一个有效的代码示例,解释其详细信息,并指出所使用技术的某些限制(如果存在)?
解决方法
禁用这些绑定的API是INetCfgBindingPath::Enable
。 bindview示例说明了如何调用API。
在Windows 8和更高版本中,您也可以调用WMI方法/root/standardcimv2/MSFT_NetAdapterBindingSettingData::Disable
。以下是PowerShell的代码行,它说明了如何禁用从名为“ mb-port”的NIC到“ ms_msclient”驱动程序(也称为wkssvc)的绑定:
Get-CimInstance -Namespace root/standardcimv2 -Query 'SELECT * FROM MSFT_NetAdapterBindingSettingData WHERE Name = "mb-port" AND ComponentID = "ms_msclient"' | Invoke-CimMethod -MethodName Disable
请注意,GUI正在偷偷摸摸:它将多个绑定路径合并到同一复选框中。在您突出显示的示例中,从ms_msclient到NIC可能有2个绑定路径:一个在IPv4上,一个在IPv6上。当您清除/勾选复选框时,GUI会禁用/启用所有路径。如果要通过API进行操作,并希望执行同样的操作,则需要枚举所有从ms_msclient开始并进入NIC mb-port的绑定路径。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。