Visual Studio Installer を使用してプロジェクトのインストーラーを作成しました。私の製品は頻繁に更新されます。そのため、一定期間内に最新情報を提供する必要があります。製品コードを変更し、古いアップグレード コードをそのまま維持することで、バージョンを作成できます。
しかし、問題は、
アプリケーション フォルダー (インストール フォルダー) にインストールされている SQLite データベースを使用しています。
次の更新バージョンでは、DB のスキーマが変更される可能性があります。ただし、データベースが更新され、スキーマがわずかに変更された場合でも、以前のバージョンで保存されたデータは最新のバージョンでも必要になります。
私の考えは、次のバージョンをインストールする際に、以前のバージョンのバックアップをとることです。最新バージョンがインストールされると、変更された DB はバックアップ フォルダ内の以前の DB からデータを取得し、更新する必要があります。新しいバージョンのインストール中に何らかの例外が発生した場合は、インストール プロセスをロールバックして、以前のバージョンをそのまま維持する必要があります。この場合、VSI のカスタム アクションが役立つことがあります。
それを達成する方法はありますか?問題を解決する他の方法がある場合は、それを知りたいです。