以编程方式启用/禁用连接

2023-11-24

在 Windows 7 上,我可以通过网络连接管理器面板(在系统设置中)启用和禁用连接。

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


您可以通过利用 WMI 和 Win32_NetworkAdapter WMI 类在 C# 中实现此目的。 Win32_NetworkAdapter 类具有启用和禁用方法,可以在选定的网络接口上执行。

可以在这里找到使用示例:

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

简而言之,执行此操作的步骤是:

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

    
    mgmtclassgen Win32_NetworkAdapter /L CS -p NetworkAdapter.cs  
  2. 单步调试适配器:

    
    
    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();
     }
    }  

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

以编程方式启用/禁用连接 的相关文章

随机推荐

  • Java 中的类何时以及如何进行垃圾回收?

    我问了一个关于Java中垃圾收集的问题这个话题 但我得到的答案却给了我另一个问题 有人提到类也可以被垃圾收集器收集 这是真的 如果这是真的 这是如何运作的 当没有任何对象引用 Java 中的类时 它可能会被垃圾回收 在大多数简单的设置中 这
  • ruby 继承与 mixins

    在 Ruby 中 由于您可以包含多个 mixins 但只能扩展一个类 因此看起来 mixins 比继承更受青睐 我的问题 如果您正在编写必须扩展 包含才能有用的代码 为什么要把它变成一个类 或者换句话说 为什么不总是把它做成一个模块呢 我只
  • 将数组排序到索引数组指定的容器中的最有效方法?

    任务举例 data np array 1 2 3 4 5 6 7 8 9 idx np array 2 0 1 1 2 0 1 1 2 预期结果 binned np array 2 6 3 4 7 8 1 5 9 限制条件 应该很快 应该O
  • 如何防止 MFMailComposeViewController 取消时崩溃?

    某处 if MFMailComposeViewController canSendMail MFMailComposeViewController email vc MFMailComposeViewController alloc ini
  • 使用 parsley.js 异步提交表单

    我正在尝试创建一个使用 Parsley js 验证前端并异步提交的表单 该表单称为 contactForm 提交按钮是 sendData 当我在空或无效表单上点击 提交 时 就会出现错误 我希望看到来自无效表单数据的 错误 警报 但它只是继
  • 如何测试另一个安装是否已在进行中?

    假设我正在尝试在 Windows 上自动安装某些内容 并且我想在尝试安装之前尝试测试是否正在进行另一个安装 我无法控制安装程序 必须在自动化框架中执行此操作 有没有更好的方法来做到这一点 一些 win32 api 而不只是测试 msiexe
  • 如何使用 Typescript 的声明与从模块导入的接口合并?

    https www typescriptlang org docs handbook declaration merging html 上面的链接提供了有关声明与接口合并的信息 我希望能够使用具有通用组件的界面来做到这一点 我目前正在使用
  • .NET 中的全局与单例

    我这里有一个很常见的情况 多年来 我一直没有发现我所做的事情是否符合行业标准 考虑一个连接到数据库的应用程序 但连接字符串不是存储在某些文件 设置中 而是作为命令行参数传递在启动时或在应用程序启动时浏览数据库 那么有必要将该连接字符串保存在
  • AppBarLayout 与嵌套片段中的 recyclerView

    由于图像总是比文字更好 我向您展示我当前的布局 工具栏 选项卡位于带有 viewPager 的 Activity xml 中 而 recyclerView 位于 viewPager 内的片段内 因此您可以向右 向左滑动来查看其他内容 我的问
  • 如何确定二进制字符串的统计随机性?

    如何确定二进制字符串的统计随机性 因此 我如何编写自己的测试 并返回与统计随机性相对应的单个值 即 0 到 1 0 之间的值 0 不是随机的 1 0 是随机的 该测试需要适用于任何大小的二进制字符串 当您使用笔和纸执行此操作时 您可能会探索
  • 什么时候调用临时的析构函数

    我想知道 C 03 和 C 11 何时调用临时的析构函数 假设我有以下情况 foo method foo f return foo void doSomething foo f method 假设我正在使用标志 fno elide cons
  • 如何以编程方式添加导航控制器?

    我使用下面的代码 但它没有加载 UIStoryboard storyboard UIStoryboard storyboardWithName Main bundle nil self mapViewController storyboar
  • 删除所有项目后组合框尺寸问题

    我的应用程序包含一个组合框 用户可以从中删除项目 当程序启动时 它会从配置文件中读取的字符串列表填充组合框 这是添加项目的代码 version list is an array of strings foreach string versi
  • 解释 Haskell 中的类型类

    我是一名 C Java 程序员 我在日常编程中碰巧使用的主要范例是 OOP 在某些线程中 我读到一条评论说 Type 类本质上比 OOP 更直观 有人可以用简单的语言解释类型类的概念 以便像我这样的 OOP 人员能够理解它吗 首先 我总是对
  • ExtJs手动触发Click事件,按钮参数与鼠标单击不同

    所以 我有一个登录控制器 你可以用鼠标单击登录或按 Enter 键 如下所示 Ext define My controller Login extend Ext app Controller init function applicatio
  • 使用节点将Token保存在本地存储中

    我正在使用智威汤逊 jsonwebtoken 5 4 0 与快递4和翡翠 我能够创建正确的令牌 但是如何在每次调用中传递此令牌 我必须在哪里存储这个令牌 在标头中还是在本地存储中 现在我将 CURL 与 Postman 一起使用 并在标头中
  • 有什么方法可以知道 Jersey @__Param fromString 处理程序中正在解析哪个参数?

    我正在使用的 API 决定接受 UUID 作为 Base32 编码字符串 而不是标准的十六进制 破折号分隔的格式UUID fromString 期望 这意味着我不能简单地写 QueryParam UUID myUuid作为方法参数 因为转换
  • 从多个位置创建脚本包

    假设我们的应用程序处于离线状态 即我们无法使用第 3 方 CDN 因此我们正在创建自己的 CDN 我想将所有供应商脚本托管在一个单独的 父级 Web 应用程序中 然后将它们包含在其他几个 MVC 应用程序的捆绑包中 e g http loc
  • 达到 MaximumFileSize 时的 log4net 滚动文件附加器文件名格式

    我们使用 log4net 滚动文件附加器 并且对日志文件有以下要求 每天开始时的新日志文件 文件名中包含日期 最大日志文件大小为 500KB 我们遇到的问题是当文件达到 500KB 时的文件命名策略 它们被重命名为 1后缀 这是有问题的 因
  • 以编程方式启用/禁用连接

    在 Windows 7 上 我可以通过网络连接管理器面板 在系统设置中 启用和禁用连接 我如何在 C 中以编程方式执行此操作 谢谢 您可以通过利用 WMI 和 Win32 NetworkAdapter WMI 类在 C 中实现此目的 Win