}

 }

}

ServiceProcessInstaller устанавливает исполняемый файл, который реализует класс ServiceBase. ServiceProcessInstaller имеет свойства для всего процесса и для всех служб внутри процесса:

Свойства ServiceProcessInstaller
Username, Password Указывают учетную запись пользователя, с которой выполняется служба, если свойство RunUnderSystemAccount задано как false.
Account С помощью этого свойства можно определить, будет ли служба выполняться с системной учетной записью.
HelpText Свойство только для чтения, которое возвращает справочный текст для задания имени пользователя и пароля.

ServiceInstaller является классом, необходимым для каждой службы. Он имеет свойства, уникальные для каждой службы внутри процесса: StartType, DisplayName, ServiceName и ServiceDependedOn:

Свойства ServiceInstaller
StartType Указывает, запускается ли служба автоматически или вручную. Возможные значения: ServiceStartMode.Automatic, ServiceStartMode.Manual, ServiceStartMode.Disabled.
DisplayName Является именем службы, которое выводится пользователю. Это имя используется также многими утилитами управления для контроля и мониторинга службы.
ServiceName Является именем службы. Это значение должно быть идентично свойству ServiceName класса ServiceBase в программе службы.
ServicesDependentOn Определяет массив служб, которые должны запускаться, прежде чем можно будет запустить эту службу. Когда служба запускается, все подчиненные службы запускаются автоматически.

Заметьте, что если изменяется имя службы в классе, производном от ServiceBase, то также необходимо изменить свойство ServiceName в объекта ServiceInstaller.

Во время тестирования задавайте StartType как Manual (вручную). Если остановка службы откажет, этот процесс нельзя уничтожить, так как он будет сконфигурирован для выполнения в контексте учетной записи System. Эту конфигурацию можно будет изменить позднее, когда все будет работать правильно.

ServiceInstallerDialog

Другим классом установки в пространстве имен System.ServiceProcess.Design является ServiceInstallerDialog. Если желательно, чтобы системный администратор вводил имя пользователя и пароль во время установки, может использоваться этот класс.

Если задать свойства Username и Password класса ServiceProcessInstaller как null, это диалоговое окно будет автоматически выводиться во время установки. Также можно в это время отменить установку:

InstallUtil

После добавления в проект классов для установки можно воспользоваться утилитой installutil.exe для установки и удаления cлужбы. Ввод командной строки для этих действий выглядит соответственно:

installutil quoteservice.exe

installutil /u quoteservice.exe

Если установка отказывает, проверьте файлы регистрации установки InstallUtil.InstallLog и <имя_службы>.InstallLog. Там можно найти очень полезную информацию, такую как 'Указанная служба уже существует'.

Клиент 

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

Добавить отзыв
ВСЕ ОТЗЫВЫ О КНИГЕ В ИЗБРАННОЕ

0

Вы можете отметить интересные вам фрагменты текста, которые будут доступны по уникальной ссылке в адресной строке браузера.

Отметить Добавить цитату