1

I have a Windows service application and am trying to add an MSI project to the solution. Application uses 64 bit Oracle Data Access DLL and is built as 64 bit app.

I added new "Project Setup" project to the solution and went through the steps. There are two other DLLs in the application project: log4net.dll and System.Net.Http.dll.

Windows Service by itself worked fine. When I try to build the solution, I get File 'Oracle.DataAccess.dll' targeting 'AMD64' is not compatible with the project's target platform 'x86' error. I checked for this error and every article said to set the taget platform of installer to x64, which makes sense. The only thing is when I open the properties window of installer project, there is no option to select target platform and it is blank.

This is screen shot of "Application Folder" section of installer:

enter image description here

This is the installer properties:

enter image description here

This is the Windows service application's properties:

enter image description here

NoBullMan
  • 1,761
  • 5
  • 30
  • 65

1 Answers1

0

Procedure: You need to set the MSI architecture in the setup project's properties window. This is a different property page than the one you show.

  1. Left click the Visual Studio Installer Project inside the Visual Studio Solution.
  2. Press F4 to go to the property page for the project.
  3. In the TargetPlatform select x64.

Property Pages

Tip: Try googling the exact error message you get when you face issues like these. Here is a previous answer: Can't set 64 bit target for Setup Project in Visual Studio 2017 (I added a new one to get a screen shot in).

Heads-Up: And a heads-up on the use of Visual Studio Installer projects. They have many limitations: Visual Studio Publish Project Into One Simple Installer.

MSI Tools: Here is a quick overview of other MSI tools. And here is a detailed overview / review.


Links:

Stein Åsmul
  • 34,628
  • 23
  • 78
  • 140