[Delphi] Probleem geheugen reserveren??

Pagina: 1
Acties:

Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
Bij de volgende code:
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
  // Allocates Memory to ea
  ea := AllocMem(sizeof(EXPLICIT_ACCESS_A));

  if not AllocateAndInitializeSid(authWorld, 1, SECURITY_WORLD_RID, 0, 0, 0, 0, 0, 0, 0, psidWorld) then
    MessageBox(Application.Handle, PChar('Error AllocateAndInitializeSid'), PChar('Bericht'), MB_OK);

  //BuildExplicitAccessWithName(ea, PChar('GUEST'),
  //     SERVICE_START or SERVICE_STOP or READ_CONTROL, // or DELETE,
  //     SET_ACCESS, NO_INHERITANCE);

  ea.grfAccessPermissions := SERVICE_START or SERVICE_STOP or READ_CONTROL;
  ea.grfAccessMode := SET_ACCESS;
  ea.grfInheritance := NO_INHERITANCE; //SUB_CONTAINERS_AND_OBJECTS_INHERIT;
  ea.Trustee.TrusteeForm := TRUSTEE_IS_SID;
  ea.Trustee.TrusteeType := TRUSTEE_IS_WELL_KNOWN_GROUP;
  ea.Trustee.ptstrName := PAnsiChar(psidWorld);

  dwError := SetEntriesInAcl(1, ea, pac, pNewAcl);

Krijg ik een foutmelding van Invalid Parameter bij de functie SetEntriesInAcl.

Zodra ik het commentaar weghaal bij de procedure BuildExplicitAccessWithName werkt het wel gewoon goed. Maar die procedure is niet nodig, dus ik wil hem eigenlijk niet gebruiken.

Wat doe ik verkeerd?

Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
niemand :?

Acties:
  • 0 Henk 'm!

Verwijderd

Op maandag 13 augustus 2001 12:32 schreef tokkie het volgende:
niemand :?
binnen een uur?

RELAX! er komt vast wel een nuttige reply. morgen mag je hem weer omhoog schoppen.

Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
The BuildExplicitAccessWithName function does not allocate any memory
Ik reserveer geheugen en ik vul alle velden in.

ea.grfAccessPermissions := SERVICE_START or SERVICE_STOP or READ_CONTROL;
ea.grfAccessMode := SET_ACCESS;
ea.grfInheritance := NO_INHERITANCE; //SUB_CONTAINERS_AND_OBJECTS_INHERIT;

ea.Trustee.pMultipleTrustee := nil;
ea.Trustee.MultipleTrusteeOperation := NO_MULTIPLE_TRUSTEE;
ea.Trustee.TrusteeForm := TRUSTEE_IS_SID;
ea.Trustee.TrusteeType := TRUSTEE_IS_WELL_KNOWN_GROUP;
ea.Trustee.ptstrName := PAnsiChar(psidWorld);

Wat kan het nou zijn?