.NET 3.5 で動作する winForm アプリケーションがあります。私は VS 2010 を使用しており、私の StartUp プロジェクト「WinFormUI」は他のライブラリを参照しています。
ターゲットインストーラーと呼ばれるVS 2010(.NET 3.5を保持)を使用してMSIインストーラーを作成し、アプリケーションをインストールしました。プログラムの追加と削除は、最初のバージョン 1.0.0 のインストールを確認します。インストーラ プロパティ RemovePreviousVersion=True。
ここで、MessageBox("This is updated project") を追加してスタートアップ プロジェクト "WinFormUI" を変更し、startpu プロジェクト winFormUi.exe のアセンブリ バージョンを 1.0.0.0 から 1.0.0.1 に変更しました。
2 番目のアップグレードされた MSI を作成し、インストーラーのバージョンを 1.0.0 から 1.0.1 に変更しましたが、「製品コード」は同じままにしました。
次の手順フォーム http://www.codeproject.com/install/dotnetpatching.aspおよび http://social.msdn.microsoft.com/Forums/en-US/winformssetup/thread/7dda2e5f-70df-47d5-a62d-100a2bfd0394 .
MsiMsp.exe バージョン 5.0 と Ocra バージョン 5.0 を含む Windows SDK V7.1 があります。
私の PCP ファイルには次のデータがあります。
ImageFamilies テーブル : Family -> fam1
MsiPatchSequence テーブル : PatchFamily -> fam1 ; シーケンス -> 1.0.0
プロパティ テーブル: MinimumRequiredVersion -> 200 およびその他の列
TargetImages テーブル : IgnoreMissingSrcFiles -> 0 およびその他の列
UpgradedImages テーブル : Family -> fam1 およびその他の列
MsiMsp.exe を使用して MSP を生成し、msiexec /p を使用して実行します。
インストーラー (パッチ) を実行します。アップグレード後、プログラムの追加と削除でアップグレードされたバージョン 1.0.1 を確認しますが、問題は、exe を実行しても変更が反映されないことです。つまり、MessageBox("This is updated project") を表示するように変更しました。
私は何か間違っていますか?ヘルプが必要です。ありがとう。