Не найден позиционный параметр, который принимает аргумент / установочный скрипт - PullRequest
0 голосов
/ 02 июля 2018

Я студент и очень плохо знаком с PowerShell.

Я пытаюсь загрузить мою msi удаленно, но все еще сталкиваюсь с ошибкой.

A positional parameter cannot be found that accepts argument '\\share\folder\Path to msi'.
    + CategoryInfo          : InvalidArgument: (:) [Start-Process], ParameterBindingException
    + FullyQualifiedErrorId : PositionalParameterNotFound,Microsoft.PowerShell.Commands.StartProcessCommand
    + PSComputerName        : RemoteDesktopName

Вот мой сценарий:

$msi = @(\\share\folder\Path to msi)

Invoke-Command -ComputerName PCname -ScriptBlock {param($msi) Start-Process msiexec.exe /i "\\Path to msi" /qn /passive -Wait 
 Start-Sleep 5 } -ArgumentList $msi

Может ли кто-нибудь помочь мне? Любая обратная связь будет принята с благодарностью.

1 Ответ

0 голосов
/ 02 июля 2018

Вам не нужно делать $msi массивом, если единственное, что вы анализируете, это строка пути. Кроме того, зачем вам использовать "\Path to msi" внутри Invoke-Command, если вы анализируете $msi?

Редактировать: Вы, вероятно, должны проанализировать аргументы для msiexec.exe через -Argumentlist.

Попробуйте это:

$msi = "Path to msi"

Invoke-Command -ComputerName PCname -ScriptBlock {param($msi) Start-Process msiexec.exe -Wait -ArgumentList "/I $msi /qn /passive"} -ArgumentList $msi
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...