Служебные программы

Программа службы содержит исполняемый код для одной или нескольких служб. Программа-служба, созданная с типом SERVICE_WIN32_OWN_PROCESS, содержит код только для одной службы. Программа-служба, созданная с типом SERVICE_WIN32_SHARE_PROCESS содержит код для нескольких служб, что позволяет им совместно использовать код. Примером служебной программы, которая делает это, является универсальный процесс узла службы, Svchost.exe, в котором размещаются внутренние службы Windows. Обратите внимание, что Svchost.exe зарезервированы для использования операционной системой и не должны использоваться службами, не работающими в Windows. Вместо этого разработчики должны реализовывать собственные программы размещения служб.

Программу-службу можно настроить для выполнения в контексте учетной записи пользователя из встроенного (локального), основного или доверенного домена. Его также можно настроить для запуска в специальной учетной записи пользователя службы.

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

Эти разделы не относятся к службам драйверов. Требования к интерфейсу служб драйверов см. в разделе Комплект драйверов Windows (WDK).

Служба выполняется как фоновый процесс, который может повлиять на производительность системы, скорость реагирования, энергоэффективность и безопасность. Рекомендации по оптимизации служб см. в статье Разработка эффективных фоновых процессов для Windows. В следующих разделах описываются дополнительные аспекты программирования.

Обратите внимание, что если программа-служба функционирует как RPC-сервер, она должна использовать динамические конечные точки и взаимную проверку подлинности.