Wat is er mis met deze code ?

Status
Niet open voor verdere reacties.

hanonymouss

Gebruiker
Lid geworden
7 sep 2011
Berichten
283
Ik probeer via wmi de geinstalleerde antvirus programma('s) te krijgen,maar ik krijg gewoon niets terug. :confused:

code:
[CPP] Dim scope As New Management.ManagementScope("\\.\root\SecurityCenter")
Dim searcher As New Management.ManagementObjectSearcher("SELECT * FROM antivirusproduct")
Dim arInst As New ArrayList

searcher.Scope = scope

Dim av As Management.ManagementObjectCollection = searcher.Get()

Dim Enumerator As _
Management.ManagementObjectCollection.ManagementObjectEnumerator = _
av.GetEnumerator()
While Enumerator.MoveNext = True
Dim instance As Management.ManagementObject = _
CType(Enumerator.Current, _
Management.ManagementObject)
arInst.Add(instance("displayName").ToString())
End While

Me.ListBox1.Items.AddRange(arInst.ToArray)[/CPP]

Iemand een idee ?
 
Bestaat het veld displayName wel?
En de instance. haalt deze het juiste object op?
 
ik denk van wel , anders zou de compiler al een error geven. De Code wordt gewoon niet uitgevoerd , ik krijg amper een foutmelding.
 
[cpp]Dim str As String = ""
Dim searcher As New Management.ManagementObjectSearcher("\\" & Environment.MachineName & "\root\SecurityCenter2", "SELECT * FROM AntivirusProduct")
Dim instances As Management.ManagementObjectCollection = searcher.[Get]()
For Each queryObj As Management.ManagementObject In instances
str = queryObj("displayName").ToString()
Next[/cpp]

:)
 
Dank u wel JoZ1, de code werkt! :thumb:

Maar ik hebt twee antivirus programma's, en er wordt maar eentje weergegeven, das die van avg 2012, norton wordt niet weergegeven. ?

Ik heb de code zo gebruikt:
MessageBox.Show(getantivirus.ToString)

maar misschien dat het in een listview alle geinstalleerde antivirus programma wordt weergegeven ?
 
Laatst bewerkt:
Zoiets dan?

[CPP] Dim searcher As New Management.ManagementObjectSearcher("\\" & Environment.MachineName & "\root\SecurityCenter2", "SELECT * FROM AntivirusProduct")
Dim instances As Management.ManagementObjectCollection = searcher.[Get]()
For Each queryObj As Management.ManagementObject In instances
ListBox.Items.Add(queryObj("displayName").ToString())
Next[/CPP]
(Het is trouwens niet aan te raden om twee antivirusproducten tegelijk te gebruiken!)
 
Dank u wel tis gelukt. :thumb:

Vraagje? Stel als een persoon maar 1 antivirus programma heeft , Zal dan mijn programma een error geven of wordt er dan maar eentje weergegeven ?
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan