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

如何获取有关Windows计算机上安装的防病毒软件和防火墙软件的信息?
最佳答案
您可以使用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

转载注明原文:c# – 如何以编程方式获取已安装的防病毒软件和防火墙? - 代码日志