Visual Studio 2010: установщик службы Windows - как указать учетные данные службы - PullRequest
1 голос
/ 11 июля 2011

Я создал службу Windows и связанный установщик с использованием Visual Studio 2010. Все это работает нормально, и установщик создает службу и устанавливает для ее учетных данных входа в систему локальную систему - как указано в коде ServiceInstaller вПроект.

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

Может кто-нибудь дать совет, как это сделать?Я предполагаю, что это будет включать в себя библиотеку пользовательских действий или что-то подобное.

Ответы [ 2 ]

0 голосов
/ 19 апреля 2012

Просто установите имя пользователя и пароль пустыми. Это будет способствовать диалогу для ввода.

0 голосов
/ 11 июля 2011

Сначала вам нужно будет добавить пользовательский диалог, который получает учетные данные службы. Возможно, этот урок поможет: http://www.codeproject.com/KB/install/vsSetupCustomDialogs.aspx

Свойства установщика, связанные с полями редактирования вашего сервиса, можно затем использовать для вашего сервиса. Действия класса установщика не имеют прямого доступа к свойствам установщика. Поэтому вам нужно будет использовать другое настраиваемое действие. Например, вы можете запустить sc.exe с помощью специальной командной строки, которая задает учетные данные службы.

Наконец, вам необходимо убедиться, что политика Вход в систему как служба настроена для указанной учетной записи пользователя. Возможно, это поможет: WIX: восстановление службы Windows завершилось неудачно из-за отсутствия прав + как определить режим восстановления?

...