DirectoryEntry Basics
The DirectoryEntry
class contains several properties to access the attributes of Active Directory objects. The following code shows how to display the currentTime
attribute of the RootDSE
:
Dim objRootDSE As New DirectoryEntry("LDAP://RootDSE") Console.WriteLine(objRootDSE.Properties("currentTime")(0))
In the code, once we instantiated the DirectoryEntry
object, we can access the currentTime
attribute by passing it to the Properties
property. The Properties
property actually returns a collection of values for the attribute in the form of a PropertyCollection
class, which is why we needed to specify an index of 0 to get at a specific value. If the currentTime
attribute was multi-valued, we could get at the other values by incrementing the index to 1 and so on.
Tip
In object-oriented parlance, a property allows you to get or set an attribute of an object. A method typically results in some kind of action being taken on the object.
Now let's look at how to display all the values for all the attributes of an object in Active Directory. Again we will use RootDSE
as the object we want to display:
Dim objRootDSE As New DirectoryEntry("LDAP://RootDSE") Dim strAttrName As String Dim objValue As Object For Each strAttrName In objRootDSE.Properties.PropertyNames For Each objValue In objRootDSE.Properties(strAttrName) Console.WriteLine(strAttrName & " : " & objValue.ToString) Next objValue Next strAttrName
As you can see, the Properties
property, which returns a PropertyCollection ...
Get Active Directory, 3rd Edition now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.