【发布时间】:2011-03-04 11:03:25
【问题描述】:
在 Windows 7 上,我可以通过网络连接管理器面板(在系统设置中)启用和禁用连接。
如何在 C# 中以编程方式执行此操作?谢谢
【问题讨论】:
-
有什么特别的原因,因为您显然会停止计算机上的所有流量,中断下载等?
标签: c# windows networking
在 Windows 7 上,我可以通过网络连接管理器面板(在系统设置中)启用和禁用连接。
如何在 C# 中以编程方式执行此操作?谢谢
【问题讨论】:
标签: c# windows networking
您可以在 C# 中通过利用 WMI 和 Win32_NetworkAdapter WMI 类来实现这一点。 Win32_NetworkAdapter 类具有可在选定网络接口上执行的 Enable 和 Disable 方法。
可以在此处找到使用示例:
链接不可用,但存档于:
简而言之,执行此操作的步骤是:
从 VS 命令提示符生成类的包装器
mgmtclassgen Win32_NetworkAdapter /L CS -p NetworkAdapter.cs
逐步通过适配器:
SelectQuery 查询 = new SelectQuery("Win32_NetworkAdapter", "NetConnectionStatus=2"); ManagementObjectSearcher search = new ManagementObjectSearcher(query); foreach(ManagementObject 结果在 search.Get()) { 网络适配器适配器 = 新网络适配器(结果); // 在此处标识您要禁用的适配器。 // 特别是,检查 AdapterType 和 // 描述属性。 // 在这里,我们选择 LAN 适配器。 if (adapter.AdapterType.Contains("Ethernet 802.3")) { 适配器.禁用(); } }【讨论】: