Ups, habe es so geändert:
function ConvertSidToStringSidW(Sid: PSID; var StringSid: LPCWSTR): Bool; stdcall;
Jetzt bekomme ich aber beim Aufruf:
Delphi-Quellcode:
procedure TForm1.Button3Click(Sender: TObject);
var
SID: PSID;
strSID: WideString;
begin
SID := nil;
GetAccountSid('hal9000', 'Michael', SID);
ConvertSidToStringSidW(SID, PWideChar(strSID));
ShowMessage(strSID);
end;
den Fehler:
Zitat:
[Error] Unit1.pas(99): Constant object cannot be passed as var parameter
Kommando zurück, so geht es:
Delphi-Quellcode:
procedure TForm1.Button3Click(Sender: TObject);
var
SID: PSID;
strSID: PWideChar;
begin
SID := nil;
GetAccountSid('hal9000', 'Michael', SID);
ConvertSidToStringSidW(SID, strSID);
ShowMessage(strSID);
end;