Программирование для Windows NT (том 2)



         

Установка сервиса - часть 2


/p>

Через параметр dwServiceType необходимо передать тип сервиса. Здесь вы можете указывать те же самые флаги, что и в поле dwServiceType структуры SERVICE_STATUS, описанной выше:

Флаг

Описание

SERVICE_WIN32_OWN_PROCESS

Сервис работает как отдельный процесс

SERVICE_WIN32_SHARE_PROCESS

Сервис работает вместе с другими сервисами в рамках одного и того же процесса

SERVICE_KERNEL_DRIVER

Сервис представляет собой драйвер операционной системы Microsoft Windows NT

SERVICE_FILE_SYSTEM_DRIVER

Сервис является драйвером файловой системы

SERVICE_INTERACTIVE_PROCESS 

Сервисный процесс может взаимодействовать с программным интерфейсом рабочего стола Desktop

В параметре dwStartType указывается один из следующих способов запуска сервиса:

Константа

Способ запуска

SERVICE_BOOT_START

Используется только для сервисов типа SERVICE_KERNEL_DRIVER или SERVICE_FILE_SYSTEM_DRIVER (драйверы). Указывает, что драйвер должен загружаться при загрузке операционной системы

SERVICE_SYSTEM_START

Аналогично предыдущему, но драйвер запускается при помощи функции IoInitSystem, не описанной в нашей книге

SERVICE_AUTO_START

Драйвер или обычный сервис, который запускается при загрузке операционной системы

SERVICE_DEMAND_START

Драйвер или обычный сервис, который запускается функцией StartService

SERVICE_DISABLED

Отключение возможности запуска драйвера или обычного сервиса

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

Значение

Реакция на ошибку

SERVICE_ERROR_IGNORE

Протоколирование ошибки в системном журнале и продолжение процедуры запуска сервиса

SERVICE_ERROR_NORMAL

Протоколирование ошибки в системном журнале без продолжения процедуры запуска сервиса

SERVICE_ERROR_SEVERE

Протоколирование ошибки в системном журнале. Если это возможно, используется конфигурация, с которой сервис успешно был запущен в прошлый раз. В противном случае система перезапускается с использованием работоспособной конфигурации

SERVICE_ERROR_CRITICAL

Криичная ошибка. Сообщение при возможности записывается в системный журнал. Операция запуска отменяется, система перезапускается с с использованием работоспособной конфигурации

<


Содержание  Назад  Вперед