Einzelnen Beitrag anzeigen

naht2k6

Registriert seit: 23. Apr 2015
11 Beiträge
 
#1

Zugriffsrechte von Dateien ändern

  Alt 21. Jul 2015, 14:58
Hi,

ich hoffe ich bin hier richtig bei "Win32/64 API".
Also, folgendes ist mein Problem.

Ich schreibe an einem Programm, dass gern Einstellungen in einer Ini-Datei speichert.
Ich würde gern diese Ini-Datei im Windows Common_Appdata_Folder lesen und schreiben. Sinnvoller Weise soll diese Datei natürlich deswegen in den Common_Appdata_Folder, weil ich mit allen vorhanden Windows Usern darauf zugreifen können möchte.

Eigentlich alles ganz easy und vor allem standart.
Nun ist es aber so, dass ich die betreffenden Dateien nicht per Setup installieren kann, sondern sie beim ersten Start des Programms neu erstellen muss.
Wenn ich nun das Programm mit Administratorrechten installiere, und auch mit genau diesem Nutzer zum ersten mal starte, erstellt der die Datei mit Zugriffsrechten, die sehr eingeschränkt sind, und die ich vor allem nicht beeinflussen kann. Wenn ich nun das Programm mit einem anderen Nutzer starte, kann die Datei nicht bearbeitet werden.

Die Datei in den User_Appdata_Folder zu packen ist leider nicht praktikabel!

Viel zu lange Rede, recht kurzer Sinn. Ich habe es immerhin schon geschafft, die Zugriffsrechte von Dateien zu ändern. Ich kann also nach dem erstellen der Datei die Zugriffsrechte beispielsweise so ändern, dass "Jeder" vollen Zugriff hat. Das habe ich unter Verwendung dieser kleinen Hilfe geschafft: http://www.delphipraxis.net/30695-pe...e-aendern.html

Mein Problem ist nun, dass ich das unabhängig von der Region tun muss, in der der Computer steht. Die Gruppennamen für Zugriffsrechte haben so schön regionale Namen, wie "User" / "Bentzer", "Jeder" / "Everybody", usw. Das ganze natürlich in allen möglichen Sprachen.
Mir fehlt also die Möglichkeit, die Datei für die allumfassende Gruppe "Jeder" unabhängig von der Sprache schreibbar zu machen.

Kennt wer eine tolle Variable, der die lokale Gruppe "Jeder" beschreibt. Oder gibt es eine Möglichkeit, sich den String zu holen. Oder hat wer eine ganz andere Idee?

Dank schon mal.
  Mit Zitat antworten Zitat