Answers:
我相信您可以使用SysInternal的PSexec.exe强制提升。
您可以尝试例如运行以下命令: psexec \\%computername% -i -h notepad.exe
正如您所发现的那样,runas不允许您仅以其他用户身份运行提升权限的命令。
当您尝试启动被标记为需要提升的可执行文件时,会发生提升,从而引起UAC提示。这不仅仅是CreateProcess上的一个选项。因此,如果您正在运行cmd的非高架副本,并希望它运行另一个普通命令但又以高架运行,则需要一个可以为您运行但被标记为高架的interlude命令。当前目录和环境变量不会被提升的孩子继承,这一事实使情况变得复杂。
我在汉密尔顿C shell中包含的su命令(完全公开:我是作者)有一个sudo选项可以解决此问题,这是我的操作方式:当您要求su运行提升的命令时,它将启动自身的副本存储为标记为海拔的elevate.exe。elevate然后使用su通过共享内存进行握手,以跨海拔高度边界传递命令行参数,当前目录和环境,然后elevate运行命令。