Neno Lojes Vista-Tagebuch

Tag 7: Wohin mit den Daten?

Für viele Entwickler stellt sich tagtäglich die Frage: wohin mit den Daten? Dass der Programme-Ordner für Benutzereinstellungen nicht wirklich geeignet ist, spricht sich langsam herum. Ist die Registry der Ort der Wahl? Oder doch lieber moderne XML-Dateien? Dürfen angestaubte .INI-Dateien jetzt gar nicht mehr verwendet werden?

Wie in so vielen Fällen lautet die korrekte Antwort: es kommt darauf an! Das Format spielt dabei keine Rolle. Ob .INI, .XML oder Registry – allein auf den richtigen Ort kommt es an.

Ordner:

Auswirkung:

Beschreibung:

%ProgramFiles%
(C:\Program Files)

Alle Benutzer

Alles, was nur zum Installationszeitpunkt geschrieben wird, z.B. ausführbare Dateien. Spätere Manipulationen (z.B. Updates) nur durch Administratoren möglich.

%ProgramData%
(C:\ProgramData)

Alle Benutzer

Anwendungseinstellungen, die gemeinsam von allen Benutzern verwendet werden, insbesondere auch, wenn die Applikation Daten speichert, die von allen Benutzern des Systems geschrieben werden können sollen. Dafür müssen dann auf einen Unterordner (oder eine Datei) die Berechtigungen (ACLs) angepasst werden, was wiederum am besten während der Installation erfolgen sollte.
(entspricht %ALLUSERSPROFILE%)

%Public%
(C:\Users\Public)

Alle Benutzer

Ablage für Dokumente und Musik, die von mehreren Benutzern verwendet werden soll. Ein Standardbenutzer kann hier keine neuen Unterordner anlegen oder außerhalb der vorgegebenen Ordner schreiben. Es dient also wirklich nur für limitierte Zwecke.

%AppData%
(%Username%\AppData\Roaming)

Benutzerbezogen

Daten, die nur für den aktuellen Benutzer gelten und bei einer Anmeldung an einem anderen PC innerhalb eines Netzwerks auch dort verfügbar sind (Roaming), z.B. Konfiguration des Mailprogramms.

%LocalAppData%
(%Username%\AppData\Local)

Benutzer- und Rechnerbezogen

Daten für den Benutzer auf dem aktuellen PC, z.B. Cache des Mailprogramms.


Windows- und System-Verzeichnisse sind gänzlich tabu (Ausnahme: Treiber).

Für gewöhnlich kommt man mit den genannten Ordnern aus. Die Registry hat aber noch lange nicht ausgedient. Gerade, wenn es um zeitgleiche Zugriffe geht, zum Beispiel aus mehreren Applikation heraus, oder die Fernwartung der Einstellungen vereinfacht werden soll, liefert die Registrierung gute Dienste. Dennoch gilt: sofern es keinen anderen Grund gibt, gehören eigene Konfigurationseinstellungen in Dateien – in welchem Format auch immer.

Eine Auflistung der Umgebungsvariablen – auch im Vergleich zwischen Windows XP und Windows Vista - finden Sie unter www.dotnetjunkies.com und MSDN Library.

Auflistung der Umgebungsvariablen

Abbildung 1: Auflistung der Umgebungsvariablen

Mein Thema morgen wird es sein, wie wir die Lieblingsprogramme des Benutzers würdigen.

Bis dahin viel Spaß beim "richtigen" Speichern Ihrer Daten,

Ihr Neno Loje

Neno Loje
Freier Berater & Fachautor
Sie haben Fragen zu Visual Studio Team System (VSTS) oder Anregungen und Kommentare zu meinem Vista-Tagebuch? Dann freue ich mich auf Ihre Nachricht.

* *
* *