NTDOC
Administrator
Registered: 2000-07-28
Posts: 11628
Loc: CA
Well, since I've had a request for a stand alone McAfee script that would work during logon for normal users, here is a modified version of the one from the SIM KiXform project.
Let me know if it doesn't work correctly as I don't have McAfee installed to test at the moment.
Code updated, thanks Kent
Break On
Dim $SO ,$McAfeeInfo ,$Pause
$SO =SetOption ('Explicit' ,'On' )
$SO =SetOption ('NoVarsInStrings' ,'On' )
$SO =SetOption ('WrapAtEOL' ,'On' )
$McAfeeInfo =GetMcAfeeAV ()
If VarType ($McAfeeInfo )< >8
?'Product Version ' +$McAfeeInfo [0 ]
?'DAT Number ' +$McAfeeInfo [1 ]
?'Engine ' +$McAfeeInfo [2 ]
?'Product ' + $McAfeeInfo [3 ]
?'ePO ' + $McAfeeInfo [4 ]
Else
?'McAfee AV not detected...'
EndIf
Color 'r/w'
?? 'Completed. Press a key to continue...'
Get $Pause
Function GetMcAfeeAV()
Dim $AVMcafee ,$Tvd ,$PName ,$DatNum ,$AVEngine ,$Product ,$Key ,$ePO
$AVMcafee = 'HKLM\SOFTWARE\McAfee\VirusScan'
$Tvd = 'HKLM\SOFTWARE\Network Associates\TVD'
$Key = 'HKLM\SOFTWARE\Network Associates\ePolicy Orchestrator\Agent'
$ePO = KeyExist ($Key )
If $ePO
$Key = 'HKLM\SOFTWARE\Network Associates\ePolicy Orchestrator\Application Plugins\EPOAGENT3000'
$ePO = ReadValue ($Key , 'Version' )
If Not $ePO $ePO ='Unknown' EndIf
Else
$ePO =""
EndIf
Select
Case KeyExist ($Tvd +'\VirusScan Enterprise\CurrentVersion' )
; VS70 - Works with 7.0, 7.1, 8.0
$PName = 'VirusScan Enterprise'
$DatNum = 'DAT File Version: ' + ReadValue ($Tvd +'\VirusScan Enterprise\CurrentVersion' ,'szVirDefVer' )
$AVEngine = 'Engine Version: ' + ReadValue ($Tvd +'\Shared Components\VirusScan Engine\4.0.xx' ,'szEngineVer' )
$Product = 'Product Version: ' + ReadValue ($Tvd +'\VirusScan Enterprise\CurrentVersion' ,'szProductVer' )
Case KeyExist ($Tvd +'\VirusScan' )
; VS451
$PName = 'VirusScan 4.51'
$Datnum = 'DAT File Version:=' + SubStr (ReadValue ($Tvd +'\Shared Components\VirusScan Engine\4.0.xx' ,'szDatVersion' ),5 ,4 )
$AVEngine = 'Engine Version:=' + ReadValue ($Tvd +'\Shared Components\VirusScan Engine\4.0.xx' ,'szEngineVer' )
$Product = 'Product Version:=' + ReadValue ($Tvd +'\VirusScan' ,'szCurrentVersionNumber' )
Case KeyExist ($Tvd +'\Netshield NT\CurrentVersion' )
; NS45
$PName = 'NetShield NT 4.5'
$Datnum = 'DAT File Version:=' + SubStr (ReadValue ($Tvd +'\Netshield NT\CurrentVersion' ,'szVirDefVer' ),5 ,4 )
$AVEngine = 'Engine Version:=' + ReadValue ($Tvd +'\Netshield NT\CurrentVersion' ,'szEngineVer' )
$Product = 'Product Version:=' + ReadValue ($Tvd +'\Netshield NT\CurrentVersion' ,'szProductVer' )
Case KeyExist ('HKLM\SOFTWARE\Network Associates\NetShield NT' )
; NS403a
$PName = 'NetShield NT 4.03a'
$Datnum = 'DAT File Version:=' + SubStr (ReadValue ($AVMcafee ,'szVirDefVer' ),5 ,4 )
$AVEngine = 'Engine Version:=' + ReadValue ($AVMcafee ,'szEngineVer' )
$Product = 'Product Version:=' + ReadValue ($AVMcafee ,'szProductVer' )
EndSelect
$GetMcAfeeAV = $PName ,$DatNum ,$AVEngine ,$Product ,$ePO
EndFunction
Edited by NTDOC (2005-02-24 08:01 PM )