Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Распределённые приложения и сеть > Получение displayName по известному UserName


Автор: eon 16.11.2010, 10:38
Начал разрабатывать программу:
1. При входе в программу определяется, является ли пользователь Windows (запустивий программу) членом группы в Active Directory. (ЭТО СДЕЛАЛ).
2. После того, как пользователь прошел проверку на членство в группе, нужно в textbox1 вывести его DisplayName, в textbox2 - его GUID. Эту инфу взять из Active Directory
Пробывал двумя-тремя способами из теории на разных сайтах, чо-то никак не получилось.
Как это сделать быстро и удобно?

c#VS08

Автор: mihryak 16.11.2010, 12:52
уважаемый, вы ответы в своих темах читаете вообще?
http://forum.vingrad.ru/forum/topic-315047/kw-active-directory.html
у UserPrincipal в свойствах есть и DisplayName, и Guid
UserPrincipal текущего пользователя берётся из статического свойства - UserPrincipal.Current

Автор: eon 16.11.2010, 12:53
Код

string username = Environment.UserName;
DirectorySearcher mySearcher = new DirectorySearcher();
                mySearcher.Filter = ("(&(objectclass=user)(samaccountname=" + username + "))");
                SearchResult result = mySearcher.FindOne();
                if (result != null)
                {
                    this.Text += " - " + result.Properties["displayname"][0].ToString();
                }

Автор: mihryak 16.11.2010, 13:12
ох
повторюсь всё же - почитай эту http://msdn.microsoft.com/ru-ru/library/system.directoryservices.accountmanagement%28VS.90%29.aspx, используя низоуровневую работу с AD, ты регулярно будешь сталкиваться с трудностями вроде той же группы Domain Users, поверь, я уже пару лет касаюсь этой и смежных тем
классов этого неймспейса с головой хватит для всех действий над юзерами, которые тебе могут потребоваться

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)