Вот что я использовал в прошлом в VBS Script, который работал очень хорошо:
Set wshNet = CreateObject("WScript.Network") 'Setup connection to the Network
Set fso = CreateObject("Scripting.FileSystemObject") 'Create File System Object for any file manipulations
Set ADSysInfo = CreateObject("ADSystemInfo") 'Setup connection to Active Directory
Set CurrentUser = GetObject("LDAP://" & ADSysInfo.UserName) 'Setup current user to look for in Active Directory
strGroups = LCase(Join(CurrentUser.MemberOf)) 'Grabs all the groups the current user is a member of
Затем я использую InStr, чтобы увидеть, является ли пользователь частью этой группы:
If InStr(strGroups, "MyGroup") Then MyGroupSub
Возможно, вы сможете адаптировать вышеперечисленное в вашем проекте.
Кстати, я заметил, что в вашем коде у вас есть groupdoman в качестве вашего последнего параметра для 'group' Не уверен, хотите ли вы, чтобы это было groupdomain или нет:
Dim group As DirectoryEntry = GetNetworkObject (GroupDomanName, NetworkObjectType.NetworkGroup, GroupName, groupdoman )
против
Dim group As DirectoryEntry = GetNetworkObject (GroupDomanName, NetworkObjectType.NetworkGroup, GroupName, groupdomain )
Дайте мне знать, если это поможет! JFV