Les services Windows constituent une classe spéciale de programmes configurés pour se lancer et s'exécuter en arrière-plan, généralement sans aucune interface utilisateur et sans nécessiter la connexion d'un utilisateur au PC. De nombreux joueurs et utilisateurs expérimentés les connaissent comme les éléments que vous utilisiez auparavant pour accélérer votre système, bien que cela ne soit plus vraiment nécessaire.
Le principal avantage de l’exécution d’une application en tant que service est qu’un programme peut être lancé avant la connexion d’un utilisateur. Cela peut être particulièrement important pour les applications qui fournissent des services importants que vous souhaitez être disponibles lorsque vous êtes loin de votre ordinateur.
Plex, une application de serveur multimédia capable de diffuser du contenu local vers n'importe quel appareil que vous possédez, en est un parfait exemple. Bien sûr, vous pouvez le laisser dans la barre d'état système comme un programme normal, mais que se passe-t-il si l'ordinateur redémarre en raison d'une panne de courant ou de mises à jour programmées? Tant que vous ne vous reconnecterez pas sur le PC, Plex ne serait pas disponible. C’est irritant si vous devez vous rendre dans une autre pièce pour redémarrer Plex alors que votre pop-corn a froid, et super irritant si vous êtes en déplacement et que vous essayez de diffuser vos médias sur Internet. Configurer Plex en tant que service résoudrait ce problème.
Avant de commencer, vous devez connaître quelques mises en garde importantes pour exécuter une application en tant que service:
- L'application ne mettra pas d'icône dans la barre d'état système. Si vous avez besoin d'une interface disponible régulièrement pour une application, il se peut qu'elle ne soit pas la mieux adaptée pour être exécutée en tant que service.
- Lorsque vous devez apporter des modifications à la configuration ou des mises à jour, vous devez arrêter le service, exécuter le programme en tant qu'application standard, faire ce que vous devez faire, arrêter le programme, puis redémarrer le service.
- Si le programme est déjà configuré pour s'exécuter au démarrage de Windows, vous devez le désactiver pour ne pas avoir à exécuter deux instances. La plupart des programmes ont une option dans l'interface pour basculer ce paramètre. D'autres peuvent s'ajouter eux-mêmes à votre dossier de démarrage afin que vous puissiez les supprimer.
Prêt à partir? Parlons de la manière de le configurer.
Première étape: installer SrvStart
Pour exécuter une application en tant que service, vous aurez besoin d’un petit utilitaire tiers. Il y en a plusieurs là-bas, mais notre préféré est SrvStart. Il a été conçu à l’origine pour Windows NT et fonctionnera avec n’importe quelle version de Windows à partir de Windows XP.
Pour commencer, rendez-vous sur la page de téléchargement de SrvStart et récupérez l'utilitaire. Le téléchargement ne contient que quatre fichiers (deux fichiers DLL et deux fichiers EXE). Il n’ya pas d’installateur; copiez-les plutôt dans le répertoire de votre ordinateur.
C:Windows
dossier dans votre dossier Windows principal pour “installer” SrvStart.
Deuxième étape: créer un fichier de configuration pour le nouveau service
Ensuite, vous voudrez créer un fichier de configuration que SrvStart lira pour créer le service. SrvStart vous permet de faire beaucoup de choses et vous pouvez lire tous les détails sur toutes les options de configuration sur la page de documentation. Pour cet exemple, nous n'utiliserons que deux commandes:
startup
qui spécifie le programme à lancer, et
shutdown_method
qui indique à SrvStart comment fermer le programme lorsque le service correspondant est arrêté.
Lancez le Bloc-notes et créez votre fichier de configuration en utilisant le format ci-dessous. Ici, nous utilisons Plex, mais vous pouvez créer un fichier pour n’importe quel programme que vous voulez exécuter en tant que service. le
startup
La commande spécifie simplement le chemin où réside le fichier exécutable. Pour le
shutdown_method
commande, nous utilisons le
winmessage
paramètre qui force SrvStart à envoyer un message de fermeture Windows à toutes les fenêtres ouvertes par le service.
[Plex] startup='C:Program Files (x86)PlexPlex Media ServerPlex Media Server.exe' shutdown_method=winmessage
Évidemment, ajustez le chemin et le nom en fonction du programme que vous lancez.
Troisième étape: utilisez l'invite de commande pour créer le nouveau service
L'étape suivante consiste à utiliser la commande Windows Service Controller (SC) pour créer le nouveau service en fonction des critères de votre fichier de configuration. Ouvrez l'invite de commandes en cliquant avec le bouton droit de la souris sur le menu Démarrer (ou en appuyant sur Windows + X), en choisissant «Invite de commandes (Admin)», puis en cliquant sur Oui pour lui permettre de s'exécuter avec des privilèges d'administrateur.
SC CREATE Displayname= '' binpath= 'srvstart.exe -c ' start=
Il y a plusieurs choses à noter dans cette commande. Tout d'abord, chaque signe égal (=) est suivi d'un espace. C'est nécessaire. Également
la valeur est entièrement à vous. Et enfin, pour le
valeur, vous voudrez utiliser
auto
afin que le service démarre automatiquement avec Windows.
Ainsi, dans notre exemple Plex, la commande ressemblerait à ceci:
SC CREATE Plex Displayname= 'Plex' binpath= 'srvstart.exe Plex -c C:PlexService.ini' start= auto
Oui, vous avez bien lu: j'ai utilisé
C:PlexService.ini
au lieu de
C:PlexService.ini
. La commande nécessite que vous supprimiez la barre oblique.
Lorsque vous exécutez la commande, vous devriez recevoir un message SUCCESS si tout se passe bien.