代码之家  ›  专栏  ›  技术社区  ›  A. Fasih

使用Qt在windows中以编程方式更改网络适配器名称

  •  0
  • A. Fasih  · 技术社区  · 6 年前

    我知道可以在控制台中使用netsh命令在windows中更改网络适配器。但我需要在Qt中使用C++来实现这一点。我尝试使用QProcess调用netsh,但命令提示符需要管理员权限。此外,我的适配器名称中有空格,这使得它也不容易运行。Qt中是否有任何库能够在不使用QProcess和调用其中的windows命令的情况下更改网络适配器名称?

    更新1: 当我使用admin权限运行程序并在字符串中设置\“for have”时,我可以使用QProcess和netsh命令更改适配器名称。

    QProcess p;
    QString pi_network = "original adapter name";
    p.start("netsh interface set interface name = \""+pi_network+"\" newname = \"MyAdapter\"");
    

    enter image description here

    1 回复  |  直到 6 年前
        1
  •  0
  •   A. Fasih    6 年前

    我将把它作为一个答案发布,因为它可能会帮助别人(正如埃里克西先生在评论中所说)。

    您可以使用netsh命令,但请注意,您应该在windows中使用管理员权限运行程序。

    QProcess p;
    QString pi_network = "original adapter name";
    p.start("netsh interface set interface name = \""+pi_network+"\" newname = \"new network adapter name\"");
    p.waitForFinished();
    p.close();