Question

Je créé un service Windows et souhaite envoyer une commande + B + C ou de contrôle valeur de contrôle. Je sais que je peux utiliser le contrôle sc, mais je me demandais s'il y avait un endroit qui contenait toutes les valeurs possibles que je peux envoyer. Il existe une méthode d'arrêt sc, mais je suis à la recherche d'envoyer un caractère de contrôle.

Était-ce utile?

La solution

Le « gracefulness » d'un arrêt de service dépend tout sur la façon dont votre service répond à la demande. Si vous écrivez le service, alors vous avez le plein contrôle sur la façon dont votre service répond lorsque le SCM envoie une requête « stop ». Après avoir reçu la demande, vous disposez d'un temps limité (Windows décide combien) pour arrêter votre service et de répondre à la demande de contrôle. Si vous ne parvenez pas à répondre en temps opportun, Windows peut mettre fin à votre processus de service disgracieuse.

Une application console peut répondre à une demande Ctrl + C en utilisant le SetConsoleCtrlHandler() fonction. Cependant, les processus de service ne sont pas exécutés à l'intérieur d'une fenêtre de la console, de sorte que ce gestionnaire est tout à fait inapplicable aux services.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top