Benutzer mit den meisten Antworten
Wohin mit den Daten?

Frage
-
Hallo,
ich habe da mal eine grundlegende Frage. Bisher hatte ich Datendateien, die von allen Nutzern auf einem System verwendet werden, im Installationsverzeichnis unter "Program Files\MyApp" abgelegt. Dazu war es notwendig, diesem Verzeichnis Schreibberechtigung für BuildIn-User zu erteilen. Das scheint mir aber unsauber zu sein und nun möchte ich die Dateien dort ablegen, "wo sie hin gehören". Nur wo ist das? "Users\xyz\AppData\Local\..." kam mir in den Sinn. Dazu würde ich bei der Installation die Dateien zunächst weiterhin in "Program Files\MyApp" ablegen. Wenn nun ein Benutzer die Anwendung startet, werden die Dateien von dort nach "Appdata\Local" kopiert und mit der Kopie gearbeitet. Somit hätte jeder Benutzer seine eigenen Dateien, was nicht mal unbedingt schlecht ist, nur wie deinstalliere ich die wieder? Ich müsste durch alle Verzeichnisse unterhalb von "Users" bzw. "Dokumente und Einstellungen" iterieren und nachsehen, ob dort irgendwo (unter "Appdata\Local" bzw "Lokale Einstellungen\Anwendungsdaten") Dateien von mir liegen und löschen. Oder ich führe in der Registry eine Liste, wo meine Anwendung Dateien hin kopiert hat. Oder ich packe die Dateien doch wieder an eine zentrale Stelle, z.B. "C:\ProgramData" unter Win7, nur gibt es eine solche Stelle unter Windows XP nicht. Wo legt denn ihr solche Daten ab?
tia, Stefan
- Typ geändert Robert BreitenhoferModerator Donnerstag, 8. März 2012 09:13 Frage
Antworten
-
Hallo,
generell solltest Du Dir überlegen, wer wie auf die Daten zugreifen können soll. Davon hängt ab, wo die Daten wie hingeschrieben werden.
Und ebenfalls wichtig: Was für Daten sind dies? Kann es evtl. Sinn machen, dass jemand mehrere Datendateien hat? Das wäre dann das 08/15 Model, in dem der User Datendateien öffnen und speichern kann (also a.la. Office). Nimmt einem viele Probleme, da wir uns hier nicht über Verzeichnisse Gedanken machen müssen.
Wenn die Daten aber nicht auswählbar sein sollen, dann bietet sich z.B. IsolatedStorage an. Hier bietet .Net eine Klasse, mit der Du genau die Kriterien bekommst, die Du brauchst - Du kannst also genau angeben, wer wie auf die Daten Zugreifen können soll und ob z.B. Roaming unterstützt werden soll oder nicht .... Also viele Dinge, über die Du nicht mehr nachdenken musst. (IsolatedStorage solltest Du dir aber genau ansehen, damit Du keine bösen Überraschungen bekommst wenn Du Deine Applikation änderst!)
Ansonsten ist noch Environment.GetFolderPath mit der SpoecialFolder Enumeration zu erwähnen. Damit hast du bestimmte Ordner, die ja von Installation zu Installation unterschiedlich sein können!
Ich selbst mag IsolatedStorage sehr - zumal dies auf einzelnen Platformen auch die einzige Möglichkeit ist, Daten zu schreiben (WP7).
Mit den besten Grüßen,
Konrad
- Als Antwort markiert Robert BreitenhoferModerator Donnerstag, 8. März 2012 09:14
Alle Antworten
-
Hallo,
generell solltest Du Dir überlegen, wer wie auf die Daten zugreifen können soll. Davon hängt ab, wo die Daten wie hingeschrieben werden.
Und ebenfalls wichtig: Was für Daten sind dies? Kann es evtl. Sinn machen, dass jemand mehrere Datendateien hat? Das wäre dann das 08/15 Model, in dem der User Datendateien öffnen und speichern kann (also a.la. Office). Nimmt einem viele Probleme, da wir uns hier nicht über Verzeichnisse Gedanken machen müssen.
Wenn die Daten aber nicht auswählbar sein sollen, dann bietet sich z.B. IsolatedStorage an. Hier bietet .Net eine Klasse, mit der Du genau die Kriterien bekommst, die Du brauchst - Du kannst also genau angeben, wer wie auf die Daten Zugreifen können soll und ob z.B. Roaming unterstützt werden soll oder nicht .... Also viele Dinge, über die Du nicht mehr nachdenken musst. (IsolatedStorage solltest Du dir aber genau ansehen, damit Du keine bösen Überraschungen bekommst wenn Du Deine Applikation änderst!)
Ansonsten ist noch Environment.GetFolderPath mit der SpoecialFolder Enumeration zu erwähnen. Damit hast du bestimmte Ordner, die ja von Installation zu Installation unterschiedlich sein können!
Ich selbst mag IsolatedStorage sehr - zumal dies auf einzelnen Platformen auch die einzige Möglichkeit ist, Daten zu schreiben (WP7).
Mit den besten Grüßen,
Konrad
- Als Antwort markiert Robert BreitenhoferModerator Donnerstag, 8. März 2012 09:14
-
Hallo Tai Skorgon,
Ich gehe davon aus, dass die Antwort Dir weitergeholfen hat.
Solltest Du noch "Rückfragen" dazu haben, so gib uns bitte Bescheid.Grüße,
RobertRobert Breitenhofer, MICROSOFT
Bitte haben Sie Verständnis dafür, dass im Rahmen dieses Forums, welches auf dem Community-Prinzip „Entwickler helfen Entwickler“ beruht, kein technischer Support geleistet werden kann oder sonst welche garantierten Maßnahmen seitens Microsoft zugesichert werden können.