2012-05-09 44 views
0

我有一個存儲在vbscript數組中的計算機名列表,需要檢查它們是否在SCCM中有對象。使用vbScript檢查SCCM中是否存在對象

我一直在使用類似的查詢嘗試: 的一組賬戶= sQbemServices.ExecQuery( 「SELECT * FROM SMS_R_SYSTEM WHERE name = '」 & testForName & 「'」)通過SCCM看。只要計算機名稱有效,這種方法就可以正常工作,但一旦達到無效名稱,它似乎就會停止。我已經嘗試輸出錯誤號,但是這總是返回一個'0'並檢查結果是否爲空,但這不起作用。

這是檢查計算機對象是否存在的最佳方法,如果有,是否有人能告訴我我做錯了?如果沒有,任何指針將不勝感激。

+0

這可能是一個愚蠢的問題,但確實testForName包含撇號? (') – Tmdean

回答

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