Может ли wix запросить имя пользователя и пароль для службы Windows? - PullRequest
12 голосов
/ 20 марта 2011

Я использую Wix для установки службы Windows.Служба должна будет работать под учетной записью не системной / службы, настроенной пользователем.

Можно ли попросить ввести имя пользователя / пароль для входа в службу?

Ответы [ 4 ]

8 голосов
/ 04 июня 2013

Расширения Community MSI на GitHub содержат диалог ServiceCredDlg для запроса имени пользователя и пароля.В соответствии с документами , он может проверить, что учетные данные действительны, и что у пользователя есть права входа в систему как услуга.

5 голосов
/ 20 марта 2011

Да, но он не встроенный. Вы можете настроить графический интерфейс в WiX (который не слишком интуитивен), где вы можете запросить любой параметр, который вам понадобится на последующих этапах.

Во-первых, проверьте, как создать графический интерфейс пользователя, который устанавливает пользовательские свойства, следуя этим рекомендациям, гарантируя, что ваш графический интерфейс пользователя заполняет свойства SERVICEACCOUNT и SERVICEPASSWORD. Затем используйте элемент ServiceInstall с этими свойствами, как показано здесь .

4 голосов
/ 20 марта 2011

WiX не имеет (или, по крайней мере, не имеет) ничего хорошего из коробки для того, что вы ищете. Лучший вариант, который мне известен, - это бросить свой собственный.

http://www.geekproject.com/showtopic.aspx?ID=94

0 голосов
/ 18 февраля 2014

Вы можете установить ПУБЛИЧНЫЕ СВОЙСТВА (верхний регистр) с учетными данными в командной строке и использовать их для установки службы.

msiexec.exe / I "setup.msi" / QN USER = "имя пользователя" PASS = "пароль"

A настраиваемое действие также можно использовать для получения этих значений от пользователя во время интерактивной установки, но если вы сделаете это, не забудьте настроить отображение сообщения в соответствии с настройками Значение UILevel . Отображение окна сообщения из пользовательского действия при автоматической установке считается серьезной ошибкой установки:

  • INSTALLUILEVEL_NONE 2 Полностью бесшумная установка.
  • INSTALLUILEVEL_BASIC 3 Простой прогресс и обработка ошибок.
  • INSTALLUILEVEL_REDUCED 4 Созданный пользовательский интерфейс, диалоговые окна мастера отключены.
  • INSTALLUILEVEL_FULL 5 Авторский интерфейс с мастерами, прогрессом, ошибками.

Возможно, лучший вариант - показать диалоговое окно в интерактивной установке и отказаться от установки без вывода сообщений, если эти свойства не заданы в командной строке. Это простое настраиваемое действие для проверки значений свойств USER и PASS.

И, очевидно, не рекомендуется использовать учетные записи пользователей для запуска служб.

...