Bonjour à tous
je voudrai savoir si il est possible de joindre deux "tables" WMI différentes pour obtenir leur résultat ?

Je voudrais joindre les deux résultats comme si on pouvait faire un "AND"

Je sais extraire chaques objets de chaque table wmi séparément et j'ai une information identique qui peut lier mes deux tables wmi et sortir toutes les informations.

Mon code de base est la suivant :
objItem.P1 et objItem.Last_Detection est l'objet commun à deux wmi.

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
strComputer = "."
     Set oFSO = CreateObject("Scripting.FileSystemObject")
     OpenFile = "config.txt"
     Set oLogFile = oFSO.CreateTextFile(OpenFile, True)
 
     Set objWMIService = GetObject("winmgmts:\\" & strComputer & "\root\CIMV2\Applications\Avira_AntiVir")
     Set colItems = objWMIService.ExecQuery( _
         "SELECT * FROM Event_Log",,48)
     For Each objItem in colItems
         oLogFile.Writeline "P1: " & objItem.P1
         oLogFile.Writeline "P2: " & objItem.P2
         oLogFile.Writeline "P3: " & objItem.P3
     Next
 
 
     Set objWMIService = GetObject("winmgmts:\\" & strComputer & "\root\CIMV2\Applications\Avira_AntiVir")
     Set colItems = objWMIService.ExecQuery( _
         "SELECT * FROM Scanner",,48)
     For Each objItem in colItems
         oLogFile.Writeline "Last_Detection: " & objItem.Last_Detection
         oLogFile.Writeline "Number_of_Files_quarantine: " & objItem.Number_of_Files_quarantine
         oLogFile.Writeline "Number_of_Files_removed: " & objItem.Number_of_Files_removed
         oLogFile.Writeline "Number_of_Files_renamed: " & objItem.Number_of_Files_renamed
         oLogFile.Writeline "Number_of_Files_repaired: " & objItem.Number_of_Files_repaired
         oLogFile.Writeline "Number_of_Files_wiped: " & objItem.Number_of_Files_wiped
         oLogFile.Writeline "Scan_Date: " & objItem.Scan_Date
     Next
Sur un forum US, on m'a peut être dit d'aller voir du coté de ASSOCIATORS Or mais je n'arrive pas à l'utiliser....
est ce que c'est possible de contacter la première base pour extraire les informations de la seconde via leur point commun ?
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
 
strComputer = "."
Set oFSO = CreateObject("Scripting.FileSystemObject")
OpenFile = "config.txt"
Set oLogFile = oFSO.CreateTextFile(OpenFile, True)
 
Set objWMIService = GetObject("winmgmts:\\" & strComputer & "\root\CIMV2\Applications\Avira_AntiVir")
 
 'sQuery = "SELECT * FROM Event_Log"
     'Set colItems = objWMIService.ExecQuery(sQuery)
infect = "TR/Koobface.20992.A"     
     'sQuery = "SELECT * FROM Scanner"
     Set colItems = objWMIService.ExecQuery("ASSOCIATORS OF {Event_Log.P1='" & infect & "'}" & "WHERE AssocClass = Scanner " & "Role=Last_Detection")
 
 
    For Each objItem in colItems
 
         oLogFile.Writeline "Last_Detection: " & objItem.Last_Detection
         oLogFile.Writeline "P2: " & objItem.P2
         oLogFile.Writeline "P3: " & objItem.P1
         oLogFile.Writeline "Number_of_Files_quarantine: " & objItem.Number_of_Files_quarantine
         oLogFile.Writeline "Number_of_Files_removed: " & objItem.Number_of_Files_removed
         oLogFile.Writeline "Number_of_Files_renamed: " & objItem.Number_of_Files_renamed
         oLogFile.Writeline "Number_of_Files_repaired: " & objItem.Number_of_Files_repaired
         oLogFile.Writeline "Number_of_Files_wiped: " & objItem.Number_of_Files_wiped
         oLogFile.Writeline "Scan_Date: " & objItem.Scan_Date
 
         next