Powershell - запустить установку .MSI с аргументами, но Windows Установщик выскакивает и ничего не происходит - PullRequest
0 голосов
/ 30 марта 2020

Я использую Powershell 7 для установки приложения .MSI с некоторыми аргументами (такая же установка с такими же аргументами прошла хорошо при использовании, например, инструмента Ansible). Каждый раз, когда я пытаюсь запустить скрипт, я получаю всплывающее окно Windows Installer, о котором кто-то упоминал (кто-то писал: «Это всплывающее окно - это всплывающая подсказка msiexe c. Она говорит, что вам не нравится ваша командная строка») , Я пробовал несколько разных заказов, но всегда получал этот сбой. Я видел, что была похожая проблема, но это была совершенно другая проблема с принятием условий лицензии, у меня нет проблемы с этим.

Мои аргументы таковы:

$webDeployInstallerFilePath = "C:\fa_components\PRIME\SUN TEST 2020.1 (x64).msi"
$switch2 = @(
    "i `"$webDeployInstallerFilePath`""        
    "/quiet"
    "passive"
    "/l* C:\tmp_installation\logs\Prime_log.txt"
    "INSTALLDIR=C:\"
    "FRONTINIDIR=C:\ProgramData\Front\64bit\ini\"
    "FRONTINILOG=C:\ProgramData\Front\64bit\log\"
    "PRIME=C:\TEST Arena\"
    "ProgramMenuFolder=C:\ProgramData\"
    "COMMONAPPDATA_FRONTDIR=C:\ProgramData\Front\"
    "COMMONAPPDATA_FRONT64BITDIR=C:\ProgramData\Front\64bit\"
    "CommonAppDataFolder=C:\ProgramData\"

)

Программа требует, чтобы некоторые из них были необходимы argumets. Я пытаюсь выполнить его с помощью:

Start-Process msiexec.exe -ArgumentList $switch2 -Wait

Я пытаюсь запустить свой скрипт .ps1, но, как я уже говорил, я получаю только картинку с установщиком windows, и ничего не происходит (вы можете увидеть это по следующей ссылке) windows Изображение установщика

Заранее спасибо!

1 Ответ

0 голосов
/ 02 апреля 2020

Да, есть несколько проблем.

  • "i" должно быть "/ i" (обратите внимание на прямую sla sh)
  • "пассивный" должен быть "/ пассивный "(обратите внимание на впереди sla sh)
  • Поскольку в пути есть пробел," PRIME = C: \ TEST Arena \ "должно быть" PRIME = "C:\TEST Arena\ ""

Примеры здесь: https://www.alkanesolutions.co.uk/2018/07/18/install-and-uninstall-msi-using-powershell/

$switch2 = @(
    "/i `"$webDeployInstallerFilePath`""        
    "/quiet"
    "/passive"
    "/l* C:\tmp_installation\logs\Prime_log.txt"
    "INSTALLDIR=C:\"
    "FRONTINIDIR=C:\ProgramData\Front\64bit\ini\"
    "FRONTINILOG=C:\ProgramData\Front\64bit\log\"
    "PRIME=`"C:\TEST Arena\`""
    "ProgramMenuFolder=C:\ProgramData\"
    "COMMONAPPDATA_FRONTDIR=C:\ProgramData\Front\"
    "COMMONAPPDATA_FRONT64BITDIR=C:\ProgramData\Front\64bit\"
    "CommonAppDataFolder=C:\ProgramData\"

)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...