
Zitat von
patti:
Welchen Vorteil hat es denn, die Dateien in einem externen Ordner zu speichern?
Es geht ja nicht um "einen externen" es geht um den(!) Anwendungsordner*, zu finden unter "{Windowslaufwerk}\Dokumente und Einstellungen\{User}\Anwendungsdaten\{Name_Deines_ Programms}"**
Der Vorteil ist, dass du definitiv die Rechte hast, dort Einstellungen zu speichern. Starte doch mal dein Programm aus dem Programmverzeichnis in Vista. Vermutlich wird dir der Himmel auf den Kopf fallen. Nun gibt es ja auch die Möglichkeit, dass der User das Programm auf seinem USB-Stick mit sich mitnehmen möchte. Dann ist das Speichern unter "Anwendungsdaten" ziemlich sinnbefreit und das Speichern im Ordner der Anwendung sinnvoller.
Ich habe mir für mein Programm einfach eine Funktion gebastelt, die zuerst nach der Konfigurationsdatei im Programmverzeichnis sucht, dann im Anwendungsdaten-Verzeichnis des aktuellen Nutzers und dann im Anwendungsdatenverzeichnis aller Nutzer. Wenn er da nix findet, fragt er den User, ob er das Programm gerne "portabel" nutzen möchte (Einstellungen werden im Programmordner gespeichert), oder für einen oder für alle Nutzer auf diesem Rechner nutzen möchte.
Tadaa, galant gelöst.
Den Pfad zum dem Ordner kannst du übrigens über die
API herausfinden, "SpecialFolderLocation" heißt
imho das Stichwort.
*Den ist eigentlich falsch, gibt ja mehrere
**Oder statt "{User}" "All Users".