Dans les systèmes d'exploitation Windows NT , un service Windows est un programme informatique qui fonctionne en arrière-plan . Son concept est similaire à celui d'un démon Unix . Un service Windows doit se conformer aux règles et protocoles d'interface du Service Control Manager , le composant responsable de la gestion des services Windows. C'est l'application Services and Controller, services.exe, qui lance tous les services et gère leurs actions, telles que le démarrage, la fin, etc.
Les services Windows peuvent être configurés pour démarrer au démarrage du système d'exploitation et s'exécuter en arrière-plan tant que Windows est en cours d'exécution. Ils peuvent également être démarrés manuellement ou par un événement. Les systèmes d'exploitation Windows NT incluent de nombreux services qui s'exécutent dans le contexte de trois comptes d'utilisateur : Système, Service réseau et Service local. Ces composants Windows sont souvent associés au processus hôte pour les services Windows . Étant donné que les services Windows fonctionnent dans le contexte de leurs propres comptes d'utilisateur dédiés, ils peuvent fonctionner lorsqu'un utilisateur n'est pas connecté.
Avant Windows Vista , les services installés en tant que « service interactif » pouvaient interagir avec le bureau Windows et afficher une interface utilisateur graphique . Cependant, sous Windows Vista, les services interactifs sont obsolètes et risquent de ne pas fonctionner correctement, en raison du renforcement des services Windows .
Administration
Les administrateurs Windows peuvent gérer les services via :
- Le composant logiciel enfichable Services (trouvé sous Outils d'administration dans le Panneau de configuration de Windows )
- Sc.exe
- Windows PowerShell
Composant logiciel enfichable Services
Le composant logiciel enfichable Services, basé sur la console de gestion Microsoft , peut se connecter à l'ordinateur local ou à un ordinateur distant sur le réseau, permettant aux utilisateurs de :
- afficher une liste des services installés avec le nom du service, les descriptions et la configuration
- démarrer, arrêter, mettre en pause ou redémarrer des services
- spécifier les paramètres de service le cas échéant
- modifier le type de démarrage. Les types de démarrage acceptables incluent :
- Automatique : Le service démarre au démarrage du système.
- Automatique (différé) : le service démarre peu de temps après la fin du démarrage du système. Cette option a été introduite dans Windows Vista dans le but de réduire le temps de démarrage du bureau. Cependant, tous les services ne prennent pas en charge le démarrage différé.
- Manuel : Le service démarre uniquement lorsqu'il est explicitement appelé.
- Désactivé : le service est désactivé. Il ne fonctionnera pas.
- modifier le contexte du compte utilisateur dans lequel le service fonctionne
- configurer les actions de récupération à entreprendre en cas de défaillance d'un service
- inspecter les dépendances des services, découvrir quels services ou pilotes de périphériques dépendent d'un service donné ou de quels services ou pilotes de périphériques dépend un service donné
- exporter la liste des services sous forme de fichier texte ou de fichier CSV
Ligne de commande
L' outil de ligne de commande pour gérer les services Windows est sc.exe. Il est disponible pour toutes les versions de Windows NT . Cet utilitaire est inclus dans Windows XP et versions ultérieures ainsi que dans ReactOS .
La scportée de gestion de la commande est limitée à l'ordinateur local. Cependant, à partir de Windows Server 2003 , non seulement elle peut sceffectuer toutes les opérations du composant logiciel enfichable Services, mais elle peut également installer et désinstaller des services.
La sccommande duplique certaines fonctionnalités de la netcommande.
La version ReactOS a été développée par Ged Murphy et est sous licence GPL .
| Nom | Description | Prise en charge de Windows | Prise en charge de ReactOS |
|---|---|---|---|
| requête | Afficher l'état du service | Oui | Oui |
| requêteex | Afficher les informations de service étendues (par exemple, PID, indicateurs) | Oui | Oui |
| commencer | Démarrer un service | Oui | Oui |
| pause | Suspendre un service | Oui | Oui |
| interroger | Envoyer une demande de contrôle INTERROGATE à un service | Oui | Oui |
| continuer | Continuer un service | Oui | Oui |
| arrêt | Arrêter un service | Oui | Oui |
| configuration | modifier définitivement la configuration du service | Oui | Oui |
| description | Modifier une description de service | Oui | Oui |
| échec | Modifier les actions entreprises par un service en cas de panne | Oui | Oui |
| indicateur d'échec | Oui | Non | |
| type de sid | Oui | Non | |
| privés | Oui | Non | |
| compte géré | Oui | Non | |
| QC | Afficher la configuration du service (par exemple, les dépendances, le chemin complet, etc.) | Oui | Oui |
| qdescription | Interroger une description de service | Oui | Oui |
| qéchec | Oui | Non | |
| qfailureflag | Oui | Non | |
| qsidtype | Oui | Non | |
| qprivs | Oui | Non | |
| qtriggerinfo | Oui | Non | |
| nœud préféré q | Oui | Non | |
| compte géré q | Oui | Non | |
| qprotection | Oui | Non | |
| service de questions | Oui | Non | |
| supprimer | Supprimer un service | Oui | Oui |
| créer | Créer un service | Oui | Oui |
| contrôle | Envoyer un contrôle à un service | Oui | Oui |
| sdshow | Afficher le descripteur de sécurité d'un service à l'aide de SDDL | Oui | Oui |
| jeu de données SD | Définit le descripteur de sécurité d'un service à l'aide de SDDL | Oui | Oui |
| montre | Oui | Non | |
| informations sur le déclencheur | Oui | Non | |
| nœud préféré | Oui | Non | |
| Obtenir le nom d'affichage | Afficher le service DisplayName | Oui | Oui |
| Obtenir le nom de la clé | Afficher le service ServiceKeyName | Oui | Oui |
| EnumDepend | Afficher les dépendances du service | Oui | Oui |
| botte | Oui | Non | |
| Verrouillage | Oui | Non | |
| Verrouillage des requêtes | Oui | Non ExemplesL'exemple suivant énumère l'état des services et des pilotes actifs. C:\> sc requête L'exemple suivant affiche l'état du service de journal des événements Windows . C:\> journal des événements de la requête sc PowerShellLe module PowerShell Microsoft.PowerShell.Management (inclus avec Windows) dispose de plusieurs applets de commande qui peuvent être utilisées pour gérer les services Windows :
Autres outils de gestionWindows inclut également des composants qui peuvent effectuer un sous-ensemble de ce que font le composant logiciel enfichable, Sc.exe et PowerShell. La InstallationLes services Windows sont installés et supprimés via des scripts d'installation *.INF par SetupAPI ; un service installé peut être démarré immédiatement après son installation, et un service en cours d'exécution peut être arrêté avant sa désinstallation. DéveloppementÉcriture de services natifsPour qu'un programme s'exécute en tant que service Windows, il doit être écrit pour gérer les messages de démarrage, d'arrêt et de pause du service provenant du gestionnaire de contrôle des services (SCM) via l'API des services système. SCM est le composant Windows responsable de la gestion des processus de service. Encapsuler des applications en tant que serviceLe kit de ressources Windows pour Windows NT 3.51 , Windows NT 4.0 et Windows 2000 fournit des outils pour contrôler l'utilisation et l'enregistrement des services : |