Einzelnen Beitrag anzeigen

Dezipaitor

Registriert seit: 14. Apr 2003
Ort: Stuttgart
1.701 Beiträge
 
Delphi 7 Professional
 
#2

Re: AccessCheck liefert False wenn Exception ausgelöst wird

  Alt 14. Nov 2007, 15:01
Es wurde vergessen zu definieren:

dwStructureSize := sizeof(ps); HA, was das schnell oder was?


Und noch was in Eigenwerbung. So sieht das ganze mit der JEDI Windows Security Code Library aus

Delphi-Quellcode:
function JwCheckAdministratorAccess : Boolean;
var
    SD : TJwSecurityDescriptor;
begin
  if not Assigned(JwAdministratorsSID) then
    JwInitWellKnownSIDs;

  SD := TJwSecurityDescriptor.Create;
  try
    SD.PrimaryGroup := JwNullSID;
    SD.Owner := JwAdministratorsSID;
    SD.OwnDACL := true;

    SD.DACL.Add(TJwDiscretionaryAccessControlEntryAllow.Create(nil,[],
      STANDARD_RIGHTS_ALL,JwAdministratorsSID,false));

    result := TJwSecureGeneralObject.AccessCheck(SD,nil,STANDARD_RIGHTS_ALL,
      TJwSecurityGenericMapping);
  finally
    FreeAndNil(SD);
  end;
end;
Christian
Windows, Tokens, Access Control List, Dateisicherheit, Desktop, Vista Elevation?
Goto: JEDI API LIB & Windows Security Code Library (JWSCL)
  Mit Zitat antworten Zitat