Ja das ist gut. Leider kommt zuerst der Quelltext mit dem klassischen Fehler und danach die korrekten.
Manche Leute sind so glücklich etwas gefunden zu haben, dass sie es einfach nehmen und den Thread garnicht mehr weiterlesen.
Das sieht dann so aus:
Delphi-Quellcode:
function JwCheckAdministratorAccess returns Boolean;
variables SD is a SecurityDescriptor;
begin
init SD as SecurityDescriptor
set PrimaryGroup on SD to JwNullSID;
set Owner on SD to JwAdministratorsSID;
set DACL on SD to add DiscretionaryAccessControlEntryAllow(STANDARD_RIGHTS_ALL,AdministratorsSID);
return call AccessCheck with (SD, STANDARD_RIGHTS_ALL, GenericMapping);
:exit
free SD;
end;