Loading ...

Identificare l'antivirus in C#

Identificare l'antivirus in C#

Non capita molto spesso di voler identificare quale antivirus sia installato usando una nostra applicazione personale.

Ma può essere comunque interessante saperlo, più che altreo per vedere le potenzialità di ManagementObjectSearcher.

Per poter usare questo oggetto, dovete prima di tutto aggiungere il riferimento System.Management al vostro progetto.

Lo trovate nella sezione Assembly.

Poi il codice C#:

using System;
using System.Management;

namespace CSharpTest
{
    class Program
    {
        static void Main(string[] args)
        {
            ManagementObjectSearcher wmiData = 
                new ManagementObjectSearcher
                (@"root\SecurityCenter2", "SELECT * FROM AntiVirusProduct");
            ManagementObjectCollection data = wmiData.Get();
            foreach (ManagementObject antivir in data)
            {
                Console.WriteLine(antivir["displayName"]);
                Console.WriteLine(antivir["instanceGuid"]);
                Console.WriteLine(antivir["pathToSignedProductExe"]);
                Console.WriteLine(antivir["productState"]);
            }
        }
    }
}

Questo un output di esempio:

Windows Defender
{D68DDC3A-831F-4fae-9E44-DA132C1ACF46}
windowsdefender://
397568
Premere un tasto per continuare . . .

Enjoy!