Вопрос : C# - восстановите потребителей активно группы директории членство ГЛАВНЫМ ОБРАЗОМ

Мне нужно получить всех потребителей «первичной группы».  например, когда a делает вопрос LDAP на «членах потребителя домена», я не получаю ничего - это потому что вс actuall член которые принадлежат к ему имейте «домен потребитель» как их первичная группа -, котор я уже вычислял вне как получить потребителей первичная группа (ниже) - теперь я нужно получить что члены первичных групп, например, я проходят в потребителей домена и я получаю назад user1, user2, etc - Thanks

class= " ясное " >
> " codeSnippet " class=
class= " lineNumbers "
class=
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
32:
33:
34:
35:
36:
37:
38:
39:
40:
шнур GetUsersPrimaryGroup " class= " id= " codeSnippet965222
public статический (samAccountName шнура)
        {
            попытка
            {
            
                Srch DirectorySearcher = Util.SearchUsers (100, samAccountName, ложные);
                userResult SearchResult = srch.FindOne ();
                Потребитель DirectoryEntry = новое DirectoryEntry (userResult.Path);
                userSid = потребитель байта []. Свойства [«objectSid»] [0] как байт [];
                user.RefreshCache (новый шнур [] {«primaryGroupId»});
                primaryGroupID int = потребитель (int). Свойства [«primaryGroupId»] [0];
                байт [] освобождал = BitConverter.GetBytes (primaryGroupID);
                для (int iий = 0; iий < освобождано. Длина; i++)
                {
                    освобожданное userSid.SetValue ([I], новое длиннее [] {userSid.Length - (освобождано. Длина - I)});
                }
                adPath шнура = String.Format («LDAP: //», BuildOctetString (userSid));
                DirectoryEntry de = новое DirectoryEntry (adPath);
                //We не хочет размещать до тех пор пока мы не иметь название группы, которое почему мы задаем вместо возвращения
                primaryGroupName шнура = de. Свойства [«sAMAccountName»] [0] .ToString ();
                возвращенное primaryGroupName;
                
            }
            задвижка (исключение ex)
            {
                //throw, котор нужно уловить в вызывать метод (мы хотим детали/можем трассировать более лучше)
                ход ex;
            }
           
        }
        
        приватный статический шнур BuildOctetString (байты байта [])
        {
            Sb StringBuilder = новое StringBuilder ();
            для (int iий = 0; iий < байты. Длина; i++)
            {
                sb. Приложите (байты [I] .ToString («X2»));
            }
            возвратите sb.ToString ();
        }
class=

Ответ : C# - восстановите потребителей активно группы директории членство ГЛАВНЫМ ОБРАЗОМ


Оно должно быть довольно просто, 2 части, сперва должна восстановить значение PrimaryGroupToken от группы, тогда исполняет поиск:


DirectorySearcher ADSearch = новое DirectorySearcher («(primaryGroupID=» + PrimaryGroupToken + ") «);
SearchResultCollection приводит к = ADSearch.FindAll ();


Крис
Другие решения  
  •  Как я добавляю кнопки на форме PDF для того чтобы добавить/извлекаю рядки данных?
  •  Шнур ошибки в блоке задвижки?
  •  сколько вариант сервера SQL на одной машине
  •  Внешний вид 2007 не может архивный файл открытой сети сохраненный
  •  Активно директория DNS записывает вопрос
  •  Отчет о доступа 2010 экспорта к CSV с коллекторами?
  •  Прокладчик OCE 9400 не начинает
  •  как добавить десятичное место в формуле в отчете о кристалла seagate
  •  Windows XP и Мичрософт Оутлоок и проблемы установителя Windows
  •  VB6 к VS2010 - консультации тренировки?
  •  
    programming4us programming4us