使用vbScript检查SCCM中是否存在对象

时间:2012-05-09 10:02:50

标签: vbscript sccm

我有一个存储在vbscript数组中的计算机名列表,需要检查它们是否在SCCM中有一个对象。

我尝试过使用类似的查询: 设置accounts = sQbemServices.ExecQuery(“select * FROM SMS_R_System WHERE name ='”& testForName&“'”)以查看SCCM。只要计算机名称有效,这就可以正常工作,但一旦它到达无效名称,它似乎就会停止。我已经尝试输出错误号,但这总是返回一个'0'并检查结果是否为空,但这不起作用。

这是检查计算机对象是否存在的最佳方式,如果有,任何人都可以告诉我,我做错了吗?如果没有,任何指针都会非常感激。

1 个答案:

答案 0 :(得分:0)

SWbemServices.ExecQuery通常会返回SWbemObjectSet。如果您的查询找到有效的计算机,则accounts.Count应为1或更多,否则为0.例如:

If (accounts.Count > 0) Then 
    WScript.Echo "Found Computer in SCCM"
Else
    WScript.Echo "Computer is not in SCCM"
End If

有关SWbemServices的详细信息:

http://msdn.microsoft.com/en-us/library/windows/desktop/aa393866(v=vs.85).aspx