帮助代理检测脚本 [英] Help with Agent detection script
问题描述
我有这个脚本将检测从特定Altiris Agent提供商安装的代理。
On Error Resume Next
CONST wbemFlagReturnImmediately =安培; H10
常量wbemFlagForwardOnly =安培; H20
arrComputers =阵列(" HP-ELITEMINI")
For each strComputer in arrComputers
WScript.Echo
WScript.Echo" ========================================== ;
WScript.Echo" Computer:" &安培; strComputer
WScript.Echo" ========================================== ;
$
设置objWMIService = GetObject(" winmgmts:\\"& strComputer&" \root \ CYIMV2"))
 设置colItems的= objWMIService.ExecQuery(QUOT; SELECT * FROM AltirisAgent_Agents"," _
&NBSP WQL" ;,;        &NBSP ;            wbemFlagReturnImmediately + wbemFlagForwardOnly)
  For Each objItem in colItems
    WScript.Echo" Name:" &安培; objItem.Name
    WScript.Echo"路径:" &安培; objItem.Path
    WScript.Echo"Version:" &安培; objItem.Version
    WScript.Echo
下一个
下一个
脚本返回以下值:
名称:Altiris库存代理商
路径:C:\程序文件(x86)\ Altiris \ Altiris Agent \Agents\Inventory Agent \ InvAgent.dll
版本:7.1.7870
名称:库存规则代理商
路径:C:\Program Files \ Altiris \ Altiris Agent \\ \\Antnts\Inventory Rule Agent
版本:7.1.8445
名称:软件管理框架代理商
路径:C:\Program Files \ Altiris \ Altiris Agent\Agents\SoftwareManagement\smfagent.dll
版本:7.1.8445
名称:Symantec System Recovery Policy代理商
路径:C:\Program Files \ Altiris \ Altiris Agent \Agents \Symantec SRMS Agents \ BackupAgent.dll
版本:11.0.47667
名称:Symantec System Recovery任务代理
路径:C:\ Pro gram Files \ Altiris \ Altiris Agent\Agents\Symantec SRMS Agents\BackupTaskAgent.dll
版本:11.0.47667
我希望能够调整vbscript以检查是否安装了Altiris Inventory Agent并为我提供了两个echo。
如果objItem.Name =" Altiris Inventory Agent"那么
Wscript.echo"安装代理
否则
Wscript.echpo"代理不已安装"
如果
结束如何实现此目的。我已经尝试了一天,不能只返回单个值。任何帮助,方向将不胜感激。
太多未使用和不需要的代码行:
<预类= "prettyprint郎-VB"> arrComputers =阵列(" HP-ELITEMINI")
。对于每一个将strComputer在arrComputers
WScript.Echo
WScript.Echo" = ========================================="
WScript.Echo"计算机:" &安培; strComputer
WScript.Echo" ======================================== =="
将objWMIService = GetObject的(QUOT; winmgmts:\\"&安培; strComputer的&安培;" \root\CIMV2")
将colItems的= objWMIService.ExecQuery(QUOT ; SELECT * FROM AltirisAgent_Agents WHERE Name ='Altiris Inventory Agent'")
如果colItems> 0然后
WScript.Echo"Agent instaleld"
Else
WScript.Echo" agent not inststalled"
结束如果
下一步
I have this script that will detect Agents install from a specific Altiris Agent provider.
On Error Resume NextConst wbemFlagReturnImmediately = &h10
Const wbemFlagForwardOnly = &h20
arrComputers = Array("HP-ELITEMINI")
For Each strComputer In arrComputers
WScript.Echo
WScript.Echo "=========================================="
WScript.Echo "Computer: " & strComputer
WScript.Echo "=========================================="
Set objWMIService = GetObject("winmgmts:\\" & strComputer & "\root\CIMV2")
Set colItems = objWMIService.ExecQuery("SELECT * FROM AltirisAgent_Agents", "WQL", _
wbemFlagReturnImmediately + wbemFlagForwardOnly)
For Each objItem In colItems
WScript.Echo "Name: " & objItem.Name
WScript.Echo "Path: " & objItem.Path
WScript.Echo "Version: " & objItem.Version
WScript.Echo
Next
Next
the script returns the following values:
Name: Altiris Inventory AgentPath: C:\Program Files (x86)\Altiris\Altiris Agent\Agents\Inventory Agent\InvAgent.dll
Version: 7.1.7870
Name: Inventory Rule Agent
Path: C:\Program Files\Altiris\Altiris Agent\Agents\Inventory Rule Agent
Version: 7.1.8445
Name: Software Management Framework Agent
Path: C:\Program Files\Altiris\Altiris Agent\Agents\SoftwareManagement\smfagent.dll
Version: 7.1.8445
Name: Symantec System Recovery Policy Agent
Path: C:\Program Files\Altiris\Altiris Agent\Agents\Symantec SRMS Agents\BackupAgent.dll
Version: 11.0.47667
Name: Symantec System Recovery Task Agent
Path: C:\Program Files\Altiris\Altiris Agent\Agents\Symantec SRMS Agents\BackupTaskAgent.dll
Version: 11.0.47667
I want to be able to adjust the vbscript to check if the Altiris Inventory Agent is installed and provide me with two echo's.
If objItem.Name = "Altiris Inventory Agent" then
Wscript.echo "Agent installed
Else
Wscript.echpo "Agent not installed"
End if
How can accomplish this. I have try for a day and cant get to return just the single value. Any help, direction will be greatly appreciated.
Too many unused and unneeded lines of code:
arrComputers = Array("HP-ELITEMINI") For Each strComputer In arrComputers WScript.Echo WScript.Echo "==========================================" WScript.Echo "Computer: " & strComputer WScript.Echo "==========================================" Set objWMIService = GetObject("winmgmts:\\" & strComputer & "\root\CIMV2") Set colItems = objWMIService.ExecQuery("SELECT * FROM AltirisAgent_Agents WHERE Name='Altiris Inventory Agent'") If colItems > 0 Then WScript.Echo "Agent instaleld" Else WScript.Echo "agent not inssstalled" End If Next
这篇关于帮助代理检测脚本的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!