Вот фрагмент кода, который работает для меня:
try
{
PrincipalContext domainContext = new PrincipalContext(ContextType.Domain, "WM2008R2ENT:389", "dc=dom,dc=fr", "jpb", "pwd");
/* Retreive a user
*/
UserPrincipal user = UserPrincipal.FindByIdentity(domainContext, "user3");
if (user != null)
user.Delete();
}
catch (Exception e)
{
Console.WriteLine(e.Message);
}
Console.WriteLine("Done!");
Отредактировано
Таким образом, для локального компьютера (SAM) это следующее, точно так же, как ваш код, но управление исключениями показывает ошибку acces denied , если код не запущен в приглашении администратора с повышенными правами. Я думаю, что ваша ошибка в этом.
try
{
PrincipalContext computerContext = new PrincipalContext(ContextType.Machine);
/* Retreive a user
*/
UserPrincipal user = UserPrincipal.FindByIdentity(computerContext, "utilisateur1");
if (user != null)
user.Delete();
}
catch (Exception e)
{
Console.WriteLine(e.Message);
}
Console.WriteLine("Done!");
Console.ReadLine ();