2009-09-22 6 views
0

J'ai ce code simple:Ajout d'un groupe de domaine groupe local

String containerPath = String.Format("WinNT://{0}/{1},group", Environment.MachineName, localGroupName); 
using (System.DirectoryServices.DirectoryEntry theContainerGroup= new System.DirectoryServices.DirectoryEntry(containerPath)) 
{ 
    String path = String.Format("WinNT://{0}/{1},group", theGroupToAdd_Domain, theGroupToAdd_Name); 
    theContainerGroup.Invoke("Add", new object[] { path}); 
    theContainerGroup.CommitChanges(); 
} 

et il semble fonctionner très bien pour les groupes globaux et universels. Cependant quand j'essaye d'ajouter un groupe qui a le type DomainLocal | Builtin, il me donne une exception "ne peut pas trouver l'objet".

Ce scénario n'est-il pas pris en charge? Ou dois-je modifier mon chemin pour ce type de groupe?

Répondre

0

Y a-t-il une raison pour laquelle vous utilisez le fournisseur WinNT ("WintNT: //") plutôt que le fournisseur LDAP ("LDAP: //")? Le fournisseur WinNT est très restreint par rapport au fournisseur LDAP, bien que légèrement plus facile à démarrer. Dans le cas où il y a une bonne raison, je me rappelle vaguement quelque chose à propos de l'utilisation de "WinNT: // NT AUTHORITY/groupName" mais cela pourrait être pour les comptes locaux, alors ne passez pas trop de temps dessus.