"Incompatible platform error" 构建 MSI

"Incompatible platform error" building MSI

我有一个 Windows 服务应用程序,正在尝试将 MSI 项目添加到解决方案中。应用程序使用 64 位 Oracle 数据访问 DLL 并构建为 64 位应用程序。

我向解决方案添加了新的 "Project Setup" 项目并完成了这些步骤。应用程序项目中还有另外两个 DLL:log4net.dll 和 System.Net.Http.dll.

Windows 服务本身运行良好。当我尝试构建解决方案时,出现 File 'Oracle.DataAccess.dll' targeting 'AMD64' is not compatible with the project's target platform 'x86' 错误。我检查了这个错误,每篇文章都说将安装程序的 taget 平台设置为 x64,这是有道理的。唯一的问题是当我打开安装程序项目的属性 window 时,没有 select 目标平台的选项,它是空白的。

这是安装程序 "Application Folder" 部分的屏幕截图:

这是安装程序属性:

这是 Windows 服务应用程序的属性:

程序:您需要在安装项目的属性中设置MSI架构window。这是一个与您显示的页面不同的 属性 页面。

  1. 左键点击Visual Studio Installer Project里面的Visual Studio Solution.
  2. F4 转到项目的 属性 页面。
  3. TargetPlatformselectx64.

提示:当您遇到此类问题时,尝试谷歌搜索您收到的确切错误消息。这是以前的答案:(我添加了一个新答案以获取屏幕截图)。

注意事项:注意 Visual Studio 安装程序项目的使用。它们有很多限制:.

MSI Tools: 这是一个quick overview of other MSI tools. And here is a detailed overview / review.


链接: