ControlService

Prototypes

BOOL ControlService(SC_HANDLE HandleService, DWORD ModeDeControle, LPSERVICE_STATUS Statut);

Description

Contrôle le service identifié par le handle HandleService.

Le mode de contrôle ModeDAcces est le plus souvent SERVICE_STOP_PENDING pour arrêter le service.

Le statut du service est renseigné dans Statut.

Exemple

#include <windows.h>
#include <winbase.h>

SC_HANDLE HandleGestionnaire;
SC_HANDLE HandleService;
SERVICE_STATUS Statut;

Handle=OpenSCManager(NULL, NULL, GENERIC_EXECUTE);
if (!Handle) ...
HandleService=OpenService(HandleGestionnaire, "MonService", SERVICE_STOP);
if (!HandleService) memset(&Statut, 0, sizeof(SERVICE_STATUS));
if (!ControlService(HandleService, SERVICE_STOP_PENDING, &Statut)) ...
CloseServiceHandle(HandleService);
CloseServiceHandle(HandleGestionnaire);

Avertissement

Si le service n'a pu être contrôlé, le résultat est Faux.

Bien s'assurer que le gestionnaire de services a été correctement ouvert.

Bien s'assurer que le service a été correctement ouvert.

Voir aussi

OpenService pour ouvrir le service. StartService pour arrêter le service. QueryServiceStatus pour lire l'état d'activité du service. CloseServiceHandle pour fermer le service.