Autor Beitrag
mcbain
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 60
Erhaltene Danke: 1



BeitragVerfasst: Mi 16.02.11 10:00 
Hallo,
wie der Betreff schon sagt, möchte ich gerne die Vererbung bei Ordnern/Dateien über Delphi setzen. Also der Haken unter Sicherheit -> Erweitert.
Bisher habe ich das über das NTSet realisiert. Aber da ich nun kein Delphi7 mehr habe und das NTSet nicht mehr weiterentwickelt wurde, muss ich das ganze selbst realisieren in Delphi2010.

Kann mir da jemand weiterhelfen bitte? Hab mir schon nen Wolf gesucht...

Vielen Dank.
jaenicke
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 19339
Erhaltene Danke: 1752

W11 x64 (Chrome, Edge)
Delphi 12 Pro, C# (VS 2022), JS/HTML, Java (NB), PHP, Lazarus
BeitragVerfasst: Mi 16.02.11 10:11 
Laut Beschreibung der Komponenten solltest du doch als registrierter Nutzer auch den Quelltext bekommen haben, oder? Das ist ja immer das wichtigste bei externen Komponenten.

Denn dann brauchst du die Komponenten, die du brauchst, ja nur auf dein aktuelles Delphi anpassen. ;-)
mcbain Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 60
Erhaltene Danke: 1



BeitragVerfasst: Mi 16.02.11 10:14 
Nein, leider liegt der Quelltext uns nicht vor, wir haben eine Variante ohne Quelltext. Also nur die compilierten Dcu's.
jaenicke
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 19339
Erhaltene Danke: 1752

W11 x64 (Chrome, Edge)
Delphi 12 Pro, C# (VS 2022), JS/HTML, Java (NB), PHP, Lazarus
BeitragVerfasst: Mi 16.02.11 11:06 
Naja, aus Fehlern lernt man... Komponenten ohne Quelltext zu kaufen, ist meistens keine gute Idee, genau aus dem Grund.

Ja, dann kannst du in der JEDI Security Library schauen, da gibt es vermutlich etwas dafür:
sourceforge.net/projects/jedi-apilib/
mcbain Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 60
Erhaltene Danke: 1



BeitragVerfasst: Mi 16.02.11 11:56 
Leider war ich zu dem Zeitpunkt noch nicht in dem Unternehmen als die Komponente gekauft wurde. Aber ich werde es für die Zukunft auf jeden Fall berücksichtigen.
Ich danke dir für deine Hilfe.

Ich habe nun eine andere Lösung gewählt. Habe einfach eine C# dll in Delphi importiert.

Die Funktion in C# schaut dann folgendermaßen aus:

ausblenden C#-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
private static void InheritPermissions(string filename)
{
    FileInfo fInfo = new FileInfo(filename);
    if (fInfo.Exists)
    {
        FileSecurity fSec = fInfo.GetAccessControl();
        fSec.SetAccessRuleProtection(falsefalse);
        fInfo.SetAccessControl(fSec);
    }
}


Mit fSec.SetAccessRuleProtection(false, false) wird der Haken für die Vererbung bei der in filename angegebenen Datei gesetzt.
Mit fSec.SetAccessRuleProtection(true, true) wird der Haken für die Vererbung bei der in filename angegebenen Datei entfernt.

Die Funktion ist auch in C# nicht einfach zu finden, deswegen habe ich sie hier mal gepostet.