Copy-Item to networkpath: неверное имя пользователя или пароль

У меня есть сценарий PowerShell v1, который запускается ПЛК. Следует скопировать файл с рабочего стола встроенного ПК в сетевой путь.

Если я запускаю скрипт вручную, он работает просто отлично, но если скрипт запускается ПЛК, я получу следующую ошибку:

    + CategoryInfo: Не указано: (:) [Copy-Item], IOException
    + FullyQualifiedErrorId: System.IO.IOException,Microsoft.PowerShell.Commands.CopyItemCommand
copy-item: Неверное имя пользователя или пароль.

Любые советы, почему я получаю эту ошибку, будут очень благодарны!

1 ответ

Решение

Спасибо за вашу помощь @TheIncorrigible1 после прочтения вашего комментария я обнаружил проблему!

Проблема заключалась в том, что скрипт, запущенный plc, запускается с другим пользователем, чем скрипт, запускаемый вручную.

Поэтому обходной путь - сначала запустить powershell с правильными учетными данными с помощью другого сценария. Например вот так:

$ usr = 'XXX'

$ paswrd = 'XXX'

$ securePassword = ConvertTo-SecureString $ paswrd -AsPlainText -Force

$ credential = New-Object System.Management.Automation.PSCredential $ usr, $ securePassword

$ args = "/ путь к вашему скрипту"

Запуск-процесс powershell.exe -Credential $credential -ArgumentList ("-file $args")

недостаток... пароль в виде обычного текста...

Другие вопросы по тегам