Dim EntradasEnElDirectorio As New DirectoryEntry(«LDAP://mi.servidor.com»)
Dim BusquedaEnElDirectorio As New DirectorySearcher(EntradasEnElDirectorio)
BusquedaEnElDirectorio.Filter = «(ObjectClass=user)»
Dim EntradaEnDirectorio As DirectoryEntry
For Each Busqueda As SearchResult In BusquedaEnElDirectorio.FindAll()
EntradaEnDirectorio = Busqueda.GetDirectoryEntry
For Each propiedad As String In EntradaEnDirectorio.Properties.PropertyNames
Me.ListBox1.Items.Add(propiedad)
Next
Next
Saludos,
Pep Lluis

‘Saber de los Usuarios en nuestro LDAP
Imports System.DirectoryServices ‘Espacio de nombres
Public Class Form1
Private Datagrid As New DataGridView
‘Constructor para nuestro DataGridView
‘
‘ Nuestra particular clase para definir un Usuario
Private Class UserInfo
‘
‘Leer/Asignar su nombre
Private m_Nombre As String
Public Property Nombre() As String
Get
Return m_Nombre
End Get
Set(ByVal value As String)
m_Nombre = value
End Set
End Property
‘
‘Leer/Asignar su Descripcion
Private m_Descripcion As String
Public Property Descripcion() As String
Get
Return m_Descripcion
End Get
Set(ByVal value As String)
m_Descripcion = value
End Set
End Property
End Class
‘
‘ Al Cargar el Formulario
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
‘Incorporar el DataGridView a nuestro form
Me.Controls.Add(Datagrid)
Me.Datagrid.Dock = DockStyle.Fill ‘Ocupar toda el area del form
Me.Datagrid.AllowUserToAddRows = False ‘No se puede añadir celdas
Me.Datagrid.AllowUserToDeleteRows = False ‘No se puede eliminar celdas
Me.Datagrid.EditMode = DataGridViewEditMode.EditProgrammatically
‘Nuestros apuntes en el directorio del Servidor
Dim EntradasEnElDirectorio As New DirectoryEntry(LDAP://Servidor)
‘Nuestro buscador
Dim BusquedaEnElDirectorio As New DirectorySearcher(EntradasEnElDirectorio)
‘Filtro de busqueda
BusquedaEnElDirectorio.Filter = «(ObjectClass=user)»
‘Leer las entradas de usuario
Dim Entradas = From usuario As SearchResult In BusquedaEnElDirectorio.FindAll() _
Select usuario.GetDirectoryEntry
‘Rellenar el DataGridView con el resultado de la consulta, con la info requerida
Datagrid.DataSource = _
(From usuario In Entradas _
Select New UserInfo() With {.Nombre = usuario.Properties(«name»).Value, _
.Descripcion = usuario.Properties(«description»).Value}).ToList
End Sub
End Class
‘Saber de los Usuarios en nuestro LDAP
Imports System.DirectoryServices ‘Espacio de nombres Public Class Form1
Private Datagrid As New DataGridView
‘Constructor para nuestro DataGridView
‘
‘ Nuestra particular clase para definir un Usuario
Private Class UserInfo
‘
‘Leer/Asignar su nombre
Private m_Nombre As String
Public Property Nombre() As String
Get
Return m_Nombre
End Get
Set(ByVal value As String)
m_Nombre = value
End Set
End Property
‘
‘Leer/Asignar su Descripcion
Private m_Descripcion As String
Public Property Descripcion() As String
Get
Return m_Descripcion
End Get
Set(ByVal value As String)
m_Descripcion = value
End Set
End Property
End Class
‘
‘ Al Cargar el Formulario
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
‘Incorporar el DataGridView a nuestro form
Me.Controls.Add(Datagrid)
Me.Datagrid.Dock = DockStyle.Fill ‘Ocupar toda el area del form
Me.Datagrid.AllowUserToAddRows = False ‘No se puede añadir celdas
Me.Datagrid.AllowUserToDeleteRows = False ‘No se puede eliminar celdas
Me.Datagrid.EditMode = DataGridViewEditMode.EditProgrammatically
‘Nuestros apuntes en el directorio del Servidor
Dim EntradasEnElDirectorio As New DirectoryEntry(LDAP://Servidor)
‘Nuestro buscador
Dim BusquedaEnElDirectorio As New DirectorySearcher(EntradasEnElDirectorio)
‘Filtro de busqueda
BusquedaEnElDirectorio.Filter = «(ObjectClass=user)»
‘Leer las entradas de usuario
Dim Entradas = From usuario As SearchResult In BusquedaEnElDirectorio.FindAll() _
Select usuario.GetDirectoryEntry
‘Rellenar el DataGridView con el resultado de la consulta, con la info requerida
Datagrid.DataSource = _
(From usuario In Entradas _
Select New UserInfo() With {.Nombre = usuario.Properties(«name»).Value, _
.Descripcion = usuario.Properties(«description»).Value}).ToList
End Sub
End Class
En determinadas situaciones resulta de gran utilidad poder saber mas acerca de nuestros usuarios preguntando al LDAP de nuestro dominio.
Espero que os sea de utilidad.
‘Saber de los Usuarios de nuestro LDAP
Imports System.DirectoryServices ‘Espacio de nombres
Public Class ServiciosDeDirectorio
Private listBox1 As New ListBox() ‘Constructor del ListBox
Private Sub Form_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
‘Nuestros apuntes en el direccio
Dim EntradasEnElDirectorio As New DirectoryEntry(«LDAP://miServidor»)
‘Nuestro buscador
Dim BusquedaEnElDirectorio As New DirectorySearcher(EntradasEnElDirectorio)
‘Filtro de busqueda, en nuestro caso usuarios
BusquedaEnElDirectorio.Filter = «(ObjectClass=user)»
‘Nuestra entrada de usuario en cuestion
Dim EntradaEnDirectorio As DirectoryEntry
‘Incorporar el listbox a nuestro form
Me.Controls.Add(listBox1)
Me.listBox1.Dock = DockStyle.Fill ‘Ocupar toda el area del form
‘Para cada entrada en el directorio
For Each Busqueda As SearchResult In BusquedaEnElDirectorio.FindAll()
‘Obtenerla
EntradaEnDirectorio = Busqueda.GetDirectoryEntry
‘Añadir la informacion (en nuestro caso nombre/descripcion)
Me.listBox1.Items.AddRange(New Object() { _
EntradaEnDirectorio.Properties(«name»).Value, _
Space(12) + «->» + _
EntradaEnDirectorio.Properties(«description»).Value _
})
Next
End Sub End Class
Otro sitio realizado con WordPress