1

既存のインストール済み製品に新しいインストールを実行すると、インストーラはEXEファイルとDLLファイルを上書きしません。 EXEとDLLでは、ファイルを置き換えるかどうかを定義するバージョン番号を設定できます。しかし、これはプレーンテキストを含む設定ファイルでは不可能です。Visual Studioインストーラはバイナリ以外のファイルを上書きしません

インストーラーがすべてのファイルを置き換えるように強制しますか?

設定DetectNewInstalledVersion~TrueまたはFalseは効果がありません。

RemovePreviousVersionsは、Windowsインストーラのファイル交換ルールは、ユーザーが変更したファイルを置き換えることはできません真

答えて

0

に設定されています:

https://msdn.microsoft.com/en-us/library/windows/desktop/aa370531(v=vs.85).aspx

基本的な問題は、あなたが本当にいないということです製品にデータベースファイルをインストールし、データを入力してから製品のアップグレードで破棄します。

これはおそらく起こっていることです。

ます。msiexec/I [パスMSIアップグレードする] /のL * VX [テキストログファイルへのパス]

をして、それが理由を教えてくれますファイル名を検索します。あなたのようなコマンドを使用してアップグレードをログに記録する場合それはそれを置き換えませんでした。

また、ファイルがMSIファイルのコンポーネントテーブルでNeverOverwriteとマークされている可能性があります。これは、Visual StudioのセットアップがIDEでこれをサポートしていないため、あなたのケースではそう思わないでしょう。これは、コンポーネントがインストールされ、元に戻すことができないコンポーネントに適用されます。これはシステム設定であり、MSI設定ではありません。

関連する問題