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



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

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

这是检查计算机对象是否存在的最佳方法吗,如果是这样,任何人都可以告诉我我做错了什么吗? 如果没有,任何指示将不胜感激。

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

最新更新