Bonjour a tous,
je galère depuis un pti bout de temps sur un truc qui pourra vous paraitre simple.
Je dois réaliser des script dont un qui doivent vérifier par WMI si les processus contenu dans un tableau tourne sur un pc distant, et l'intégrer dans une feuille excel.
Je récupere un fichier CSV qui ressemble a celui en piece jointe. Une de ses particularité c qu'il contient deux séparateur différent. Ainsi, je crée un premier tableau avec Split et ";" pour pouvoir récupéré l'élément IP d'une machine de ce tableau, et je split le troisieme élément du tableau avec le séparateur "," pour pouvoir obtenir un tableau de tous les processus que je veux surveiller pour la machine concerné.
En fait, j'ai trouvé pas mal de script mais je n'arrive pas a les intégrer correctement. Le premier peut me lire un fichier csv, le second peu me vérifier que tel processus est lancé sur une machine via WMI...j'ai essayé de les fusionner, mais j'ai une erreur a la ligne 26 de mon code...
Quelqu'un pourrais me filer un coup de main ? merci
mea culpa pour les balises...
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 Const ForReading = 1 Set objDictionary = CreateObject("Scripting.Dictionary") Set objFSO = CreateObject("Scripting.FileSystemObject") Set objTextFile = objFSO.OpenTextFile("C:\Modification CSV\data\bob45.csv", ForReading) i = 0 Do Until objTextFile.AtEndOfStream strNextLine = objTextFile.Readline 'decoupage des ligne pour obtenir mes variables : insertion = strNextLine.Split(",") insertionprocessus = insertionprocessus(2).Split(";") 'récupération de l'ip de la machine a tester strComputer = insertion(1) 'pour vérifier que les processus tournent : For m = 0 to UBound(insertionprocessus) strComputer = "." Set objWMIService = GetObject("winmgmts:" _ & "{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2") Set colProcesses = objWMIService.ExecQuery _ ("Select * from Win32_Process Where Name = insertionprocessus(m)") If colProcesses.Count = 0 Then Wscript.Echo insertionprocessus(m) " is not running." Else Wscript.Echo insertionprocessus(m) " is running." End If next i = i + 1 Loop
Partager