ClickOnce und Anwendungseinstellungen
Aktualisiert: November 2007
Mit den Anwendungseinstellungen für Windows Forms wird das Erstellen, Speichern und Verwalten von benutzerdefinierten Einstellungen für Anwendungen und Benutzer auf dem Client erleichtert. Das vorliegende Dokument erläutert, wie Anwendungseinstellungsdateien in einer ClickOnce-Anwendung funktionieren und wie ClickOnce Einstellungen migriert, wenn der Benutzer auf eine nachfolgende Version aktualisiert.
Die im Folgenden gegebenen Informationen gelten nur für den Standardanbieter von Anwendungseinstellungen, die LocalFileSettingsProvider-Klasse. Wenn Sie einen benutzerdefinierten Anbieter bereitstellen, wird in diesem Anbieter festgelegt, wie die Daten gespeichert und bei einem Versionswechsel aktualisiert werden. Weitere Informationen zu Anbietern von Anwendungseinstellungen finden Sie unter Architektur der Anwendungseinstellungen.
Anwendungseinstellungsdateien
Anwendungseinstellungen benötigen zwei Dateien: app.exe.config und user.config, wobei app der Name Ihrer Windows Forms-Anwendung ist. Die Datei user.config wird auf dem Client erstellt, wenn Ihre Anwendung zum ersten Mal Benutzereinstellungen speichert. Die Datei app.exe.config gibt es dagegen schon vor der Bereitstellung, wenn Sie Standardwerte für Einstellungen definieren. Visual Studio berücksichtigt diese Datei automatisch, wenn Sie den Befehl Veröffentlichen verwenden. Wenn Sie eine ClickOnce-Anwendung mit Mage.exe oder MageUI.exe erstellen, müssen Sie sicherstellen, dass diese Datei zusammen mit den anderen Dateien der Anwendung in das Anwendungsmanifest aufgenommen wird.
In einer Windows Forms-Anwendung, die nicht mit ClickOnce bereitgestellt wurde, wird die Datei app.exe.config einer Anwendung im Anwendungsverzeichnis gespeichert. Die Datei user.config wird im Ordner Dokumente und Einstellungen des Benutzers gespeichert. In einer ClickOnce-Anwendung befindet sich die Datei app.exe.config im Anwendungsverzeichnis des ClickOnce-Anwendungscaches, und user.config befindet sich im ClickOnce-Datenverzeichnis für diese Anwendung.
Unabhängig davon, wie Sie die Anwendung bereitstellen, ist bei den Anwendungseinstellungen ein sicherer Lesezugriff auf app.exe.config und ein sicherer Schreib-/Lesezugriff auf user.config sichergestellt.
In einer ClickOnce-Anwendung wird die Größe der von den Anwendungseinstellungen verwendeten Konfigurationsdateien durch die Größe des ClickOnce-Caches beschränkt. Weitere Informationen finden Sie unter Übersicht über den ClickOnce-Cache.
Versionsupdates
Genau wie jede Version einer ClickOnce-Anwendung von allen anderen Versionen getrennt ist, sind die Anwendungseinstellungen einer ClickOnce-Anwendung getrennt von den Einstellungen der anderen Versionen. Wenn ein Benutzer die Anwendung auf eine neuere Version aktualisiert, vergleichen die Anwendungseinstellungen die Einstellungen der neuesten Version (mit der höchsten Versionsnummer) mit den Einstellungen, die mit der aktualisierten Version bereitgestellt werden. Anschließend werden die Einstellungen in einem neuen Satz Einstellungsdateien zusammengeführt.
Die folgende Tabelle beschreibt, wie in den Anwendungseinstellungen entschieden wird, welche Einstellungen kopiert werden.
Art der Änderung |
Aktualisierungsaktion |
---|---|
Einstellung wurde app.exe.config hinzugefügt |
Die neue Einstellung wird in app.exe.config der aktuellen Version aufgenommen. |
Einstellung wurde aus app.exe.config entfernt |
Die alte Einstellung wird aus app.exe.config der aktuellen Version entfernt. |
Standardwert der Einstellung wurde geändert; lokale Einstellung in user.config ist immer noch auf den ursprünglichen Standardwert festgelegt |
Die Einstellung wird in user.config der aktuellen Version aufgenommen und erhält den neuen Standardwert als Wert. |
Standardwert der Einstellung wurde geändert; Einstellung in user.config ist nicht auf Standardwert festgelegt |
Die Einstellung wird in user.config der aktuellen Version aufgenommen; der nicht dem Standardwert entsprechende Wert wird beibehalten. |
Wenn Sie eine eigene Wrapperklasse für die Anwendungseinstellungen erstellt haben und die Programmlogik für Updates anpassen möchten, können Sie die Upgrade-Methode überschreiben.
ClickOnce und Roamingeinstellungen
ClickOnce funktioniert nicht mit Roamingeinstellungen, bei denen Ihnen die Einstellungsdatei auf allen Computern in einem Netzwerk zur Verfügung steht. Wenn Sie Roamingeinstellungen benötigen, müssen Sie entweder einen Anbieter von Anwendungseinstellungen erstellen, bei den die Einstellungen über das Netzwerk gespeichert werden, oder eigene benutzerdefinierte Einstellungsklassen entwickeln, mit denen Einstellungen auf einem Remotecomputer gespeichert werden. Weitere Informationen zu Einstellungsanbietern finden Sie unter Architektur der Anwendungseinstellungen.
Siehe auch
Konzepte
Übersicht über die ClickOnce-Bereitstellung
Übersicht über Anwendungseinstellungen
Übersicht über den ClickOnce-Cache
Zugreifen auf lokale und Remotedaten in einer ClickOnce-Anwendung