Bonjour

Je me retrouve encore face a une difficultée en VBS. En fait, le but est de lancé mon fichier vbs pour que celui ci demarre ou arrete un service de mon choix en lui passant des parametres suivant


Appel en DOS
Code : Sélectionner tout - Visualiser dans une fenêtre à part
d:\Testludo.vbs 'Startservice' 'helpsvc'
Startservice ou Stopservice en premier parametre
'nom-du-service-windows' en second parametre


Script VBS

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
'Variables nous remontant l'etat du service et son nom
Dim ETAT_SERVICE           'startservice  ou stopservice
Dim WIN_SERVICE             'nom-du-service-windows


Dim objWMIService, objItem, objService
Dim colListOfServices, strComputer, intSleep
strComputer = "."
intSleep = 5000
 On Error Resume Next
' NB strService is case sensitive.
Set args  = Wscript.Arguments 
'declaration des 2 variables avec la methode arg()
WIN_SERVICE = args(1)
ETAT_SERVICE = args(0)


Set objWMIService = GetObject("winmgmts:" _
& "{impersonationLevel=impersonate}!\\" _
& strComputer & "\root\cimv2")
Set colListOfServices = objWMIService.ExecQuery _
("Select * from Win32_Service Where Name ="_
& WIN_SERVICE & " ")
For Each objService in colListOfServices

'cette commande marche sans pb et arrete le service passer en dos
objService.StartService("WIN_SERVICE")

'Cette commande qui est ma commande finale ne marche pas 
objService.ETAT_SERVICE("WIN_SERVICE")

WSCript.Sleep intSleep
Next
Est que le fait d''avoir un . precedent mon premier argument gene et si oui comment contourner cela

Merci d'avance
Ludovic