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

标签 c# vb.net security firewall antivirus

如何获取有关安装在 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# - 如何以编程方式获取已安装的防病毒软件和防火墙?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22153879/

相关文章:

c# - ASP.Net/JQuery : PLUploader "Add Files" will not fire after uploading images

c# - 何时需要dispose()的规则是什么?

mysql - 如何更新mysql数据库中的图片

mysql - 如果用户知道项目的主键 ID,从安全角度来看这是不好的做法吗

java - Android RSA key 对生成-我应该使用标准Java/Bouncy CaSTLe/海绵城堡/JSch/其他吗?

c++ - 条码安全与自己开发的软件

c# - 如何实现焦点重置以在任何操作之前更新 TextBox 的 BindingSource

C# 获取两个日期时间对象之间的整小时值

.net - 多态泛型

c# - antiforgeryToken 以保护从 angularjs 应用程序调用的 web api 上的某些操作