Windows XP上でアンチウイルスアプリケーションのステータスを確認するスクリプト

クライアントアプリケーションにインストールされているアンチウイルスアプリケーションの状態を取得したかったのですが、なかなか上手い方法が無かったので、Windows XPのセキュリティセンタからアンチウイルスアプリケーションのステータスを確認するスクリプトを作ってみました。

セキュリティセンタの機能が無効でもこのスクリプトは動作するので、セキュリティセンタをあえて停止しているコンピュータ上でもこのスクリプトは動作します。また、ユーザ権限でも動作させる事が出来ますのでログインスクリプトやスタートアップにも組み込みやすいです。

まあ、セキュリティセンタを有効にすればその必要はもちろん無いわけですけれども。

動作はWindows XP SP3のみで確認しております。このスクリプトはWindows Server 2003では動作しません。

'セキュリティセンターのアンチウイルスアプリケーションの状態を取得する

strComputer = "."

Set oWMI = GetObject("winmgmts:{impersonationlevel=impersonate}!\\" _
    & strComputer & "\root\SecurityCenter")

Set colAV = oWMI.ExecQuery("Select * from AntiVirusProduct")

If colAV.Count = 0 Then
    WScript.Echo "AntiVirus Product Not Installed"
Else
	For Each objAntiVirusProduct In colAV
		WScript.Echo "CompanyName             : " & objAntiVirusProduct.companyName
		WScript.Echo "VersionNumber           : " & objAntiVirusProduct.versionNumber
		WScript.Echo "InstanceGuid            : " & objAntiVirusProduct.instanceGuid
		WScript.Echo "onAccessScanningEnabled : " & objAntiVirusProduct.onAccessScanningEnabled
		WScript.Echo "ProductUptoDate         : " & objAntiVirusProduct.productUptoDate
		WScript.Echo "DisplayName             : " & objAntiVirusProduct.displayName
	Next
End If

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です