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)