2011-11-29 33 views
1

我正在使用ADSI Scriptomatic,並且我注意到這些示例需要用戶名strName,但我想要執行一整批操作來從AD中提取數據並將數據還原。我只是想知道當我將數據拉入或放入時objRootDSE對象會發生什麼?Vbscript - 重用LDAP對象?

Public Sub createADCommand(Optional strContainer As String) 
    Set objRootDSE = GetObject("LDAP://rootDSE") 
    If strContainer = "" Then 
     Set objItem = GetObject("LDAP://" & _ 
     objRootDSE.Get("defaultNamingContext")) 
    Else 
     Set objItem = GetObject("LDAP://cn=" & strName & "," & strContainer & "," & _ 
     objRootDSE.Get("defaultNamingContext")) 
    End If 
End Sub 

我問的原因是因爲我想重用這個對象,如果它在某種程度上是內存密集型的。我希望代碼儘可能高效。但我不確定LDAP是否是一個沉重的協議?我知道「L」是用於「輕量級」的:P但是如果我要重新打開它,我認爲沒有必要關閉一個物體。

回答

0

在這種情況下,LDAP不相關。相反,您的變量「objItem」正在存儲它收集的任何內容(在本例中爲來自LDAP的數據)。除非您想更改,刪除或添加LDAP數據,否則您不必擔心將其退回。