命令提示符 "runas user:<admin-user> <command>" 未正确执行

Command prompt "runas user:<admin-user> <command>" not executing properly

我希望能够从我的 C++ 程序中调用 netsh。我一直在尝试使用 system() 来完成此操作。我不知道 system() 的任何选项会赋予生成的命令提示符管理员权限,因此我一直在尝试使用 运行as 命令。我一直在基本命令提示符下测试命令:

runas /user:<admin-user> "netsh int ip set address \"Local Area Connection\" static <IP address>"

虽然 netsh 命令本身在 运行 作为管理员的命令提示符下运行良好,但 运行as 版本的命令似乎无法在普通命令提示符下运行。有什么建议吗?

欢迎来到 windows 管理脚本的世界!使用 runas 时,您只能要求 windows 更改用户,但不能要求提升权限。

我找到的唯一方法是使用短链接。在文件资源管理器下,您可以创建指向 .bat 或更好的 .cmd 文件的短链接。然后转到短链接的属性,选项卡 shortlink,应该有一个 Advanced 按钮,您可以在其中检查 Run as administrator.

然后您可以从命令提示符或什至从另一个批处理文件启动所有这些:

link_name.lnk

注意,真实姓名可能不是我上面写的:我只有一个法语系统,关键字是 PropriétésRaccourciAvancé ...Exécuter en tant qu'administrateur.