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
Startservice ou Stopservice en premier parametre
Code : Sélectionner tout - Visualiser dans une fenêtre à part d:\Testludo.vbs 'Startservice' 'helpsvc'
'nom-du-service-windows' en second parametre
Script VBS
Est que le fait d''avoir un . precedent mon premier argument gene et si oui comment contourner cela
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
Merci d'avance
Ludovic
Partager