Ошибка при использовании System.Directoryservices в 2008 R2 под учетной записью без прав администратора

У меня есть программа, использующая system.directoryservices и directorysearcher.

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

Ошибка, которую я получаю,

0x80070035 "The specified network path was not found"

при попытке создать searchresultcollection.

Первая часть, которая кажется неисправной, находится в

system.directoryservices.directoryentry.bind(boolean throwIfFail), но это работает, когда я вхожу в систему с правами администратора.

Есть предположения?


person Dan Hamik    schedule 09.05.2011    source источник
comment
Каков ваш путь LDAP, к которому вы пытаетесь подключиться?? Можете ли вы показать нам код, который вы используете для создания SearchResultCollection ?? На какую версию платформы .NET вы ориентируетесь??   -  person marc_s    schedule 09.05.2011
comment
Хорошо, оказывается, это работает, когда исполняемый файл находится в локальной системе, но не когда он находится в сети, а только при запуске от имени администратора, не являющегося администратором домена. он отлично работает при запуске из сети в качестве администратора домена.   -  person Dan Hamik    schedule 10.05.2011
comment
Да, это стандартное поведение .NET — см. этот другой вопрос SO или эта запись WIKI на ограниченное доверие при запуске вещей из сетевого ресурса....   -  person marc_s    schedule 10.05.2011
comment
Начиная с .NET 3.5 SP1 вы получите полное доверие даже при запуске из общей папки. Какую версию платформы .NET вы используете?   -  person Jakob Christensen    schedule 13.05.2011


Ответы (1)


Хотя я знаю, что эта проблема была указана некоторое время назад, у меня тоже была похожая проблема с той же ошибкой 0x80070035 для моего сценария входа в систему с использованием Windows 8.1.

Set UserObj = GetObject("WinNT://" & DomainString & "/" & UserString)

Как оказалось, я использовал DNS, отличный от того, что использовала остальная часть офиса. У меня был Google один из 8.8.8.8. Когда я снял его, сценарий входа в систему снова заработал, и я смог вернуть все свои подключенные диски.

Я просто подумал, что поделюсь своим исправлением.

person vr_driver    schedule 25.11.2014