[R] Infos de la fenêtre DOS (cmd)

Aide et conseils concernant AutoIt et ses outils.
Règles du forum
.
Répondre
Avatar du membre
mafooley
Niveau 2
Niveau 2
Messages : 27
Enregistré le : dim. 24 août 2008 22:04
Status : Hors ligne

[R] Infos de la fenêtre DOS (cmd)

#1

Message par mafooley »

Bonjour tout le monde,

je reviens avec une nouvelle demande qui, j'espère, ne paraitra pas stupide... :wink:
Dans le cadre de la réalisation d'un petit script, je cherche à connaitre l'état d'un service Windows et de le démarrer le cas échéant.

Je n'ai pas trouver le moyen de contrôler l'état des services à partir de contrôles Autoit.
J'essaye donc de passer par les commandes Net.exe via le DOS.
Pour connaitre quels sont les services déjà actifs, je passe par:

Code : Tout sélectionner

_RunDos ("net start")
La liste des services actifs apparait (du mois en mémoire car la fenêtre DOS ne souvre pas)
Ma question est la suivante: existe t-il un moyen de rechercher une chaîne de caractères dans la fenêtre DOS (ou la mémoire) pour voir si, par exemple "Connexion réseau" apparait ?

Peut-être envoyer cette liste de services actifs dans un fichier texte et utiliser la commande DOS findstr, mais le fait d'envoyer cette liste vers un fichier consiste à la lire donc... :?

Voilà, j'espère avoir été le plus clair possible et merci d'avance.

Maf
Modifié en dernier par mafooley le mer. 18 août 2010 14:21, modifié 1 fois.
Avatar du membre
Yogui
Niveau 9
Niveau 9
Messages : 689
Enregistré le : ven. 18 avr. 2008 17:29
Status : Hors ligne

Re: [..] Infos de la fenêtre DOS (cmd)

#2

Message par Yogui »

il existe un UDF Services cf pièce jointe

la fonction _Service_GetState permet de connaitre son état

Code : Tout sélectionner

#include <Services.au3>
    $etatserv = _Service_GetState("tlntsvr", "localhost")
MsgBox(0,"",$etatserv)
Fichiers joints
Services.au3
Service.au3
(47.66 Kio) Téléchargé 486 fois
Avatar du membre
mafooley
Niveau 2
Niveau 2
Messages : 27
Enregistré le : dim. 24 août 2008 22:04
Status : Hors ligne

Re: [..] Infos de la fenêtre DOS (cmd)

#3

Message par mafooley »

Génial cet UDF.

Merci beaucoup Yogui.

Du coup, je n'ai même plus besoins de passer par:

Code : Tout sélectionner

_RunDos ("net start mon_service")
ou

Code : Tout sélectionner

_RunDos ("net stop mon_service")
Et plein d'autres fonctions en bonus, Youpie !!! -----> [R] :D

Maf
Répondre