[wix-users] Previous package not found (and therefore not uninstalled) during major upgrade

Hoover, Jacob Jacob.Hoover at greenheck.com
Tue Feb 20 14:22:25 PST 2018


 If Language is null or an empty string (""), FindRelatedProducts ignores msidbUpgradeAttributesLanguagesExclusive and detects all languages.

The one thing I do think is strange, why do you suppress InstallValidate?

<InstallValidate Suppress="yes">FAKE_PROPERTY</InstallValidate>

From: Steve Sanders [mailto:steve at keyba.se]
Sent: Tuesday, February 20, 2018 4:07 PM
To: Hoover, Jacob <Jacob.Hoover at greenheck.com>
Cc: WiX Toolset Users Mailing List <wix-users at lists.wixtoolset.org>
Subject: Re: [wix-users] Previous package not found (and therefore not uninstalled) during major upgrade

According to Orca, the upgrade tables look like this, same as one built with Wix 3.9 except for the version of course. Is it a problem that Language is empty?

UpgradeCode VersionMin     VersionMax    Language        Attributes        Remove           ActionProperty
s38       S20      S20      S255    i4         S255    s72
Upgrade          UpgradeCode VersionMin     VersionMax    Language        Attributes
{C118F7EC-9A1D-4FF1-91F5-15D208499D7B}               1.0.39.39                     513                  WIX_UPGRADE_DETECTED
{C118F7EC-9A1D-4FF1-91F5-15D208499D7B}   1.0.39.39                                 2                      WIX_DOWNGRADE_DETECTED


UpgradeCode VersionMin     VersionMax    Language        Attributes        Remove           ActionProperty
s38       S20      S20      S255    i4         S255    s72
Upgrade          UpgradeCode VersionMin     VersionMax    Language        Attributes
{C118F7EC-9A1D-4FF1-91F5-15D208499D7B}               1.0.40.19                     513                  WIX_UPGRADE_DETECTED
{C118F7EC-9A1D-4FF1-91F5-15D208499D7B}   1.0.40.19                                 2                      WIX_DOWNGRADE_DETECTED



and one from 6 months ago:
UpgradeCode VersionMin     VersionMax    Language        Attributes        Remove           ActionProperty
s38       S20      S20      S255    i4         S255    s72
Upgrade          UpgradeCode VersionMin     VersionMax    Language        Attributes
{C118F7EC-9A1D-4FF1-91F5-15D208499D7B}               1.0.26.918                   513                  WIX_UPGRADE_DETECTED
{C118F7EC-9A1D-4FF1-91F5-15D208499D7B}   1.0.26.918                               2                      WIX_DOWNGRADE_DETECTED

On Tue, Feb 20, 2018 at 1:17 PM, Steve Sanders <steve at keyba.se<mailto:steve at keyba.se>> wrote:
I tried to figure out what the Upgrade table is and how to find it, but nearest I can tell, Wix is supposed to handle/populate it from the MajorUpgrade element:
<MajorUpgrade DowngradeErrorMessage="A newer version of Keybase is already installed." AllowSameVersionUpgrades="yes"  />

This hasn't changed for more than a year - I suppose it is possible that wix 3.11 changed the way it populates this upgrade table? I will try dumping it from some MSIs using Orca and see.

On Tue, Feb 20, 2018 at 10:48 AM, Hoover, Jacob <Jacob.Hoover at greenheck.com<mailto:Jacob.Hoover at greenheck.com>> wrote:
Well, if FindRelatedProduct is truly failing then it's a windows installer issue.  However I seriously don't think this is the issue.  Per https://msdn.microsoft.com/en-us/library/windows/desktop/aa368600%28v=vs.85%29.aspx?f=255&MSPPError=-2147217396 I would compare the Upgrade table from an old "never broken" install and a newer "sometimes broken" installer.



-----Original Message-----
From: wix-users [mailto:wix-users-bounces at lists.wixtoolset.org<mailto:wix-users-bounces at lists.wixtoolset.org>] On Behalf Of Steve Sanders via wix-users
Sent: Tuesday, February 20, 2018 12:38 PM
To: WiX Toolset Users Mailing List <wix-users at lists.wixtoolset.org<mailto:wix-users at lists.wixtoolset.org>>
Cc: Steve Sanders <steve at keyba.se<mailto:steve at keyba.se>>
Subject: Re: [wix-users] Previous package not found (and therefore not uninstalled) during major upgrade

I am positive because of the associated updater log, among other reasons, which shows version 1.0.39-20180121191330+5e57981 (that's the semantic version, the windows version being 1.0.39.39) applied 2018/01/23 11:57:11, then the updater considers that version current when it checks for the next
update:
2018/02/16 19:30:03 INFO Checking for update, current version is
1.0.39-20180121191330+5e57981
(updater gets this version by running the installed program with the "version" argument.)

Again, our custom actions are supposed to close our processes in the upgrade case, but if upgrade case is not detected, they can't close the processes.

I guess we could hack around this with some registry entries, but detecting
+ applying upgrades is one of the main reasons to use a tool like Wix I
thought. Again, this happens only intermittently, and didn't seem to happen ever with Wix 3.9.

Thanks again, everyone, for taking a look.

On Tue, Feb 20, 2018 at 3:23 AM, Nir Bar via wix-users < wix-users at lists.wixtoolset.org<mailto:wix-users at lists.wixtoolset.org>> wrote:

> The failing log says the the RESTART MANAGER is disabled so FilesInUse
> is used. FilesInUse can only detect applications with a window.
>
> However, this has nothing to do with upgrade detection. I've never
> encountered a false-false upgrade detection.
> Are you absolutely sure that another version is already installed?
>
>
>
> --
> Nir Bar, Independent WiX Expert. Creator of-
> JetBA: WiX WPF Bootstrapper User Interface Framework
>
> JetBA++: WiX Native Bootstrapper User Interface Framework
>
>
>
>
> ____________________________________________________________________
> 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