Откройте страницу свойств пользователей и компьютеров Active Directory из приложения C#

Я хотел бы открыть листы свойств для пользователей, групп и т. Д. Консоли "Пользователи и компьютеры Active Directory" из приложения C#.

Кто-нибудь знает, как это сделать?

Я нашел пример в Windows Server 2003 Platform SDK. К сожалению, он на C++, очень длинный, очень сложный и не работает с 64-битными операционными системами.

Но я думаю, что решением может быть небольшая библиотека на C++, которая только открывает лист свойств и действует как оболочка для приложения C#.

С уважением, Гамбург, Марк

1 ответ

Этот образец Microsoft из GitHub работает с 64-битными системами. Вы передаете путь ADS в качестве параметра, и он вызывает окно свойств.

      PropSheetHost.exe "LDAP://CN=user,DC=MyDomain,DC=MyTldDomain"

Важно, чтобы он был чувствителен к регистру, поэтому «ldap://..» не работает. Код определенно не предназначен для многократного вызова перед завершением, поэтому, вероятно, это лучший способ использовать exe без таких изменений:

      ProcessStartInfo startInfo = new ProcessStartInfo();        
startInfo.FileName = @"PropSheetHost.exe";
startInfo.Arguments = @"LDAP://CN=user,DC=MyDomain,DC=MyTldDomain";
Process.Start(startInfo);

Для прямого вызова из C# необходимо внести некоторые изменения (например, добавить отсутствующий класс unregister). Это работает для меня: как открыть диалоговое окно свойств объекта «Пользователи и компьютеры Active Directory» из С#?

Другие вопросы по тегам