Службы каталогов в Windows Server 2008 - PullRequest
3 голосов
/ 09 ноября 2011

У нас есть какой-то старый код, который мы будем обновлять в будущем, но сейчас нам хотелось бы выяснить, почему этот код не подходит для всех наших доменов в 2008 году.

Наш старыйкод:

entry = new DirectoryEntry("WinNT://" + domain + "/" + username);

Более новый код:

UserPrincipal u= UserPrincipal.FindByIdentity(c, 
IdentityType.SamAccountName, username)

У нас есть 2 домена, один доверяет другому, хотя мы не контролируем домены.В Server 2003 старый код работает без проблем для обоих доменов.В Server 2008 он успешно возвращает данные для нашего основного домена, но выдает исключение для другого.

Ошибка:

 System.Runtime.InteropServices.COMException (0x80070035): The network path was not found.
at System.DirectoryServices.DirectoryEntry.Bind(Boolean throwIfFail)
at System.DirectoryServices.DirectoryEntry.Bind()
at System.DirectoryServices.DirectoryEntry.get_AdsObject()
at System.DirectoryServices.PropertyValueCollection.PopulateList()
at System.DirectoryServices.PropertyValueCollection..ctor(DirectoryEntry entry, String propertyName)
at System.DirectoryServices.PropertyCollection.get_Item(String propertyName)

Почему WinNT не работает для одного домена в 2008 году, когда он работал в 2003 году?Есть ли у Microsoft какая-либо документация по WinNT-типу DirectoryEntry?Есть ли способ решить эту проблему в Server 2008, кроме обновления кода?

...