![]() |
TSecurityAttributes für Named Pipes
Ich bräuchte eine schlanke einfach Implemtierung für das Setzen der TSecurityAttributes für Named Pipes.
Vorzugsweise ohne den Jwa Overhead. Gibt es eine einfach Möglichkeit per CreateWellKnownSid o.ä. dort hin zu kommen? |
AW: TSecurityAttributes für Named Pipes
Nein, einfach ist das nicht. Der "Jwa Overhead" lässt sich aber auch nicht vermeiden (obwohl dieser Minimal ist und du mehr Overhead durch jede neue Delphiversion bekommst), außer du willst alle Strukturen selbst übersetzen, denn einfach rauskopieren aus JWA ohne Quellenangabe verstößt gegen die Lizenz.
Aber schau mal bei Luckie: ![]() Er könnte schon vorgekauten Code haben. Es gibt aber auch andere Bibliotheken, die als Minimalwrapper zur WinAPI dienen. Ka, wie der Name war. |
AW: TSecurityAttributes für Named Pipes
unerfreulich, trotzdem vielen Dank....
|
AW: TSecurityAttributes für Named Pipes
suche immer noch :-(
ich habe das ganze auch mal unter ![]() als CROSSPOST eingestellt. |
AW: TSecurityAttributes für Named Pipes
So, ich habe es jetz doch selbst gelöst...falls jemand mal ein ähnliches Problem hat...
es kann der Komponetente eine Templatedatei mit den gewünschten Zugriffsrechten zugewiesen werden. Die entscheidenenen Codeabschnitte:
Delphi-Quellcode:
private
FACL: PACL; FACLFileName: String; FpFileSD: PSecurityDescriptor; procedure TPipeServer.GenACLFromFile; //20110228 by Thomas Wassermann var res : Boolean; len : Cardinal; fDaclPresent,fDaclDefaulted:Bool; begin FACL := nil; if Assigned(FpFileSD) then DoHeapFree(FpFileSD); if FileExists(FACLFileName) then begin res := GetFileSecurity(PChar(FACLFileName),DACL_SECURITY_INFORMATION,FpFileSD,0,len); if res or (GetLastError() = ERROR_INSUFFICIENT_BUFFER) then begin FpFileSD := DoHeapalloc(len); GetFileSecurity(PChar(FACLFileName),DACL_SECURITY_INFORMATION,FpFileSD,len,len); GetSecurityDescriptorDacl(FpFileSD,fDaclPresent,FACL,fDaclDefaulted); end; end; end; |
Alle Zeitangaben in WEZ +1. Es ist jetzt 01:12 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz