Получить список доступных доменов (NT4 и Active Directory) - PullRequest
1 голос
/ 22 августа 2008

Кто-нибудь знает (в c #) способ получения доступных доменов NT4 (немного похоже на выпадающий список WinXP)?

Я знаю, что это довольно легко для Active Directory, использующего пространство имен DirectoryServices, но я не могу найти ничего для старых доменов NT4. Я бы предпочел не использовать вызовы API, если это вообще возможно (однако это может потребовать немного больших затрат).

Кроме того, что касается бонусных баллов (!), Мы наконец-то перейдем к Active Directory позже этой осенью, так как мне придумать способ автоматического переключения моего списка доменов с NT4 на AD при переходе (поэтому я не не нужно перекомпилировать и повторно выпустить)

1 Ответ

1 голос
/ 22 августа 2008

К сожалению, я думаю, что ваш единственный вариант - использовать ADSI API. Вы можете переключаться между NT4 и Active Directory, меняя провайдеров в своем коде. NT4 использует поставщика WinNT, а Active Directory - поставщика LDAP.

Если вы запрашиваете узел RootDSE того поставщика, который вы используете, он должен возвращать контексты именования, к которым вы можете привязать, включая домены. RootDSE - это специфичный для схемы LDAP идентификатор. Для WinNT вы можете запросить корневой объект как «WinNT:» для получения доступных доменов.

ADSI доступен через VB скрипт BTW.

...