Hallo zusammmen,
erstmal ein dickes Danke an marabu und Luckie. Mein letzter Delphi-Code, den ich gepostet habe war schon fast richtig.
Delphi-Quellcode:
procedure TForm7.Button2Click(Sender: TObject);
var
dwEntriesRead, dwEntriesTotal: DWORD;
lgi01, lgi02 : PByte;
i : Integer;
NetAPIResult: Cardinal;
begin
lgi02 := nil;
lgi01 := nil;
Form7.Cursor := crHourGlass;
Listbox1.Clear;
NetAPIResult := NetUserGetLocalGroups(PWideChar(Edit1.Text), PWideChar(Edit2.Text), 0, 0, lgi01, MAX_PREFERRED_LENGTH, dwEntriesRead, dwEntriesTotal);
if NetAPIResult = NERR_SUCCESS then
begin
lgi02 := lgi01;
for i := 0 to dwEntriesRead - 1 do
begin
Listbox1.Items.Add(PLOCALGROUP_USERS_INFO_0(lgi01)^.lgrui0_name);
Inc(Integer(lgi01), SizeOf(Pointer));
end;
end
else
ListBox1.Items.Add('Fehler !! --> ' + IntToStr(NetAPIResult));
NetAPIBufferFree(lgi02);
Form7.Cursor := crDefault;
end;
Der Fehler liegt in Zeile 12 bei den beiden PWideChar. Ich kann anscheinend keinen String aus der Eigenschaft
Text direkt als WideChar an die Funktion übergeben. Wenn ich nun die beiden Eingaben von Edit1 und Edit2 in zwei WideString-Variablen schreibe und diese dann an die Funktion übergebe, funktioniert diese wunderbar.