Java - 是否可以通过编程方式确定Windows防病毒解决方案是否是最新的?

时间:2012-03-24 02:27:35

标签: java windows antivirus

是否可以通过编程方式确定Windows防病毒解决方案是否在Java中是最新的?

2 个答案:

答案 0 :(得分:7)

您可以使用productUptoDate WMI类的AntiVirusProduct属性。这里有一些使用的示例(使用C#和Delphi)以及此类的位置(名称空间取决于Windows版本)。

要从Java访问WMI服务,您可以使用jinteropjWMI

答案 1 :(得分:2)

这是我们公司过去使用的VBScript - 它使用WMI作为Niklas B.的解决方案也是如此,因此它只适用于XP SP3 +。它使用与Windows安全中心相同的提供程序(它并不总是提供每个AV解决方案!但是,确实提供了有关AV解决方案的大量信息。

Set objSWbemServices = GetObject("winmgmts:\\.\root\SecurityCenter")
Set colFirewall = objSWbemServices.ExecQuery("Select * From antivirusProduct",,48)
For Each objAntiVirusProduct In colFirewall
  WScript.Echo "companyName: " & objAntiVirusProduct.companyName
  WScript.Echo "displayName: " & objAntiVirusProduct.displayName
  WScript.Echo "instanceGuid: " & objAntiVirusProduct.instanceGuid
  WScript.Echo "onAccessScanningEnabled: " & objAntiVirusProduct.onAccessScanningEnabled
  WScript.Echo "productUptoDate: " & objAntiVirusProduct.productUptoDate
  WScript.Echo "versionNumber: " & objAntiVirusProduct.versionNumber
Next

祝你好运,编码愉快!