я смог обойти эту ошибку, вызывая PowerShell, как это:
powershell -executionpolicy bypass -File .\MYSCRIPT.ps1
То есть, Я добавил -executionpolicy bypass
к тому, как я вызвал скрипт.
Это работало на Windows 7 с пакетом обновления 1 (SP1). Я новичок в PowerShell, поэтому могут быть оговорки, чтобы сделать то, о чем я не знаю.
[Редактировать 2017-06-26] Я продолжал использовать эту технику на других системах, включая окна 10 и Windows 2012r2, без проблем.
Вот что я сейчас использую. Это мешает мне случайно запустить скрипт, щелкнув по нему. Когда я запускаю его в планировщике, я добавляю один аргумент: «scheduler» и обходит приглашение.
Это также останавливает окно в конце, поэтому я могу видеть вывод powershell.
if NOT "%1" == "scheduler" (
@echo looks like you started the script by clicking on it.
@echo press space to continue or control C to exit.
pause
)
C:
cd \Scripts
powershell -executionpolicy bypass -File .\rundps.ps1
set psexitcode=%errorlevel%
if NOT "%1" == "scheduler" (
@echo Powershell finished. Press space to exit.
pause
)
exit /b %psexitcode%
вот почему командные файлы живут на! – 2017-05-17 06:35:19