AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Win32/Win64 API (native code) Delphi Auslesen welcher User zu welcher Gruppe gehört?!
Thema durchsuchen
Ansicht
Themen-Optionen

Auslesen welcher User zu welcher Gruppe gehört?!

Ein Thema von f.r.e.s.h.d · begonnen am 11. Feb 2003 · letzter Beitrag vom 11. Feb 2003
Antwort Antwort
Seite 1 von 2  1 2      
f.r.e.s.h.d

Registriert seit: 6. Feb 2003
Ort: Hamburg
66 Beiträge
 
Delphi 6 Enterprise
 
#1

Auslesen welcher User zu welcher Gruppe gehört?!

  Alt 11. Feb 2003, 07:56
Auslesen welcher User zu welcher Gruppe gehört?!

Kann mir hierzu jemand sagen, wie dieses funktioniert?
Die einzelnen User kann ich auslesen, nur die Gruppen
auszulesen bekmme ich nicht hin.

Vielen Danke schon mal im Vorraus!!!
  Mit Zitat antworten Zitat
f.r.e.s.h.d

Registriert seit: 6. Feb 2003
Ort: Hamburg
66 Beiträge
 
Delphi 6 Enterprise
 
#2
  Alt 11. Feb 2003, 08:13
Ich müßte wissen wie ich herraus finden kann, welcher Benutzer zur
welcher Gruppe gehört und desweiteren, welche Gruppen überhaupt vorhanden sind!?
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie

Registriert seit: 29. Mai 2002
37.621 Beiträge
 
Delphi 2006 Professional
 
#3
  Alt 11. Feb 2003, 09:50
Mit NetLocalGroupEnum bekommst du alle Gruppen und mit NetUserGetGroups bekommst du alle Gruppen, in der der jeweilige Benutzer Mitglied ist.
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat
f.r.e.s.h.d

Registriert seit: 6. Feb 2003
Ort: Hamburg
66 Beiträge
 
Delphi 6 Enterprise
 
#4
  Alt 11. Feb 2003, 10:33
Vielen Dank!

Hast du vielleicht auch ein kl. Beispiel für mich?

Danke!
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie

Registriert seit: 29. Mai 2002
37.621 Beiträge
 
Delphi 2006 Professional
 
#5
  Alt 11. Feb 2003, 10:45
Die Netxxx-Funktionen funktionieren alle nach dem gleichen Prinzip. Wenn du also die Benutzer auslesen kannst, dann sollte das auch kein Problem sein.
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat
f.r.e.s.h.d

Registriert seit: 6. Feb 2003
Ort: Hamburg
66 Beiträge
 
Delphi 6 Enterprise
 
#6
  Alt 11. Feb 2003, 10:51
if NetLocalGroupEnum(nil, 0, FILTER_NORMAL_ACCOUNT, XXX, MAX_PREFERRED_LENGTH, dwEntriesRead, dwEntriesTotal) = NERR_SUCCESS then


prefmaxlen:
Preferred maximum length, in 8-bit bytes of returned data.

ich komme mit dieser Stelle nicht klar, was muß denn da rein?
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie

Registriert seit: 29. Mai 2002
37.621 Beiträge
 
Delphi 2006 Professional
 
#7
  Alt 11. Feb 2003, 10:58
Wo jetzt? Da wo bei dir die xxx stehen oder meinst du die Konstante, die hast du doch da schon stehen.

Bei den xxx kommt das hin, was du auch bei NetLocalUserEnum eingestetzt hast, nur eben für NetLocalGroupEnum.
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat
f.r.e.s.h.d

Registriert seit: 6. Feb 2003
Ort: Hamburg
66 Beiträge
 
Delphi 6 Enterprise
 
#8
  Alt 11. Feb 2003, 11:00
Sorry, ich meinte das XXX.

Ich habe das selbe hinein geschrieben, aber das funktioniert nicht.

[Fehler] Unit1.pas(58): Die Typen der tatsächlichen und formalen Var-Parameter müssen übereinstimmen
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie

Registriert seit: 29. Mai 2002
37.621 Beiträge
 
Delphi 2006 Professional
 
#9
  Alt 11. Feb 2003, 11:04
Der Datentyp muß natürlich auch stimmen. Poste doch mal etwas Code.
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat
f.r.e.s.h.d

Registriert seit: 6. Feb 2003
Ort: Hamburg
66 Beiträge
 
Delphi 6 Enterprise
 
#10
  Alt 11. Feb 2003, 11:19
Das hier war für die User:
Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
var
  dwEntriesRead, dwEntriesTotal: DWORD;
  ui1, ui2 : Pointer;
  i : Integer;
begin
  if NetUserEnum(nil, 0, FILTER_NORMAL_ACCOUNT, ui1, MAX_PREFERRED_LENGTH, dwEntriesRead, dwEntriesTotal, nil) = NERR_SUCCESS then
  begin
    ui2 := ui1;
    for i := 0 to dwEntriesRead-1 do
    begin
      Listbox1.Items.Add(PUserInfo1(ui1)^.usri1_name);
      Inc(Integer(ui1), SizeOf(Pointer));
    end;
  end;
  NetAPIBufferFree(ui2);
end;

Und das soll für die Gruppen sein:
(Erstmal alle Gruppen anzeigen, später muß nach zu jedem Benutzer die Gruppe ermittelt werden.)

Delphi-Quellcode:
var
  dwEntriesRead, dwEntriesTotal, jo : DWORD;
  ui1, ui2 : Pointer;
  i : Integer;
begin
  if NetLocalGroupEnum(nil, 0, FILTER_NORMAL_ACCOUNT, ui1, MAX_PREFERRED_LENGTH, dwEntriesRead, dwEntriesTotal) = NERR_SUCCESS then
  begin
    ui2 := ui1;
    for i := 0 to dwEntriesRead-1 do
    begin
      Listbox1.Items.Add(PLOCALGROUPINFO0(ui1)^.lgrpi0_name);
      Inc(Integer(ui1), SizeOf(Pointer));
    end;
  end;
  NetAPIBufferFree(ui2);
end;
Code-Tages hinzugefügt - Luckie
Beim nächsten mal bitte selber machen.
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 15:35 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz