次の手順が実行されました。
- Setup1.msi は VS2005 + WiX 3.0 (.NET Framework 2.0) でビルドされていました。
- バージョン 1.0.0.0 は Setup1.msi によってインストールされていました。
- マイナー アップグレードの目的で、Setup2.msi がビルドされました (Setup2.msi は、ProductVersion="1.0.1.0" のみが Setup1.msi と異なります)。
次の Patch.wx が用意されていました。
<Patch AllowRemoval="no" Classification="Update" Comments="..." Description="..." DisplayName="..." Manufacturer="..." TargetProductName="..."> <Media Id="1000" Cabinet="MyPatch.cab"> <PatchBaseline Id="MyPatch" /> </Media> <PatchFamily Id="MyPatchFamily" Version="1.0.1.0" ProductCode="...THE SAME AS IN Setup1.msi..." Supersede="yes"> <ComponentRef Id="CMP_Program_EXE" /> <ComponentRef Id="CMP_Desktop_Shortcut" /> <ComponentRef Id="CMP_ProgramMenu_Shortcut" /> </PatchFamily> </Patch>
Patch.msp は、candle、light、torch、および pyro.exe の助けを借りて作成されました。
次のコマンドが呼び出されました。
msiexec /p Patch.msp REINSTALL=ALL REINSTALLMODE=vomus
その結果、Program.exe が更新され、新しいショートカット「v. 1.0.1」が作成されました。ただし、古いショートカット「v. 1.0.0」は「DesktopFolder」と「ProgramMenuFolder」の両方に残っていました。
パッチで古いショートカットを削除するにはどうすればよいですか?
前もって感謝します。