コンポーネントは変更されていませんが、コンポーネントが変更されるとアップグレードが失敗し、ユーザーが手動でアンインストールして再インストールする必要がある場合は正常に動作します。Wixメジャーアップグレード、どうしたの?
一部抜粋:
何ブートストラップのチェックにだ <Component Id="InstalledRegistry" Guid="SOMEGUID-0a17-4c6b-983d-8f3feb3a7724">
<RegistryKey Id="InstalledRegKey" Root="HKMU" Key="SOFTWARE\MyCompany\Client" Action="createAndRemoveOnUninstall">
<RegistryValue Name="Version" Type="string" Value="!(bind.FileVersion.ClientEXE)" KeyPath="yes"/>
</RegistryKey>
</Component>
を:また
<Product Id="*" Name="My Application" Language="1033" Version="!(bind.FileVersion.ClientEXE)" Manufacturer="My Company" UpgradeCode="MYGUID-b94a-44eb-8e92-9286f1d89bbd">
<Package Id="*" Description="My Installer" Comments="Copyright My Company 2008" InstallerVersion="200" Compressed="yes" />
<Upgrade Id="MYGUID-b94a-44eb-8e92-9286f1d89bbd">
<UpgradeVersion Language="1033" Property="UPGRADEFOUND" Minimum="0.0.0.0" Maximum="99.99.99.99" IncludeMinimum="yes" IncludeMaximum="yes" />
</Upgrade>
<InstallExecuteSequence>
<RemoveExistingProducts Before="InstallInitialize" />
</InstallExecuteSequence>
には、次のレジストリキーといくつかの問題は、時にはアンインストールで削除しないと、私は理由を理解していない持っています"REINSTALL = ALL REINSTALLMODE = vamus"を指定してmsiexecを起動するかどうかを知っているので、アンインストールしてもレジストリキーが削除されなかった場合、セットアップはアップグレードを試みてサイレントモードで失敗します。他のいくつかの問題が唯一のいくつかのファイルが更新されると、その後があった:
は、任意のより多くの情報が
編集を必要とするなら、私に教えてください。 RemoveExistingProductsをAfter = "InstallValidate"に変更し、それを解決しました。変更されたファイルをアップグレードするのではなく、以前のインストールを完全に削除するので、少し遅くなります(これは私にとっては適切に検出されなかったようですが)。
REINSTALL = ALLとREINSTALLMODEはメジャーアップグレードには必要ありません。私はそれが問題かもしれないと思う。確認後に受け入れます – Davy8