If you don't specify an ALLUSERS property it defaults to per user. The
behavior you see might be because ALLUSERS was 2, which does per machine if
the user is privileged and per user if not privileged. Verify what's
happening to ALLUSERS by looking in the log, for the upgrade and original,
and what privilege the user has. MSIINSTALLPERUSER is also worth looking
at. The upgrade code may not be the issue if you have something in the UI
that sets either of these.

MSI will not do that cross context upgrade for you, so you may need a
bundle to uninstall the old one then install the new.


Phil Wilson


On Tue, Dec 10, 2013 at 4:11 PM, Happy Geek <happygeek...@gmail.com> wrote:

> Hi all,
>
> I wrote an installer for my app and now I am trying to release an upgrade
> and creating an installer for that. The issue I am having is that the new
> installer logs tell me that old install was per-user while current install
> is per-machine and thus it fails to findrelatedproducts and hence fails to
> removeexistingproducts. Both my original installer and upgrade installer
> do not specify the InstallScope.
>
> I have two questions:
>
> 1: Why is my original install a per-user install? Is it because I wrote to
> HKCU?
>
> 2: Why is my new/upgrade install a per-machine install? I am not changing
> anything in the upgrade except version number and product.
>
> I tried adding InstallScope="perUser" explicity under Package in my
> upgrade but the logs still say that current install is per-machine and
> don't remove the old product.
>
> What do I need to do to so that my upgrade removes the old code and
> installs the new version of the app?
>
> My original and upgrade installer code is given below.
>
> Thanks.
>
> My original installer code:
>
> <?xml version="1.0" encoding="utf-8"?>
> <?include rtcversion.wxi ?>
> <Wix xmlns="http://schemas.microsoft.com/wix/2006/wi";>
>     <Product Name="$(var.ApplicationName)"
> Id="$(var.MyApp_Component_PRODUCT_ID_STR)"
> UpgradeCode="$(var.MyApp_Component_UPGRADE_CODE_STR)"
> Version="$(var.MyApp_PRODUCTVERSION_STR)"
> Manufacturer="$(var.VER_COMPANYNAME_STR)" Language="!(loc.LANG_CODE)"
> Codepage="1252">
>         <Package Id="*" Keywords="Installer"
> Description="$(var.ApplicationName) Installer" InstallerVersion="450"
> Compressed="yes" />
>         <Property Id="VCREDIST_INSTALLED">
>             <RegistrySearch Id="RegistrySearch_VCRedist_Installed"
>
> Key="SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\{95716cce-fc71-413f-8ad5-56c2892d4b3a}"
> Name="DisplayVersion" Root="HKLM" Type="raw" />
>         </Property>
>         <Condition Message="$(var.ApplicationName) installation requires
> Microsoft Visual C++ 2012 Redistributable (x86). Installation cannot
> continue. Please install Microsoft Visual C++ 2012 Redistributable (x86)
> from http://www.microsoft.com/en-us/download/details.aspx?id=30679 and try
> again."><![CDATA[INSTALLED Or VCREDIST_INSTALLED Or
> BYPASS_MyApp_DEPENDENCY_CHECKS Or REMOVE="ALL"]]></Condition>
>         <PropertyRef Id="NETFRAMEWORK45" />
>         <Condition Message="$(var.ApplicationName) installation requires
> Microsoft .NET Framework 4.5. Installation cannot continue. Please install
> Microsoft .NET Framework 4.5 from
> http://www.microsoft.com/en-us/download/details.aspx?id=30653 and try
> again."><![CDATA[INSTALLED Or NETFRAMEWORK45 Or
> BYPASS_MyApp_DEPENDENCY_CHECKS Or REMOVE="ALL"]]></Condition>
>         <Icon Id="MyApp.ico" SourceFile="$(var.BASEPATH)\MyApp\MyApp.ico"/>
>         <Property Id="ARPPRODUCTICON" Value="MyApp.ico" />
>         <Property Id="WIXUI_INSTALLDIR" Value="MYAPPDIR" />
>         <Property Id="WIXUI_EXITDIALOGOPTIONALCHECKBOXTEXT" Value="Launch
> $(var.ApplicationName)" />
>         <Property Id="WixShellExecTarget" Value="[#MyApp_exe]" />
>         <CustomAction Id="LaunchApplication" BinaryKey="WixCA"
> DllEntry="WixShellExec" Impersonate="yes" />
>         <Media Id="1" Cabinet="MyApp.cab" EmbedCab="yes" />
>         <UI>
>             <UIRef Id="WixUI_InstallDir" />
>             <Publish Dialog="ExitDialog" Control="Finish" Event="DoAction"
> Value="LaunchApplication">WIXUI_EXITDIALOGOPTIONALCHECKBOX = 1 and NOT
> Installed</Publish>
>         </UI>
>         <Directory Id="TARGETDIR" Name="SourceDir">
>             <Directory Id="ProgramFilesFolder" Name="PFiles">
>                 <Directory Id="MYAPPDIR" ShortName="MyApp"
> Name="$(var.ApplicationName)" />
>             </Directory>
>             <Directory Id="ProgramMenuFolder" Name="Programs" />
>         </Directory>
>         <DirectoryRef Id="MYAPPDIR">
>             <Component Id="MyApp_executable">
>                 <File Id="MyApp_exe"
> Source="$(var.BASEPATH)\MyApp\MyApp.exe" KeyPath="yes" />
>             </Component>
>         </DirectoryRef>
>         <DirectoryRef Id="ProgramMenuFolder">
>             <Component Id="MyApp_shortcut"
> Guid="82CBCBED-F0FD-497A-A34C-6290B7AAE4C4">
>                 <Shortcut Id="ApplicationStartMenuShortcut"
> Name="$(var.ApplicationName) Desktop" Target="[MYAPPDIR]MyApp.exe"
> WorkingDirectory="MYAPPDIR" />
>                 <RemoveFile Id="ApplicationStartMenuShortcut"
> Name="RemoveShortcut" On="uninstall" />
>                 <RegistryValue Root="HKCU"
> Key="Software\XYZ\$(var.ApplicationName)" Name="installed" Type="integer"
> Value="1" KeyPath="yes" />
>             </Component>
>         </DirectoryRef>
>         <Feature Id="MyApp_Application" Title="$(var.ApplicationName)"
> Level="1" ConfigurableDirectory="MYAPPDIR">
>             <ComponentRef Id="MyApp_executable" />
>             <ComponentRef Id="MyApp_shortcut" />
>         </Feature>
>     </Product>
> </Wix>
>
>
> My upgrade installer code:
>
> <?xml version="1.0" encoding="utf-8"?>
> <Wix xmlns="http://schemas.microsoft.com/wix/2006/wi";>
>     <Product Name="$(var.ApplicationName)"
> Id="$(var.MyApp_Component_PRODUCT_ID_STR)"
> UpgradeCode="$(var.MyApp_Component_UPGRADE_CODE_STR)"
> Version="$(var.MyApp_PRODUCTVERSION_STR)"
> Manufacturer="$(var.VER_COMPANYNAME_STR)" Language="!(loc.LANG_CODE)"
> Codepage="1252">
>         <Package Id="*" Keywords="Installer"
> Description="$(var.ApplicationName) Installer" InstallerVersion="450"
> Compressed="yes" />
>         <Upgrade Id="$(var.MyApp_Component_UPGRADE_CODE_STR)">
>             <UpgradeVersion Maximum="$(var.MyApp_PRODUCTVERSION_STR)"
> IncludeMaximum="no" Language="!(loc.LANG_CODE)" OnlyDetect="no"
> Property="PREVIOUSFOUND" />
>         </Upgrade>
>         <Property Id="VCREDIST_INSTALLED">
>             <RegistrySearch Id="RegistrySearch_VCRedist_Installed"
>
> Key="SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\{95716cce-fc71-413f-8ad5-56c2892d4b3a}"
> Name="DisplayVersion" Root="HKLM" Type="raw" />
>         </Property>
>         <Condition Message="$(var.ApplicationName) installation requires
> Microsoft Visual C++ 2012 Redistributable (x86). Installation cannot
> continue. Please install Microsoft Visual C++ 2012 Redistributable (x86)
> from http://www.microsoft.com/en-us/download/details.aspx?id=30679 and try
> again."><![CDATA[INSTALLED Or VCREDIST_INSTALLED Or
> BYPASS_MyApp_DEPENDENCY_CHECKS Or REMOVE="ALL"]]></Condition>
>         <PropertyRef Id="NETFRAMEWORK45" />
>         <Condition Message="$(var.ApplicationName) installation requires
> Microsoft .NET Framework 4.5. Installation cannot continue. Please install
> Microsoft .NET Framework 4.5 from
> http://www.microsoft.com/en-us/download/details.aspx?id=30653 and try
> again."><![CDATA[INSTALLED Or NETFRAMEWORK45 Or
> BYPASS_MyApp_DEPENDENCY_CHECKS Or REMOVE="ALL"]]></Condition>
>         <Icon Id="MyApp.ico" SourceFile="$(var.BASEPATH)\MyApp\MyApp.ico"
> />
>         <Property Id="ARPPRODUCTICON" Value="MyApp.ico" />
>         <Property Id="WIXUI_INSTALLDIR" Value="MYAPPDIR" />
>         <Property Id="WIXUI_EXITDIALOGOPTIONALCHECKBOXTEXT" Value="Launch
> $(var.ApplicationName)" />
>         <Property Id="WixShellExecTarget" Value="[#MyApp_exe]" />
>         <CustomAction Id="LaunchApplication" BinaryKey="WixCA"
> DllEntry="WixShellExec" Impersonate="yes" />
>         <Media Id="1" Cabinet="MyApp.cab" EmbedCab="yes" />
>         <UI>
>             <UIRef Id="WixUI_InstallDir" />
>             <Publish Dialog="ExitDialog" Control="Finish" Event="DoAction"
> Value="LaunchApplication">WIXUI_EXITDIALOGOPTIONALCHECKBOX = 1 and NOT
> Installed</Publish>
>         </UI>
>         <Directory Id="TARGETDIR" Name="SourceDir">
>             <!--<Directory Id="SystemFolder" Name="SystemFolder" />-->
>             <Directory Id="ProgramFilesFolder" Name="PFiles">
>                 <Directory Id="MYAPPDIR" ShortName="MyApp"
> Name="$(var.ApplicationName)" />
>             </Directory>
>             <Directory Id="ProgramMenuFolder" Name="Programs" />
>         </Directory>
>         <DirectoryRef Id="MYAPPDIR">
>             <Component Id="MyApp_executable">
>                 <File Id="MyApp_exe"
> Source="$(var.BASEPATH)\MyApp\MyApp.exe" KeyPath="yes" />
>             </Component>
>         </DirectoryRef>
>         <DirectoryRef Id="ProgramMenuFolder">
>             <Component Id="MyApp_shortcut"
> Guid="82CBCBED-F0FD-497A-A34C-6290B7AAE4C4">
>                 <Shortcut Id="ApplicationStartMenuShortcut"
> Name="$(var.ApplicationName) Desktop" Target="[MYAPPDIR]MyApp.exe"
> WorkingDirectory="MYAPPDIR" />
>                 <RemoveFile Id="ApplicationStartMenuShortcut"
> Name="RemoveShortcut" On="uninstall" />
>                 <RegistryValue Root="HKCU"
> Key="Software\XYZ\$(var.ApplicationName)" Name="installed" Type="integer"
> Value="1" KeyPath="yes" />
>             </Component>
>         </DirectoryRef>
>
>         <Feature Id="MyApp_Application" Title="$(var.ApplicationName)"
> Level="1" ConfigurableDirectory="MYAPPDIR">
>             <ComponentRef Id="MyApp_executable" />
>             <ComponentRef Id="MyApp_shortcut" />
>         </Feature>
>         <InstallExecuteSequence>
>             <RemoveExistingProducts After="InstallInitialize" />
>         </InstallExecuteSequence>
>     </Product>
> </Wix>
>
> ------------------------------------------------------------------------------
> Rapidly troubleshoot problems before they affect your business. Most IT
> organizations don't have a clear picture of how application performance
> affects their revenue. With AppDynamics, you get 100% visibility into your
> Java,.NET, & PHP application. Start your 15-day FREE TRIAL of AppDynamics
> Pro!
> http://pubads.g.doubleclick.net/gampad/clk?id=84349831&iu=/4140/ostg.clktrk
> _______________________________________________
> WiX-users mailing list
> WiX-users@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/wix-users
>
------------------------------------------------------------------------------
Rapidly troubleshoot problems before they affect your business. Most IT 
organizations don't have a clear picture of how application performance 
affects their revenue. With AppDynamics, you get 100% visibility into your 
Java,.NET, & PHP application. Start your 15-day FREE TRIAL of AppDynamics Pro!
http://pubads.g.doubleclick.net/gampad/clk?id=84349831&iu=/4140/ostg.clktrk
_______________________________________________
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users

Reply via email to