我已經嘗試了在這個論壇和其他論壇上的主題的大部分答案,但我仍然有這個問題。如何確定一個Wix安裝程序將覆蓋(升級)舊版本,並不會降級
我想要更新捆綁版本,並且在生成並安裝安裝程序時,它應該升級以前的安裝,而不是在「程序和文件」中創建兩個記錄。
我在Product.wxs中使用以下代碼。
<Product Id="*" Name="SetupProject1" Language="1033" Version="1.0.0.0" Manufacturer="miro" UpgradeCode="5ba49b49-25c4-47c0-82da-12bf5310af58">
<Package InstallerVersion="200" Compressed="yes" InstallScope="perMachine" />
<MajorUpgrade AllowDowngrades="no" AllowSameVersionUpgrades="yes" IgnoreRemoveFailure="no" DowngradeErrorMessage="loc.NewerVersionInstalled" Schedule="afterInstallInitialize"/>
<MediaTemplate />
<Feature Id="ProductFeature" Title="SetupProject1" Level="1">
<ComponentGroupRef Id="ProductComponents" />
</Feature>
</Product>
<Fragment>
<Directory Id="TARGETDIR" Name="SourceDir">
<Directory Id="ProgramFilesFolder">
<Directory Id="INSTALLFOLDER" Name="SetupProject1" />
</Directory>
</Directory>
</Fragment>
<Fragment>
<ComponentGroup Id="ProductComponents" Directory="INSTALLFOLDER">
<!-- TODO: Remove the comments around this Component element and the ComponentRef below in order to add resources to this installer. -->
<Component Id="ProductComponent">
<File Id="file_Exefile" Source="..\ConsoleApplication1\bin\Debug\ConsoleApplication1.exe">
</File>
</Component>
</ComponentGroup>
</Fragment>
我甚至考慮基礎上,安裝過程和他們的ProductVersion屬性寫我自己的更新邏輯,但也有太多的情況下考慮。
你能告訴我這個Product.wxs有什麼問題,所以我可以修復它。
謝謝。
最好的問候, 葉夫根Dyulgerov