Note that there are some explanatory texts on larger screens.

plurals
  1. PO
    text
    copied!<p>Check out System.DirectoryServices (An ASP.NET 2.0 reference):</p> <p>C#-example to get groups: </p> <pre><code>using System.DirectoryServices; public class test { private void main() { foreach (string @group in GetGroups()) { Debug.Print(@group); } } public List&lt;string&gt; GetGroups() { DirectoryEntry objADAM = default(DirectoryEntry); // Binding object. DirectoryEntry objGroupEntry = default(DirectoryEntry); // Group Results. DirectorySearcher objSearchADAM = default(DirectorySearcher); // Search object. SearchResultCollection objSearchResults = default(SearchResultCollection); // Results collection. string strPath = null; // Binding path. List&lt;string&gt; result = new List&lt;string&gt;(); // Construct the binding string. strPath = "LDAP://stefanserver.stefannet.local"; //Change to your ADserver // Get the AD LDS object. try { objADAM = new DirectoryEntry(strPath); objADAM.RefreshCache(); } catch (Exception e) { throw e; } // Get search object, specify filter and scope, // perform search. try { objSearchADAM = new DirectorySearcher(objADAM); objSearchADAM.Filter = "(&amp;(objectClass=group))"; objSearchADAM.SearchScope = SearchScope.Subtree; objSearchResults = objSearchADAM.FindAll(); } catch (Exception e) { throw e; } // Enumerate groups try { if (objSearchResults.Count != 0) { foreach (SearchResult objResult in objSearchResults) { objGroupEntry = objResult.GetDirectoryEntry(); result.Add(objGroupEntry.Name); } } else { throw new Exception("No groups found"); } } catch (Exception e) { throw new Exception(e.Message); } return result; } } </code></pre> <p>VB-example to get groups:</p> <pre><code>Imports System.DirectoryServices Public Class Form1 Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load For Each group As String In GetGroups() Debug.Print(group) Next End Sub Public Function GetGroups() As List(Of String) Dim objADAM As DirectoryEntry ' Binding object. Dim objGroupEntry As DirectoryEntry ' Group Results. Dim objSearchADAM As DirectorySearcher ' Search object. Dim objSearchResults As SearchResultCollection ' Results collection. Dim strPath As String ' Binding path. Dim result As New List(Of String) ' Construct the binding string. strPath = "LDAP://stefanserver.stefannet.local" 'Change to your ADserver ' Get the AD LDS object. Try objADAM = New DirectoryEntry(strPath) objADAM.RefreshCache() Catch e As Exception Throw e End Try ' Get search object, specify filter and scope, ' perform search. Try objSearchADAM = New DirectorySearcher(objADAM) objSearchADAM.Filter = "(&amp;(objectClass=group))" objSearchADAM.SearchScope = SearchScope.Subtree objSearchResults = objSearchADAM.FindAll() Catch e As Exception Throw e End Try ' Enumerate groups Try If objSearchResults.Count &lt;&gt; 0 Then Dim objResult As SearchResult For Each objResult In objSearchResults objGroupEntry = objResult.GetDirectoryEntry result.Add(objGroupEntry.Name) Next objResult Else Throw New Exception("No groups found") End If Catch e As Exception Throw New Exception(e.Message) End Try Return result End Function End Class </code></pre>
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload