Hallo,
mein Programm benutzt zum Lesen und Speichern von Einstellungen eine *.ini Datei (z.B. "MeinProgamm.ini").
Derzeitig habe ich die Speicherung dieser Datei in dem Programmverzeichnis, worin es auch installiert wurde, gespeichert.
Nun, unter Windows 7 (bzw. ab Vista) ist dies "unschön" und nebenbei sind die Zugriffrechte auch "verschärft".
Aus diesem Grund möchte ich meine *.ini Datei in ein Verzeichnis speichern, worauf alle Benutzer gemeinsam Lese- und Schreibrechte haben.
Mittels
SHGetSpecialFolderLocation => GetShellFolder(CSIDL_COMMON_APPDATA);
habe ich dieses Verzeichnis ermittelt.
Unter Win XP:
C:\Dokumente und Einstellungen\All Users\Anwendungsdaten\MeinProgramm
=> Datei: "MeinProgamm.ini"
unter Win 7:
C:\ProgrammData\MeinProgramm
=> Datei: "MeinProgamm.ini"
Jetzt ergibt sich aber das Problem, dass der Benutzer, der diese Datei nicht erstellt hat, zwar die *.ini Datei lesen, aber nicht abspeichern kann.
Bin ich doch im falschen Verzeichnis "gelandet"?
P.S. Jeder Benutzer soll die gleiche *.ini Datei und deren Inhalt haben. Also keine "benutzerbezogene" *.ini Datei.