CSIDL_COMMON_APPDATA und Schreibrechte

16/01/2008 - 16:04 von Oliver Dietz | Report spam
Hallo zusammen,

ich möchte eine Datei erstellen die andere Benutzer des Computer lesen und
schreiben können. Zum einen geht es um Logdateien, zum anderen um
Einstellungen die auf dem ganzen Arbeitsplatz gelten sollen. Bisher haben
wir das unter C:\LOG.txt bzw. C:\Windows\<Anwendung>.ini gemacht. Mit
Windows Vista ist das aber nicht mehr ohne weiteres möglich.

Ist dafür CSIDL_COMMON_APPDATA der richtige Platz?
Also unter Windows XP C:\Dokumente und Einstellungen\All
Users\Anwendungsdaten\<Anwendung>

Wenn aber ein Benutzer (kein Administrator) dort einen Ordner oder einer
Datei erstellt, können andere Benutzer (keine Administratoren) die
Datei oder den Ordner nicht bearbeiten (es fehlen die NTFS-Schreibrechte).

Muss ich die NTFS-Rechte nach dem Erstellen des Ordner "von Hand" bzw. durch
Programmcode erst setzen oder gibt es eine elegantere Lösung?


Vielen Dank für eure Tipps,
Oliver
 

Lesen sie die antworten

#1 Gerald Mahlmeister
16/01/2008 - 16:40 | Warnen spam
Hallo!

Da sind wir auch drüber gestolpert. MS hat sich wohl damals nie so richtig
Gedanken über einen Ordner für gemeinsame Daten von Benutzern gemacht.
Dieser "Gemeinsame Dokumente" Ordner ist schon der richtige.
Wir haben das damals in unser Programm für die Vista Zertifizierung
eingebaut und unter Vista làuft das auch problemlos.
Bei XP allerdings hat dort zwar jeder User Schreibrechte, aber nicht das
Ändern Recht. Daher kann dort zwar jeder munter Dateien anlegen und auch
darin schreiben, aber halt nur in den eigenen.

Keine Ahnung, ob es da was besseres gibt. Wir arbeiten komplett in einem
Unterordner Firmenname dort und ich habe das Setup einfach so angepasst, daß
es unter XP die Berechtigungen dort so anpasst, wie unter Vista.

Gruß
Gerald

"Oliver Dietz" schrieb im Newsbeitrag
news:
Hallo zusammen,

ich möchte eine Datei erstellen die andere Benutzer des Computer lesen und
schreiben können. Zum einen geht es um Logdateien, zum anderen um
Einstellungen die auf dem ganzen Arbeitsplatz gelten sollen. Bisher haben
wir das unter C:\LOG.txt bzw. C:\Windows\<Anwendung>.ini gemacht. Mit
Windows Vista ist das aber nicht mehr ohne weiteres möglich.

Ist dafür CSIDL_COMMON_APPDATA der richtige Platz?
Also unter Windows XP C:\Dokumente und Einstellungen\All
Users\Anwendungsdaten\<Anwendung>

Wenn aber ein Benutzer (kein Administrator) dort einen Ordner oder einer
Datei erstellt, können andere Benutzer (keine Administratoren) die
Datei oder den Ordner nicht bearbeiten (es fehlen die NTFS-Schreibrechte).

Muss ich die NTFS-Rechte nach dem Erstellen des Ordner "von Hand" bzw.
durch
Programmcode erst setzen oder gibt es eine elegantere Lösung?


Vielen Dank für eure Tipps,
Oliver


Ähnliche fragen