如何在管理员模式下执行脚本而不提示用户端选择?

时间:2015-09-08 06:58:22

标签: powershell uac

我有一个PowerShell脚本Admin.PS1,它将以管理员身份打开运行other.PS1 PowerShell脚本。代码如下:

$ScriptPath = "D:\usefull_PS_files\toNode\other.PS1"
$RelaunchArgs = '-ExecutionPolicy Unrestricted -file "' + $ScriptPath + '" -IsRunAsAdmin'
# Launch the process and wait for it to finish
try
{
    $AdminProcess = Start-Process "$PsHome\PowerShell.exe" -Verb RunAs -ArgumentList $RelaunchArgs
}
catch
{
    $Error[0] # Dump details about the last error
    exit 1
}

现在发生的事情是,当我执行上面的PS脚本时,我得到一个PowerShell管理员提示,我必须在其中选择"是"或者"没有",但我真正想要的是Other.PS1以管理员身份执行而没有任何提示,即无需选择"是"或"不"。 那么,我怎样才能以完全自动化的方式运行任何PS脚本作为管理员而无需我方输入。

1 个答案:

答案 0 :(得分:1)

您有3个选项AFAICS:

  • 停用UAC。
  • 从已提升的提示符运行脚本。
  • 使用复选框"以最高权限运行"创建计划任务。启用。