Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Created MSI but get installation package is not supported by this processor type error

I'm new to MSI's. I've created a Window's Service that is the output project for my MSI. My local machine is a 64-bit Win 7 machine. The server I am trying to install on is a Win 2008 32-bit server running on a VM. I'm using .NET 4 VS2010.

Currently, my service's exe is building as a release target = Any CPU in the Config Manager. The MSI, does not give me any option to change the platform.

I can install no problem on my local 64-bit Win7 machine. However, whenever I try to install on the 32-bit Win 2008 I get the following error: "This installation package is not supported by this processor type error. Contact your product vendor."

I tried changing the service's target to x86 rebuilding the exe and the setup, but I get the same result. The service references a number of class libraries. I changed those from Any Cpu to x86 as well just to see if that made any difference.

I also, made sure that my Setup project and Service Prerequisites are set to .NET Framework 4 (x86 and x64). I also experimented with changing the Prerequisites Windows Installer from 3.1 to 4.5.

Nothing seems to work. Any ideas? Thanks.

like image 496
evodev Avatar asked Feb 20 '13 23:02

evodev


People also ask

How do you fix the This installation package could not be opened verify that the package exists and that you can access it?

Verify the package exists and that you can access it. The first thing to try is to delete the file you have already downloaded and download the file again. If you chose to 'Run' the file then clear out all temporary files before you do this (Ctrl+Shift+Del).


2 Answers

In my case, having entries specified under the HKLM/SOFTWARE (64-Bit) registry node was enough to cause installation failure on a 32bit Win7 host.

The symptoms were the same for VS 2010/2013 using the free, integrated InstallShield product. I was able to keep the Any CPU settings on the project being installed. There were no other special settings required for the MSI setup project.

like image 171
bvj Avatar answered Sep 17 '22 13:09

bvj


OK, I figured out where the TargetPlatform is. It is different than on other VS Projects.

To access the TargetPlatform, select the MSI project and press the F4 key. Viola! Within the "Properties" grid, you will find the TargetPlatform field with options: x86, x64, Itanium. NOTE: this is a completely different set of properties that you get when you Right-Click on a project and select the "Properties (Alt-Enter)" item from the context menu. "Alt-Enter" Properties vs "F4" Properties.

Unfortunately, this is different than the other VS Project properties. Typically, Project Properties are set in the Main Window, not here in the "F4" properties grid. Hence, I kept getting confused when other threads discussed the properties of the project since this is different.

such as this one

ConfigurationManager in VS does not affect the MSI. I'm keeping all my dependent assemblies on "Any CPU". Also, don't forget target the correct framework in the "Launch Conditions" Window (right-click project -> View -> TargetConditions).

Hope this helps.

like image 27
evodev Avatar answered Sep 17 '22 13:09

evodev