加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

c# – 以编程方式启用/禁用连接

发布时间:2020-12-15 04:01:15 所属栏目:百科 来源:网络整理
导读:在 Windows 7上,我可以通过网络连接管理器面板启用和禁用连接(在系统设置中). 在C#中如何以编程方式执行此操作?谢谢 解决方法 您可以通过利用WMI和Win32_NetworkAdapter WMI类在C#中实现此目的. Win32_NetworkAdapter类具有可以在所选网络接口上执行的Enabl
在 Windows 7上,我可以通过网络连接管理器面板启用和禁用连接(在系统设置中).

在C#中如何以编程方式执行此操作?谢谢

解决方法

您可以通过利用WMI和Win32_NetworkAdapter WMI类在C#中实现此目的. Win32_NetworkAdapter类具有可以在所选网络接口上执行的Enable和Disable方法.

在这里可以找到使用的一个例子:

http://blog.opennetcf.com/ncowburn/2008/06/24/HOWTODisableEnableNetworkConnectionsProgrammaticallyUnderVista.aspx

链接不可用,但存档在:

http://web.archive.org/web/20120615012706/http://blog.opennetcf.com/ncowburn/2008/06/24/HOWTODisableEnableNetworkConnectionsProgrammaticallyUnderVista.aspx

简单来说,这样做的步骤是:

>从VS命令提示符生成类的包装器

mgmtclassgen Win32_NetworkAdapter /L CS -p NetworkAdapter.cs

>穿过适配器:

SelectQuery query = new SelectQuery("Win32_NetworkAdapter","NetConnectionStatus=2");
ManagementObjectSearcher search = new ManagementObjectSearcher(query);
foreach(ManagementObject result in search.Get()) {
 NetworkAdapter adapter = new NetworkAdapter(result);
 // Identify the adapter you wish to disable here. 
 // In particular,check the AdapterType and 
 // Description properties.
 // Here,we're selecting the LAN adapters.
 if (adapter.AdapterType.Contains("Ethernet 802.3")) {
    adapter.Disable();
 }
}

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读