2016-11-17 2 views
-2

Ich arbeite mit Active Directory Service-Schnittstellen und versuche alle Benutzer aus einer Gruppe abzurufen. Ich habe diese Codezeile, die mir die Gruppe selbst bringt:Delphi-Arbeiten mit ADSI- wie alle Gruppenmitglieder abgerufen werden

var 
    Group:IADSGroup; 
begin 
    ADsGetObject('LDAP://CN=myGroup,CN=Users,DC=dltomb,DC=dltomb25,DC=com', IADSGroup, Group); 
...... 

die IADsGroup Schnittstelle verfügt über eine „IsMember“ Funktion, die einen Wide was einen Benutzer erhält, und sollte true zurück, wenn der Benutzer ein Mitglied dieser ist Gruppe. das Problem ist, dass ich immer eine negative Antwort von diesem ... bekommen (der Benutzer, den ich überprüfe, ist der einzige Benutzer dieser Gruppe und überprüfte auch Group.Count, um zu sehen, dass es ein Mitglied in dieser Gruppe gibt). wenn wirklich etwas Hilfe zu diesem Thema erfahren möchten, selbst wenn jemand auf andere Abhilfe wie Aufzählen der Gruppenmitglieder

+0

Numerieren Sie die Mitglieder mit 'Members ' –

Antwort

-1

ok ich gefunden (ich dies auch nicht tun konnte) zeigen kann, wie die Gruppe

var 
    groupName: string; 
    Fetched: Cardinal; 
    ResultItem: OleVariant; 
    members: IADsMembers; 
.............. 
groupName:= Group.get_Name; 
members:= Group.Members; 
enum:= members._NewEnum as IEnumVariant; 
Enum.Reset; 

Enum.Next(1, ResultItem, Fetched); 

while Fetched = 1 do 
begin 
    GroupMember := IDispatch(ResultItem) as IADS; 
    //do something 
    Enum.Next(1, ResultItem, Fetched); 
end; 
iterieren

Aber ich habe jetzt ein anderes Problem, ich kann nicht alle Mitglieder der Gruppe sehen, wenn Sie andere Mitglieder hinzufügen. Ich weiß, dass dies daran liegt, dass aus irgendeinem Grund nur Benutzer zu dieser Gruppe gehören und dass diese Gruppe nicht ihre primäre Gruppe ist. Wie kann ich auch einen Benutzer mit der Gruppe, die ich suche, als ihre primäre Gruppe bekommen?

+0

Bitte keine neue Frage in einer" Antwort "- SO unterstützt dies nicht. Öffne stattdessen ein neues q. – MartynA

+0

ok ich werde, danke – itay312

+0

Dieser Code wird nicht aufgezählt. –

Verwandte Themen