Сервер Active Directory не работает. код ошибки 2147016646 - PullRequest
0 голосов
/ 17 ноября 2009

новичок в C #. Я пытаюсь просмотреть AD для конкретного OU. Я получаю следующую ошибку. код ошибки 2147016646. Я попытался запустить программу с более высоким привилегий. Acct. Но все равно получаю ту же ошибку.

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.DirectoryServices;
using System.DirectoryServices.ActiveDirectory;

namespace ConsoleApplication1
{
    class Program
    {

        static void Main(string[] args)
        {
             string objectPath = "Server1";
             try
             {
                if (DirectoryEntry.Exists("LDAP://" + objectPath))
                    Console.WriteLine(objectPath + "exists");
                else
                    Console.WriteLine(objectPath + " does not exists");
            }
            catch (DirectoryServicesCOMException e)
            {
                Console.WriteLine(e.Message.ToString());
            }
        }      
    }
}

Ответы [ 2 ]

1 голос
/ 17 ноября 2009

Возможно, вам придется использовать что-то большее, чем просто "Server1" для вашего пути LDAP.

Попробуйте что-то вроде:

string objectPath = "Server1/cn=Users,dc=yourcompany,dc=som";
try
{
   if (DirectoryEntry.Exists("LDAP://" + objectPath))
      Console.WriteLine(objectPath + "exists");
   else
      Console.WriteLine(objectPath + " does not exists");
}

Это позволит проверить, существует ли на вашем сервере контейнер по умолчанию «Users» (или нет).

Марк

0 голосов
/ 20 ноября 2009

Настоятельно рекомендуем "Руководство разработчика по .NET по программированию служб каталогов". ISBN 0-321-35017-0

На вес золота!

...