Thema: Delphi Mailslots ?

Einzelnen Beitrag anzeigen

Benutzerbild von sakura
sakura

Registriert seit: 10. Jun 2002
Ort: Unterhaching
11.412 Beiträge
 
Delphi 12 Athens
 
#2
  Alt 8. Mai 2003, 12:49
Ich arbeite viel mit Pipes, welche sich an dieser Stelle genau gleich verhalten. Ja, Du musst ein wenig mit den Security Attributen "rumspielen". Dazu musst Du nur ein paar Zeilen am Server einfügen.

Delphi-Quellcode:
// der Server
var
  FSA: SECURITY_ATTRIBUTES;
  FSD: SECURITY_DESCRIPTOR;
...
  InitializeSecurityDescriptor(@FSD, SECURITY_DESCRIPTOR_REVISION);
  SetSecurityDescriptorDacl(@FSD, True, nil, False);
  FSA.lpSecurityDescriptor := @FSD;
  FSA.nLength := sizeof(SECURITY_ATTRIBUTES);
  FSA.bInheritHandle := True;
// gleiches halt nur mit der Server-Pipe, der letzte Parameter bestimmt das Security Level
  Pipe := CreateNamedPipe(
    PChar(FFullPipeName), PIPE_ACCESS_DUPLEX, PIPE_TYPE_MESSAGE or
    PIPE_READMODE_MESSAGE or PIPE_WAIT or SECURITY_ANONYMOUS,
    PIPE_UNLIMITED_INSTANCES, cMaxMessageDataSize + 1024,
    cMaxMessageDataSize + 1024, NMPWAIT_USE_DEFAULT_WAIT, @FSA
  );
......
Daniel Lizbeth
Ich bin nicht zurück, ich tue nur so
  Mit Zitat antworten Zitat