[wix-users] Slipstream bundle reports MSI state as Superseded.

Rob Mensching rob at firegiant.com
Thu Feb 4 17:01:15 PST 2021


Or fix the root issue and don't update the ProductVersion like the MSI documentation calls out: https://docs.microsoft.com/en-us/windows/win32/msi/creating-a-small-update-patch

Side note: I don't use MsiMsp.

---
Short replies here. Complete answers here: https://www.firegiant.com/services/

-----Original Message-----
From: wix-users <wix-users-bounces at lists.wixtoolset.org> On Behalf Of Nick Elmer via wix-users
Sent: Thursday, February 4, 2021 4:51 PM
To: WiX Toolset Users Mailing List <wix-users at lists.wixtoolset.org>
Cc: Nick Elmer <NElmer at veriato.com>
Subject: Re: [wix-users] Slipstream bundle reports MSI state as Superseded.

Sean,
Thanks for the explanation of why Burn is making the decision to set the MSI to superseded. I do have a custom BA and will give that resolution a try tomorrow. 

-----Original Message-----
From: wix-users <wix-users-bounces at lists.wixtoolset.org> On Behalf Of Sean Hall via wix-users
Sent: Thursday, February 4, 2021 7:14 PM
To: WiX Toolset Users Mailing List <wix-users at lists.wixtoolset.org>
Cc: Sean Hall <r.sean.hall at gmail.com>
Subject: Re: [wix-users] Slipstream bundle reports MSI state as Superseded.

As Rob pointed out, Burn will consider the MSI as superseded if the patch increments the version. When the MSI is detected as superseded, Burn will not repair it by default but a custom BA can request that it be repaired.
Based on the log you shared, it looks like you already have a custom BA. Is there a reason your BA can't request the repair for the MSI packages?

On Thu, Feb 4, 2021 at 3:40 PM Nick Elmer via wix-users < wix-users at lists.wixtoolset.org> wrote:

> Hi Rob,
> I am testing my patch builds with the expectation that BuildMinor will 
> change in an MSP, but the ProductMajor, ProductMinor and BuildMajor 
> should not.
>
> If I view my RTM MSI in Orca and apply the patch, I can see in the 
> property table that the version did change from 4.3.0.400 -> 4.3.0.420.
>
> I would expect this property to change in the MSP since its based on a 
> newer MSI build with bug fixes, updated build number, etc. I am using 
> MSIMSP to difference my RTM/Patch MSI's when creating the MSP file. Is 
> there something I need to change to prevent the version from being 
> modified in my patch MSI's?
>
> Thanks for your insight as always!
> Nick
>
> -----Original Message-----
> From: Rob Mensching <rob at firegiant.com>
> Sent: Thursday, February 4, 2021 4:03 PM
> To: WiX Toolset Users Mailing List <wix-users at lists.wixtoolset.org>
> Cc: Nick Elmer <NElmer at veriato.com>
> Subject: RE: Slipstream bundle reports MSI state as Superseded.
>
> Guess: Your MSP changed the MSI version.
>
>
> ---
> Short replies here. Complete answers here:
> https://www.firegiant.com/services/
>
> -----Original Message-----
> From: wix-users <wix-users-bounces at lists.wixtoolset.org> On Behalf Of 
> Nick Elmer via wix-users
> Sent: Thursday, February 4, 2021 12:29 PM
> To: WiX Toolset Users Mailing List <wix-users at lists.wixtoolset.org>
> Cc: Nick Elmer <NElmer at veriato.com>
> Subject: [wix-users] Slipstream bundle reports MSI state as Superseded.
>
> Hi All,
> I'm trying to resolve a problem where a repair fails to replace files 
> due the original MSI being superseded after a slipstream patch is 
> applied. What am I missing in order to get a repair to run from my slipstream bundle?
> Thanks in advance!
>
> The bundle install on a clean system with the slipstreamed patch shows 
> this planning phase. Both the ServerSetup and ManagementConsole MSI's 
> had their MSP's applied during install. I have verified that the files 
> in the patch were updated as expected once the bundle install completed.
>
> Planned package: SQLEXPRESS, state: Absent, default requested: 
> Present, ba
> requested: Absent, execute: None, rollback: None, cache: No, uncache: 
> No,
> dependency: None Planned package: ServerSetup, state: Absent, default
> requested: Present, ba requested: Present, execute: Install, rollback:
> Uninstall, cache: Yes, uncache: No, dependency: Register Planned package:
> ServerSetupPatch, state: Absent, default requested: Present, ba requested:
> Present, execute: Install, rollback: Uninstall, cache: Yes, uncache: 
> No,
> dependency: Register Planned package: ManagementConsole, state: 
> Absent, default requested: Present, ba requested: Present, execute: 
> Install,
> rollback: Uninstall, cache: Yes, uncache: No, dependency: Register 
> Planned
> package: ManagementConsolePatch, state: Absent, default requested: 
> Present, ba requested: Present, execute: Install, rollback: Uninstall,
> cache: Yes,
> uncache: No, dependency: Register
>
> Now, I open one of the folders with updated files and remove a directory.
> There are files from ServerSetup (MSI) and ServerSetupPatch (MSP) that 
> have been removed to simulate a needed repair. When I execute the 
> repair, I see the following detection output logged. The operation:
> Downgrade confuses me as I'm not sure why the bundle thinks the MSI is 
> being downgraded! That must have something to do with the state:
> Superseded being determined, but I'm not sure why!! What am I missing!
>
> Calculating patch applicability for target product code:
> {SERVERSETUP_PRODUCT_CODE_GUID}, context: Machine Calculating patch 
> applicability for target product code:
> {MANAGEMENT_CONSOLE_PRODUCT_CODE_GUID}, context: Machine
>
> Detected Package Begin: PackageId:ServerSetup, Result:None Detected 
> related package: { SERVERSETUP_PRODUCT_CODE_GUID }, scope: PerMachine,
> version: 4.3.0.420, language: 1033 operation: Downgrade Detected 
> Related MSI Package: ServerSetup ..
> Detected Package Begin: PackageId:ServerSetupPatch, Result:None 
> OnDetectTargetMsiPackage Package:ServerSetupPatch, ProductCode:{ 
> SERVERSETUP_PRODUCT_CODE_GUID }, State:Present, Result:None.
> ..
> Detected Package Begin: PackageId: ManagementConsole, Result:None 
> Detected related package: { MANAGEMENT_CONSOLE_PRODUCT_CODE_GUID }, scope:
> PerMachine, version: 4.3.0.420, language: 1033 operation: Downgrade 
> Detected Related MSI Package: ManagementConsole ..
> Detected Package Begin: PackageId: ManagementConsolePatch, Result:None 
> OnDetectTargetMsiPackage Package: ManagementConsolePatch, 
> ProductCode:{ MANAGEMENT_CONSOLE_PRODUCT_CODE_GUID }, State:Present, Result:None.
>
> Detected package: SQLEXPRESS, state: Absent, cached: None Detected
> package: ServerSetup, state: Superseded, cached: Complete Detected package:
> ServerSetupPatch, state: Present, cached: Complete Detected package:
> ServerSetupPatch target: { SERVERSETUP_PRODUCT_CODE_GUID }, state: 
> Present Detected package: Veriato360ManagementConsole, state: Superseded, cached:
> Complete Detected package: Veriato360ManagementConsolePatch, state:
> Present, cached: Complete Detected package:
> Veriato360ManagementConsolePatch target: { 
> MANAGEMENT_CONSOLE_PRODUCT_CODE_GUID }, state: Present
>
> Plan begin, 5 packages, action: Repair ..
> OnPlanTargetMsiPackage: PackageId:ServerSetupPatch, ProductCode:{ 
> SERVERSETUP_PRODUCT_CODE_GUID }, RequestedState:Repair, Result:None.
> OnPlanTargetMsiPackage: PackageId: ManagementConsolePatch, 
> ProductCode:{ MANAGEMENT_CONSOLE_PRODUCT_CODE_GUID }, RequestedState:Repair, Result:None.
> ..
> SQLEXPRESS, state: Absent, default requested: Repair, ba requested:
> Absent, execute: None, rollback: None, cache: No, uncache: No, dependency:
> None Planned package: ServerSetup, state: Superseded, default requested:
> None, ba requested: None, execute: None, rollback: None, cache: No,
> uncache: No, dependency: Register Planned package: ServerSetupPatch, state:
> Present, default requested: Repair, ba requested: Repair, execute: 
> Repair,
> rollback: None, cache: No, uncache: No, dependency: Register Planned
> package: ManagementConsole, state: Superseded, default requested: 
> None, ba
> requested: None, execute: None, rollback: None, cache: No, uncache: 
> No,
> dependency: Register Planned package: ManagementConsolePatch, state:
> Present, default requested: Repair, ba requested: Repair, execute: 
> Repair,
> rollback: None, cache: No, uncache: No, dependency: Register
>
>
>
>
> ____________________________________________________________________
> WiX Toolset Users Mailing List provided by FireGiant 
> http://www.firegiant.com/
>
> ____________________________________________________________________
> WiX Toolset Users Mailing List provided by FireGiant 
> http://www.firegiant.com/
>

____________________________________________________________________
WiX Toolset Users Mailing List provided by FireGiant http://www.firegiant.com/

____________________________________________________________________
WiX Toolset Users Mailing List provided by FireGiant http://www.firegiant.com/



More information about the wix-users mailing list