Наилучшее объяснение проблемы похоронено в комментарии Nathan Hartley , поэтому позвольте мне суммировать его здесь:
Проблема связана исключительно с разрешениями файловой системы и имеет (консоль и ISE):
Start-Process
без указания целевого каталога с -WorkingDirectory
, текущее местоположение (каталог) PowerShell используется для -Credential
для запуска в качестве другого пользователя - без повышения в этой точке - у целевого пользователя может отсутствовать разрешение на доступ к текущему каталогу, что происходит, если текущий Например, каталог находится внутри поддерева домашнего каталога текущего пользователя. К сожалению, сообщение об ошибке PowerShell скрывает эту причину, вводя в заблуждение сообщение: The directory name is invalid.
Fix:
-WorkingDirectory
для явного задания текущей директории целевого процесса. Для Например, чтобы запустить целевой процесс из каталога, в котором находится целевой скрипт , вы можете использовать что-то вроде:
$script = 'c:\path\to\your\script.ps1'
Start-Process -WorkingDirectory (Split-Path $script) -Credential ...