2017-02-19 3 views
0

Ich verwende die Installer-Projekte Erweiterung für Visual Studio 2015, um meine SW in WPF geschrieben zu verteilen. Wenn auf dem PC bereits eine Version der SW installiert ist, wird die Datei appname.exe.config nicht mit der neuen Version überschrieben. Wenn der PC nicht installiert ist, wird die SW in das Verzeichnis sw die korrekte Version der Datei appname.exe.config kopiert.Visual Studio Installer Projekte Erweiterung überschreiben appname.exe.config

Wie kann ich reparieren?

+0

Die Standardregel besagt, dass Windows Installer keine Datendateien überschreibt, die seit der Erstinstallation aktualisiert wurden, da dadurch Benutzerdaten in der Datei zerstört werden. Ist das wahrscheinlich der Grund? – PhilDW

+0

Vielen Dank für die Antwort. Weißt du, ob du das Überschreiben erzwingen kannst? Die alte Konfigurationsdatei enthält keine Verweise auf meinen neuen Web Service SOAP – Mattekr

Antwort

0

Die Lösung ist oft, die Daten bei der Erstinstallation zu installieren und sie dann bei späteren Upgrades mit neuen Einstellungen zu aktualisieren. Dies kann in der Anwendung selbst oder in der Installation geschehen und hilft dabei, Versionsinformationen zu haben in der Datei. Zum Beispiel ersetzen Leute eine Datenbank nicht mit Daten, nur weil sie zusätzliche Tabelleninformationen haben - sie aktualisieren die vorhandene.

Wenn Sie dies während des Upgrades tun, können Sie die benutzerdefinierte Aktion für PREVIOUSVERSIONSINSTALLED konditionieren, die festgelegt wird, wenn ein Upgrade erkannt wird.

Mit anderen Tools können Sie die Datei vor dem Upgrade löschen, aber Visual Setups nicht. Eine andere Möglichkeit: Wenn Ihre App läuft, könnte sie immer die Zeitstempel der Datei ändern (wahrscheinlich wenn sie beendet wird), so dass Erstellungsdatum und Änderungsdatum identisch sind, so dass die Datei unverändert zu sein scheint und überschrieben wird.

Verwandte Themen