Programmes de service
Un programme de service contient du code exécutable pour un ou plusieurs services. Un programme de service créé avec le type SERVICE_WIN32_OWN_PROCESS contient le code d’un seul service. Un programme de service créé avec le type SERVICE_WIN32_SHARE_PROCESS contient du code pour plusieurs services, ce qui leur permet de partager du code. Un exemple de programme de service qui effectue cette opération est le processus hôte de service générique, Svchost.exe, qui héberge les services Windows internes. Notez que Svchost.exe est réservé au système d’exploitation et ne doit pas être utilisé par les services autres que Windows. Au lieu de cela, les développeurs doivent implémenter leurs propres programmes d’hébergement de service.
Un programme de service peut être configuré pour s’exécuter dans le contexte d’un compte d’utilisateur à partir du domaine intégré (local), principal ou approuvé. Il peut également être configuré pour s’exécuter dans un compte d’utilisateur de service spécial.
Les rubriques suivantes décrivent les exigences d’interface du gestionnaire de contrôle de service (SCM) qu’un programme de service doit inclure :
Ces rubriques ne s’appliquent pas aux services de pilote. Pour connaître les exigences d’interface des services de pilote, consultez windows Driver Kit (WDK).
Un service s’exécute en tant que processus en arrière-plan qui peut affecter les performances du système, la réactivité, l’efficacité énergétique et la sécurité. Pour obtenir des instructions d’optimisation des services, consultez Développement de processus en arrière-plan efficaces pour Windows. Les rubriques suivantes décrivent d’autres considérations relatives à la programmation :
- Transitions d’état du service
- Réception d’événements dans un service
- Services multithreads
- Services et registre
- Services et lecteurs redirigés
- Événements du déclencheur de service
Notez que si le programme de service fonctionne comme un serveur RPC, il doit utiliser des points de terminaison dynamiques et l’authentification mutuelle.