COMate / WMI und WIN32_PRODUCT Abfrage
Verfasst: 16.12.2011 13:09
Hallo Community,
ich brauch mal einen Schubs. Ich bräuchte ein Codebeispiel das mir über eine WMI Abfrage alle installierten Programmnamen und deren Installationspfad ausgibt.
Zum Einsatz kommt aktuell COMate.
Ich spiele mit folgenden Codeschnipsel herum, bekomme aber keine brauchbaren Ergebnisse raus:
(Das stammt aus einem Umbau eines Codebeispieles von COMate und ist nur ein Ausschnitt)
Wäre cool wenn mich jemand hierbei schubsen könnte
Grüße
Alen
ich brauch mal einen Schubs. Ich bräuchte ein Codebeispiel das mir über eine WMI Abfrage alle installierten Programmnamen und deren Installationspfad ausgibt.
Zum Einsatz kommt aktuell COMate.
Ich spiele mit folgenden Codeschnipsel herum, bekomme aber keine brauchbaren Ergebnisse raus:
(Das stammt aus einem Umbau eines Codebeispieles von COMate und ist nur ein Ausschnitt)
Wäre cool wenn mich jemand hierbei schubsen könnte

Grüße
Alen
Code: Alles auswählen
Procedure Get_Software()
; Usage: Get_Driver()
; ReturnValues:
; |- Fills a numbered structured List with Data
;
Protected objWMIService.COMateObject, printer.COMateObject
Protected colPrinter.COMateEnumObject
counter.l = 0
strComputer.S = "."
objWMIService = COMate_GetObject("winmgmts:\\" + strComputer + "\root\cimv2", "")
If objWMIService
colPrinter = objWMIService\CreateEnumeration("ExecQuery('SELECT * FROM WIN32_PRODUCT')")
If colPrinter
printer = colPrinter\GetNextObject()
While printer
Software(counter)\Caption = printer\GetStringProperty("Caption")
Software(counter)\InstallSource = printer\GetStringProperty("InstallSource")
counter + 1
printer\Release()
printer = colPrinter\GetNextObject()
Wend
colPrinter\Release()
EndIf
objWMIService\Release()
EndIf
EndProcedure