2

是否可以使用 shell.run 命令以管理员身份运行指定的程序?

例如:

shell.run(cmd.exe) <---Run this as admin
shell.run(Notepad) <---Run this as normal

我知道我可以执行脚本以管理员身份运行,但这意味着该脚本中的所有内容都以管理员身份执行。

我的另一个选择是分离脚本并以管理员身份运行一个脚本,并在该脚本中包含需要以管理员身份运行的内容,然后调用另一个脚本以正常运行和运行该脚本。

4

3 回答 3

6
Set oShell = CreateObject("Shell.Application")
oShell.ShellExecute "cmd.exe", , , "runas", 1
oShell.Run "nodepad.exe"

(来源:http ://social.technet.microsoft.com/Forums/eu/ITCG/thread/310e57f9-2367-4293-9f97-53d0e077aacc )

(更多信息:http ://ss64.com/vb/shellexecute.html )

于 2012-10-25T01:20:28.157 回答
0

Windows(至少从 XP 到 Win7)有一个runas命令可以满足您的需要。有关详细信息,请参见此处

因此,cmd.exe您可以运行runas.exe,而不是运行,cmd.exe作为要运行的程序。

于 2012-10-25T01:13:56.690 回答
0

试试这个:

Dim ObjShell
Set ObjShell = CreateObject ("WScript.Shell")
ObjShell.Run "runas /K (command goes here) "
ObjShell.Run "notepad.exe"
于 2021-01-01T23:41:11.747 回答