Vb.net 将网络组添加到本地管理员组时出现“找不到网络路径”错误

Vb.net 将网络组添加到本地管理员组时出现“找不到网络路径”错误,vb.net,directoryservices,administrator,account-management,Vb.net,Directoryservices,Administrator,Account Management,我正在尝试将域上的网络组添加到计算机上的本地administrators组 我逐行调试,它会找到本地管理员组,它会找到网络组,但当它到达这一行时: Dim DomainCtx As New PrincipalContext(ContextType.Domain, "<domainname>", "<username>", "<pw>") AdministratorsGrp.Members.Add(NetworkGrp) 它返回一个错误“未找到网络路径” 如何

我正在尝试将域上的网络组添加到计算机上的本地administrators组

我逐行调试,它会找到本地管理员组,它会找到网络组,但当它到达这一行时:

Dim DomainCtx As New PrincipalContext(ContextType.Domain, "<domainname>", "<username>", "<pw>")
AdministratorsGrp.Members.Add(NetworkGrp)

它返回一个错误“未找到网络路径”

如何修复此错误,我花了30分钟搜索互联网站,但找不到解决方案:(

到目前为止,我的职责如下:

Private Function AddAdminGroup() As Boolean
    Dim AdministratorsGrp As GroupPrincipal
    Dim NetworkGrp As GroupPrincipal

    Try
        Dim DomainCtx As New PrincipalContext(ContextType.Domain, "<domainname>", "<username>", "<pw>")

        'Find Local Administrators group by SID
        AdministratorsGrp = GroupPrincipal.FindByIdentity(DomainCtx, IdentityType.Sid, "S-1-5-32-544")

        'Find Desktop Managers group by Name on Domain
        NetworkGrp = GroupPrincipal.FindByIdentity(DomainCtx, IdentityType.Name, "<network group")

        'Add Desktop Managers group to Administrators Group
        AdministratorsGrp.Members.Add(DesktopMGRGrp)

        'Save Group
        AdministratorsGrp.Save()

        Return True
    Catch PrinEx As PrincipalExistsException
        Return True
    Catch ex As Exception

    End Try
    Return False
End Function
作为布尔值的私有函数AddAdminGroup()
Dim管理员GRP作为组主体
Dim NetworkGrp作为组主体
尝试
将DomainCtx作为新的PrincipalContext(ContextType.Domain,“”,“”,“”)
'按SID查找本地管理员组
AdministratorsGrp=GroupPrincipal.FindByIdentity(DomainCtx,IdentityType.Sid,“S-1-5-32-544”)
'在域上按名称查找桌面管理器组

NetworkGrp=GroupPrincipal.FindByIdentity(DomainCtx,IdentityType.Name,“我通过更改此行修复了此问题:

Dim DomainCtx As New PrincipalContext(ContextType.Domain, "<domainname>", "<username>", "<pw>")

我不知道为什么,但为域提供凭据会导致问题。

您是否尝试添加域\NetworkGrp?您希望我尝试添加到哪里?只是重复一下,它会找到网络组,并将其返回给该NetworkGrp对象。在抛出错误的计算机上,我能够从该对象检索属性ke SID和Name以及它们都是正确的。如果这一行:NetworkGrp=GroupPrincipal.FindByIdentity(DomainCtx,IdentityType.Name,)的结尾处缺少“>”我正在用替换此网站的真实值,但我错过了>。真实值,即我们网络组的实际名称是正确的。您注意到的另一个正确情况是,我在重命名/清理供公众使用的数据时遗漏了一些内容。这些对象名称在真实代码中是相同的。好吧,抱歉,我没有任何内容更多