Может ли wix запрашивать имя пользователя/пароль для Windows?

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

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

Ответ 1

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

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

Ответ 2

Сообщество MSI Extensions в GitHub содержит диалоговое окно ServiceCredDlg для запроса имени пользователя и пароля. Согласно docs, он может проверить, что учетные данные действительны и что пользователь имеет права входа в систему как услуги.

Ответ 3

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

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

Ответ 4

Вы можете установить PUBLIC PROPERTIES (верхний регистр) с учетными данными в командной строке и использовать их для установки службы.

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

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

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

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

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