[wix-users] Minor MSI upgrade through Burn doesn't install new feature

Kevin Mackey kmackey at gmail.com
Tue May 31 10:35:18 PDT 2022


So in my PlanMsiFeature(object sender, PlanMsiFeatureEventArgs e) I set the
e.state to FeatureState.Local (the requested state) for the new feature and
the features to be reinstalled, but the execute action for the installed
feature is None when I think it should be Reinstall.

[097C:0F64][2022-05-31T09:12:23]i203: Planned feature: OldFeature, state:
Local, default requested: Unknown, ba requested: *Local*, execute action:
*None*, rollback action: None
[097C:0F64][2022-05-31T09:12:23]i203: Planned feature: NewFeature, state:
Absent, default requested: Unknown, ba requested: *Local*, execute action:
*AddLocal*, rollback action: Remove

--Kevin

On Tue, May 31, 2022 at 9:06 AM Kevin Mackey <kmackey at gmail.com> wrote:

> Ah. "Start with" means to address that. I'll set that to "yes".
> --Kevin
>
> On Tue, May 31, 2022 at 7:23 AM Sean Hall via wix-users <
> wix-users at lists.wixtoolset.org> wrote:
>
>> No, you don't have that. Burn only puts REINSTALL=ALL on the command line
>> during a minor upgrade if EnableFeatureSelection="no". The issue
>> that you referenced confirms what Bob said. EnableFeatureSelection="yes"
>> is
>> required for Burn to plan individual features, which is where ADDLOCAL
>> will
>> come from.
>>
>> On Mon, May 30, 2022 at 9:53 PM Kevin Mackey via wix-users <
>> wix-users at lists.wixtoolset.org> wrote:
>>
>> > Bob,
>> >
>> > Yes, I have that.
>> >
>> > --Kevin
>> >
>> > On Mon, May 30, 2022, 7:41 PM Bob Arnson <bob at firegiant.com> wrote:
>> >
>> > > Start with
>> > >
>> > > >    EnableFeatureSelection="no"
>> > >
>> > > Burn won't do feature maintenance without
>> EnableFeatureSelection="yes".
>> > >
>> > > > -----Original Message-----
>> > > > From: wix-users <wix-users-bounces at lists.wixtoolset.org> On Behalf
>> Of
>> > > > Kevin Mackey via wix-users
>> > > > Sent: Monday, 30 May, 2022 22:01
>> > > > To: wix-users at lists.wixtoolset.org
>> > > > Cc: Kevin Mackey <kmackey at gmail.com>
>> > > > Subject: [wix-users] Minor MSI upgrade through Burn doesn't install
>> new
>> > > > feature
>> > > >
>> > > > I'm having a problem with a minor upgrade by Burn not installing an
>> > added
>> > > > MSI feature. The minor upgrade support for my product is historical
>> > (old
>> > > > requirement) that has worked so far as I have followed component
>> rules,
>> > > so
>> > > > I'd like to avoid changing to a major upgrade.
>> > > >
>> > > > I'm using WiX Burn (3.11.2.4516) to install an MSI. My custom BA is
>> > > based on
>> > > > https://gitlab.com/nickguletskii/WixWPFWizardBA/. When upgrading
>> from
>> > > > an install done by an old InstallShield installer, the installed
>> > > features are
>> > > > upgraded, but a file in the new feature is not being installed. The
>> new
>> > > feature
>> > > > has a single component to install the new file and set a registry
>> key
>> > and
>> > > > value.
>> > > >
>> > > > The problem installing the new file seems to be this bug that was
>> fixed
>> > > in
>> > > > Burn 3.6: https://sourceforge.net/p/wix/bugs/2464/
>> > > >
>> > > > For file contents below, I use ". . ." to indicate content removed
>> that
>> > > I think is
>> > > > not relevant. I also changed the product name.
>> > > >
>> > > > Bundle.wxs
>> > > > <MsiPackage
>> > > > . . .
>> > > >    EnableFeatureSelection="no"
>> > > >
>> > > > Bundle Log
>> > > > . . .
>> > > > [0850:12F8][2022-05-27T15:24:19]i000: Bootstrapper has called
>> > > > Bootstrapper_PlanBegin
>> > > > [0850:0940][2022-05-27T15:24:19]i000: Switching to PlanPage from
>> > > > UpgradePage
>> > > > [0850:12F8][2022-05-27T15:24:19]i000: Bootstrapper has called
>> > > > Bootstrapper_PlanPackageBegin, package id: ProductName
>> > > > [0850:12F8][2022-05-27T15:24:19]i000: Setting string variable
>> > > > 'WixBundleLog_ProductName' to value
>> > > > 'C:\Users\user\AppData\Local\Temp\ProductName_20220527152415_000_P
>> > > > roductName.log'
>> > > > [0850:12F8][2022-05-27T15:24:19]i201: Planned package: ProductName,
>> > > > state:
>> > > > Present, default requested: Present, ba requested: Present, execute:
>> > > > MinorUpgrade, rollback: None, cache: No, uncache: No, dependency:
>> > > > Register
>> > > > [0850:12F8][2022-05-27T15:24:19]i000: Bootstrapper has called
>> > > > Bootstrapper_PlanComplete . . .
>> > > >
>> > > > MSI Log
>> > > > . . .
>> > > > MSI (s) (40:8C) [15:24:21:117]: Command Line: . . . REINSTALL=ALL
>> > > > REINSTALLMODE=vomus . . .
>> > > >
>> > > > From what I understand, there should be an ADDLOCAL instead of (or
>> in
>> > > > addition to?) REINSTALL=ALL for the new feature to be installed. I
>> > think
>> > > the
>> > > > code for my PlanMsiFeature needs to change, but I haven't found any
>> > good
>> > > > example code (more than just very simple cases).
>> > > >
>> > > > Any ideas of things I should look into?
>> > > >
>> > > > Thanks for any help.
>> > > >
>> > > > ________________________________________________________________
>> > > > ____
>> > > > 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