如何以编程方式获取已安装的防病毒软件和防火墙?

时间:2014-03-03 17:58:08

标签: c# vb.net security firewall antivirus

如何获取有关Windows计算机上安装的防病毒软件和防火墙软件的信息?

1 个答案:

答案 0 :(得分:4)

您可以使用ManagementObjectSearcher获取此信息。

 Public Function GetAntivirus() As String
    Try
        Dim data As String = String.Empty
        For Each firewall As ManagementObject In New ManagementObjectSearcher("root\SecurityCenter" & IIf(My.Computer.Info.OSFullName.Contains("XP"), "", "2").ToString, "SELECT * FROM AntiVirusProduct").Get
            data &= firewall("displayName").ToString
        Next
        If Not data = String.Empty Then
            Return data
        Else
            Return "No Antivirus"
        End If

    Catch
        Return "No Antivirus"
    End Try

End Function

Public Function GetFirewall() As String
    Try

            Dim data As String = String.Empty
            For Each firewall As ManagementObject In New ManagementObjectSearcher("root\SecurityCenter" & IIf(My.Computer.Info.OSFullName.Contains("XP"), "", "2").ToString, "SELECT * FROM FirewallProduct").Get
                Data &= firewall("displayName").ToString
            Next
        If Not data = String.Empty Then
            Return data
        Else
            Return "No Firewall"
        End If
        Catch
            Return "No Firewall"
        End Try

End Function