Nachfolgend ein Beispiel, um die lokalen Administratoren aufzulisten, oder hier als Download.
'Option Explicit Off Imports System.DirectoryServices Imports System.Diagnostics Imports System.Runtime.InteropServices Imports ActiveDs Imports System.Threading Module Module1 Sub Main() Dim DeEntry As DirectoryEntry Dim groupcoll As New DirectoryEntry("WinNT://.") For Each DeEntry In groupcoll.Children If DeEntry.Name = "Administratoren" Then EnumGroupMembers(DeEntry.Name) End If 'If DeEntry.SchemaEntry.Name = "Group" Then ' EnumGroupMembers(DeEntry.Name) 'End If Next Thread.Sleep(50000) End Sub Public Sub EnumGroupMembers(ByVal group As String) Dim strUsername, strGroupName As String Dim aryUsername, aryGroupName As Array Dim MembersCollection As IADsMembers Dim GroupToEnum As New DirectoryEntry("WinNT://./" & group & ",group") MembersCollection = GroupToEnum.Invoke("Members") Dim filter As System.Object() = {"user"} MembersCollection.Filter = filter Dim user As IADsUser Dim grp As IADsGroup For Each user In MembersCollection strUsername = LCase(user.ADsPath) aryUsername = strUsername.Split("/") Console.WriteLine(strUsername) Console.WriteLine(aryUsername(2) & "" & aryUsername(3)) Next Dim grpfilter As System.Object() = {"group"} MembersCollection.Filter = grpfilter For Each grp In MembersCollection 'Console.WriteLine(LCase(grp.ADsPath)) strGroupName = LCase(grp.ADsPath) aryGroupName = strGroupName.Split("/") Console.WriteLine(aryGroupName(2) & "" & aryGroupName(3)) Next End Sub End Module