Quindi ho un semplice programma di installazione di masterizzazione, principalmente per includere gli aggiornamenti .net o occasionalmente un pacchetto driver per l'hardware con cui la nostra app deve parlare.Wix Burn, come posso consentire il downgrade?
Gli MSI creano assistenza per l'aggiornamento o il downgrade.
<?xml version="1.0" encoding="UTF-8"?>
<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi"
xmlns:bal="http://schemas.microsoft.com/wix/BalExtension">
<Bundle Name="My App Name" Manufacturer="Company Name" Version="!(bind.packageVersion.MyAPP_MSI)"
IconSourceFile="MyIcon.ico" DisableModify="yes" DisableRemove="yes"
UpgradeCode="{15E598EF-89CE-470B-8CEF-E32C8983DA33}" >
<BootstrapperApplicationRef Id="WixStandardBootstrapperApplication.RtfLicense" >
<bal:WixStandardBootstrapperApplication
LogoFile="$(var.CoreComponents.TargetDir)InstallerGraphics\Bootstrapper_Logo.png"
LicenseFile="$(var.CoreComponents.TargetDir)AppRoot\App License.rtf"
SuppressOptionsUI="yes" />
</BootstrapperApplicationRef>
<Chain>
<PackageGroupRef Id="NetFx451Web"/>
<MsiPackage DisplayName="My full Application Name" Id="MyAPP_MSI" SourceFile="$(var.Installer_MyAppMSI_TargetPath)"
DisplayInternalUI="yes" ForcePerMachine="yes" Visible="yes" />
<MsiPackage DisplayName="My Hardware Driver" Id="Installer_MSI_Driver" SourceFile="$(var.Installer_Driver.TargetPath)"
DisplayInternalUI="yes" ForcePerMachine="yes" Visible="yes" />
</Chain>
</Bundle>
</Wix>
Noi di solito hanno versioni beta e quando un utente vuole effettuare il downgrade da una versione beta di nuovo alle nostre versioni stabili che non si può semplicemente eseguire il vecchio installer EXE. Devono rimuovere esplicitamente il pacchetto precedente da Aggiungi/Rimuovi programmi per installare il precedente EXE Burn.
Questo non era un problema con l'installazione basata su MSI. Come possiamo tornare a quella funzionalità?
Log
[0CB8:067C][2014-06-23T11:10:04]i001: Burn v3.8.1128.0, Windows v6.1(Build 7601: Service Pack 1), path:\\iop-filesvr\IOP\Builds\Main\8.1.240\IO Practiceware Client Setup.exe, cmdline: '-burn.unelevated BurnPipe.{197B8193-6EFC-4ED0-AF90-DE7205F13E65} {CD23A8AB-520B-4F5D-BCB9-98998C5A1EC0} 2216'
[0CB8:067C][2014-06-23T11:10:04]i000: Setting string variable 'WixBundleLog' to value 'C:\Users\jeff\AppData\Local\Temp\IO_Practiceware_Client_8.1.240.0_20140623111004.log'
[0CB8:067C][2014-06-23T11:10:04]i000: Setting string variable'WixBundleOriginalSource' to value '\\iop-filesvr\IOP\Builds\Main\8.1.240\IO Practiceware ClientSetup.exe'
[0CB8:067C][2014-06-23T11:10:04]i000: Setting string variable 'WixBundleName' to value 'IO Practiceware Client 8.1.240.0'
[0CB8:067C][2014-06-23T11:10:05]i100: Detect begin, 2 packages
[0CB8:067C][2014-06-23T11:10:05]i000: Setting string variable 'PrerequisitesVersion' to value '1.0.0.0'
[0CB8:067C][2014-06-23T11:10:05]i102: Detected related bundle: {8d398d25-606f-419a-9b29-e3434aeb2485}, type: Upgrade, scope: PerUser, version: 8.1.241.0, operation: Downgrade
[0CB8:067C][2014-06-23T11:10:05]i103: Detected related package: {7EA877FF-CE7A-49CE-8F76-D5A11EA7DD7A}, scope: PerMachine, version: 1.0.0.0, language: 0 operation: MajorUpgrade
[0CB8:067C][2014-06-23T11:10:05]i103: Detected related package: {8E8A7689-FB1C-4FE5-AF7C-95D499A342DE}, scope: PerUser, version: 8.1.241.0, language: 0 operation: MajorUpgrade
[0CB8:067C][2014-06-23T11:10:05]i101: Detected package: PrerequisitesMsi, state: Absent, cached: None
[0CB8:067C][2014-06-23T11:10:05]i101: Detected package: ClientMsi, state: Absent, cached: None
[0CB8:067C][2014-06-23T11:10:05]i199:Detect complete, result: 0x0
[0CB8:076C][2014-06-23T11:10:16]i000: Setting numeric variable 'EulaAcceptCheckbox' to value 0
[0CB8:076C][2014-06-23T11:10:16]e000: Error 0x80070666: Cannot install a product when a newer version is installed.
Quindi cosa sta succedendo quando si esegue il vecchio programma di installazione di burn exe? Idealmente brucia gli aggiornamenti delle maniglie a livello di masterizzazione e MSI. Quindi se l'MSI è configurato per fare downgrade, dovrebbe succedere. Se non sta succedendo, puoi incollare i log di installazione/disinstallazione di masterizzazione? – Isaiah4110
Dici "downgrade da una versione beta alla nostra versione stabile". Trattiamo una versione stabile come un aggiornamento da una versione beta. per esempio. La versione beta 1.2.3.1234 è vista dall'utente come "1.2.3.1234". La seguente versione è 1.2.3.1235 ma è vista dall'utente come, ad esempio, "1.2". Il numero di versione usato da Wix può essere diverso dalla versione vista dall'utente dell'utente. per esempio. versione informativa. –