IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage Delphi Discussion :

Status d'un service Win


Sujet :

Langage Delphi

  1. #1
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Novembre 2008
    Messages
    36
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2008
    Messages : 36
    Points : 35
    Points
    35
    Par défaut Status d'un service Win
    Bonjour à tous,


    J'ai écrit une procédure qui permet de vérifier le status d'un service Windows.
    Mais il ne reconnait pas une variable Handle_SCM.
    Dans la FAQ, je n'ai pas trouvé de déclaration de cette variable.
    je ne sais pas comment faire.



    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    procedure TForm1.StatusService(SvName:string);
          var
            SvHandle:SC_Handle; // handle du service
            SvStatus:TServiceStatus;
            SvEtat:Word;
          begin
            SvHandle:= OpenService(Handle_SCM, PChar(SvName), SERVICE_ALL_ACCESS);
            QueryServiceStatus(SvHandle, SvStatus);
            SvEtat:=SvStatus.dwCurrentState;
          end;

  2. #2
    Rédacteur
    Avatar de evarisnea
    Homme Profil pro
    Ingénieur intégration
    Inscrit en
    Juin 2005
    Messages
    1 957
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Cameroun

    Informations professionnelles :
    Activité : Ingénieur intégration
    Secteur : Transports

    Informations forums :
    Inscription : Juin 2005
    Messages : 1 957
    Points : 4 384
    Points
    4 384
    Par défaut

    selon l'api Windows, Handle_SCM est le handle de la base de données du Service Control Manager retourné par la fonction OpenSCManager.

    je te propose donc d'adapter ton code ainsi qu'il suit:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    procedure TForm1.StatusService(SvName:string);
          var
            SvHandle:SC_Handle; // handle du service
            Handle_SCM:THandle;
            SvStatus:TServiceStatus;
            SvEtat:Word;
          begin
            Handle_SCM := OpenSCManager(nil, nil, 0);
            SvHandle:= OpenService(Handle_SCM, PChar(SvName), SERVICE_ALL_ACCESS);
            QueryServiceStatus(SvHandle, SvStatus);
            SvEtat:=SvStatus.dwCurrentState;
            CloseServiceHandle(SvHandle);
            CloseServiceHandle(Handle_SCM);
          end;

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [G][Service Win.] Enregistrer à l'install
    Par bilb0t dans le forum Général Dotnet
    Réponses: 5
    Dernier message: 19/08/2009, 16h01
  2. Réponses: 1
    Dernier message: 02/08/2006, 16h18
  3. Réponses: 4
    Dernier message: 19/06/2006, 14h52
  4. Réponses: 6
    Dernier message: 25/02/2006, 15h30
  5. Réponses: 30
    Dernier message: 02/12/2005, 15h30

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo