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