【问题标题】:C# to run cmd netshC# 运行 cmd netsh
【发布时间】:2014-05-06 12:52:24
【问题描述】:

我正在尝试创建一个带有 2 个按钮的 c# 表单。

btn1 = disable LAN
btn2 = enable LAN

我以前从未在这个级别上做过。

我想要完成的是当我点击 btn1 时我想禁用 LAN,然后 btn 再次启用它。

这是我正在测试的:

System.Diagnostics.Process.Start(ipconfig);

这个运行,它运行 cmd 和 ipconfig 我实际上可以看到 IP 显示但是...

这是 netsh 命令:

netsh interface set interface name="Local Area Connection" admin=DISABLED

如果我通过控制台运行它,它可以 100% 运行

我想通过点击按钮来使用这个命令?

我该如何让它发挥作用?因为我已经尝试过了,但不起作用:

System.Diagnostics.Process.Start(netsh interface set interface name="Local Area Connection " admin=DISABLED);

有什么帮助吗?

【问题讨论】:

  • 如果连接不调用Local Area Connection怎么办?
  • 就我而言,它总是本地连接

标签: c# process lan system.diagnostics netsh


【解决方案1】:

这应该可行:

System.Diagnostics.Process.Start("netsh.exe", "whatever you would need to write as parameters");

例如,对于移动宽带连接,我将使用以下方式启动此连接:

System.Diagnostics.Process.Start("netsh.exe", "mbn connect interface=\"Mobile broadband\" connmode=name name=\"NAME OF CONNECTION\"");

在上面的示例中,您可以通过在典型的网络管理器中查找连接来找到连接的名称(在 Windows 8 中,它位于右侧的滑入式网络概览中)。不过,这部分与您的问题并不真正相关,但其他人可能对此感兴趣。

【讨论】:

    【解决方案2】:

    试试这个:

    Process.Start("cmd", "/C netsh interface set interface name=\"Local Area Connection\" admin=DISABLED");
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2019-05-11
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多