У меня есть сценарий PowerShell Admin.PS1
, который откроет запуск other.PS1
сценарий PowerShell как adminnistarator. Код выглядит следующим образом:Как выполнить сценарий в режиме администратора без приглашения на выбор со стороны пользователя?
$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 в качестве администратора без ввода с моей стороны, полностью автоматическим способом.
'psexec -h powershell.exe -file other.ps1' может быть другим вариантом –
Определенно не рекомендуется отключать UAC. –
Я определенно рекомендую отключить UAC в профессиональных средах, где у вас есть учетные записи администратора для административных задач и ограниченных учетных записей для обычных пользователей и повседневной работы. Домашние пользователи - это единственная область, где UAC может иметь некоторую выгоду. –