Section courante

A propos

Section administrative du site

Les services Windows

Les services Windows, anciennement appelés services NT, permettent de créer des applications exécutables de longue durée s'exécutant dans leurs propres sessions Windows. Ces services peuvent être démarrés automatiquement au démarrage de l'ordinateur, peuvent être mis en pause et redémarrés et ne montrent aucune interface utilisateur. Ces fonctionnalités rendent les services idéaux pour une utilisation sur un serveur ou chaque fois que vous avez besoin de fonctionnalités de longue durée n'interférant pas avec les autres utilisateurs travaillant sur le même ordinateur. Vous pouvez également exécuter des services dans le contexte de sécurité d'un compte d'utilisateur spécifique différent de l'utilisateur connecté ou du compte d'ordinateur par défaut.

Vous pouvez facilement créer des services en créant une application installée en tant que service. Par exemple, supposons que vous souhaitiez surveiller les données du compteur de performances et réagir aux valeurs de seuil. Vous pouvez écrire une application de service Windows écoutant les données du compteur de performances, déployer l'application et commencer à collecter et analyser les données.

Vous pouvez aussi créer votre service en tant que projet Visual Studio, en définissant un code contrôlant quelles commandes peuvent être envoyées au service et quelles actions doivent être entreprises lorsque ces commandes sont reçues. Les commandes pouvant être envoyées à un service incluent le démarrage, la mise en pause, la reprise et l'arrêt du service; vous pouvez également exécuter des commandes personnalisées. Après avoir créé et généré l'application, vous pouvez l'installer en exécutant l'utilitaire de ligne de commande InstallUtil.exe et en transmettant le chemin d'accès au fichier exécutable du service. Vous pouvez ensuite utiliser le Gestionnaire de contrôle des services pour démarrer, arrêter, suspendre, reprendre et configurer votre service. Vous pouvez également accomplir plusieurs de ces mêmes tâches dans le noeud de services de l'explorateur de serveurs ou à l'aide de la classe ServiceController.

Création d'un service en ligne de commande

Pour créer une service en ligne de commande, vous devez aller ouvrir un prompt cmd en cliquant sur le menu démarré (ou avec la combinaison de touche Ctrl+Esc) et exécuter Command Prompt en mode administrateur. Vous devez avoir des privilèges administrateurs pour pouvoir lancer la commande. Une fois dans le prompt, vous tapez la commande SC selon la syntaxe suivante :

SC CREATE servicename Displayname="servicename" binpath= "srvstart.exe servicename -c chemin-au-fichier-de-configuration=service" start=starttype

La valeur de servicename permet d'indiquer le nom du service que vous souhaitez avoir. La valeur starttype permet d'indiquer le mode de démarrage, en général, vous souhaiterez utiliser auto afin que le service démarre automatiquement avec Windows. L'exemple suivant permet de créer un service nommé "GladirTest" avec le nom affiché «Service Gladir de Test» dans l'application «services.msc» :

SC CREATE GladirTest DisplayName="Service Gladir de Test" binpath= "nodex.exe build/code.c" start=auto

si l'opération s'est correctement effectué, vous devriez avoir le message suivant :

[SC] CreateService réussite(s)

Suppression d'un service en ligne de commande

Si vous souhaitez supprimer le nom du service «Gladir», vous devez tapez la ligne de commande suivante :

SC DELETE GladirTest

si l'opération s'est correctement effectué, vous devriez avoir le message suivant :

[SC] DeleteService réussite(s)

Service Windows avec PowerShell

L'interpréteur de commande offre une variété de commande permettant de connaître et de gérer les services Windows. Ainsi, par exemple, il est possible de connaître les services Windows à l'aide de la commande suivante :

Get-Service


Dernière mise à jour : Mardi, le 16 mars 2021