I want to get the follow vbScript to work in VB.NET
Set objRun = CreateObject("wscript.Shell")
strUserName = objRun.ExpandEnvironmentStrings("%USERNAME%")
Dim strComputer, member, strUsername, IsMember
Dim grp, obj, objRun
strComputer = "."
'WScript.Echo strUsername
Set grp = GetObject("WinNT://" & strComputer & "/Administrators,group")
For Each member In grp.Members
'WScript.Echo member.Name & " (" & member.Class & ")"
If LCase(member.Name) = strUsername Then
IsMember = member.Name
Else
If (member.Class = "Group") Then
For Each obj In member.Members
If LCase(obj.Name) = strUserName Then
IsMember = obj.Name
'WScript.Echo obj.Name & " (" & obj.Class & ")"
End If
Next
End If
End If
Next
WScript.Echo IsMember & " is a Local Administrator!"
I currently have this VB.NET code but I don't know how to enumerate the members of each group inside the local administrator's group.
Dim strUserName As String = Environment.GetEnvironmentVariable("UserName")
Dim localMachine As New DirectoryEntry("WinNT://" & Environment.MachineName)
Dim admGroup As DirectoryEntry = localMachine.Children.Find("administrators", "group")
Dim members As Object = admGroup.Invoke("members", Nothing)
For Each groupMember As Object In CType(members, IEnumerable)
Dim member As New DirectoryEntry(groupMember)
If member.Name = strUserName Then
tbIsAdmin.Text = "YES"
Else
tbIsAdmin.Text = "NO"
End If
Next
Any help or suggestions are appreciated.
Thanks
Marty