Установите скрипт Powershell с WiX - PullRequest
3 голосов
/ 05 марта 2010

У меня есть подписанный сценарий PowerShell, который я хочу развернуть на целевой машине с помощью установщика WiX. Можно ли дать сценарию права на выполнение?

С уважением, forki

  • РЕДАКТИРОВАТЬ - Кажется, мне нужно вызвать Powershell с --Command Set-ExecutionPolicy RemoteSigned, но я не могу заставить его работать. Я вижу, как открывается окно командной строки Powershell, но оно не меняет политику.
<Property Id="POWERSHELLEXE"><![CDATA[C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe]]></Property>

<CustomAction Id="AllowPS"
  Property="POWERSHELLEXE"
  ExeCommand="-NoLogo -NoProfile -Command Set-ExecutionPolicy RemoteSigned"
  Execute="deferred"
  Return="check"/>

<InstallExecuteSequence>
   ..
  <Custom Action="AllowPS" Before="InstallFinalize"/>
   ...
</InstallExecuteSequence>

Ответы [ 3 ]

3 голосов
/ 05 марта 2010

Групповая политика - лучший способ сделать это,

Я думаю, что причина того, что ваш вызов PowerShell.exe не меняет политику выполнения, заключается в том, что командлет настроен на запрос пользователя перед изменением политики выполнения. Параметр -Force инициирует изменение без дополнительной подсказки.

2 голосов
/ 05 марта 2010

Если вы используете PowerShell 2.0, в PowerShell.exe есть параметр -ExecutionPolicy. Попробуйте выполнить что-то подобное в одном настраиваемом действии, чтобы запустить скрипт.

ExeCommand="-NoLogo -NoProfile -ExecutionPolicy RemoteSigned -File <scrptpath>"
1 голос
/ 05 марта 2010

Я установлю ExecutionPolicy через групповые политики.

...