-2

我在Visual Studio 2015中创建了一个安装程序项目。成功完全构建应用程序并安装在我的系统中(我正在使用Windows 10 64位)。但是当我尝试在32位操作系统中安装它时,出现错误消息“此处理器不支持安装程序包”。我已经检查了项目的属性但是没有任何与此相关的内容。解决方案内的所有项目(我有4个项目)都使用AnyCPU模式构建。为Visual Studio 2015安装程序项目选择目标平台

当我从配置管理器中打开选项来选择其他项目的配置和平台时,我们不能选择安装项目的平台。我附上截图。

enter image description here

希望有人指导我创建可使用的Visual Studio 2015年

+0

如果你可以避免MSI,你应该。这项技术很痛苦,有许多问题,还有其他的包装和交付方式。 – StingyJack

+0

@The downvoter:如果你引用原因会很好 –

回答

3

的安装项目的架构是在属性窗口中同时安装在32位和64位操作系统安装包(非属性) - 在解决方案资源管理器中选择安装项目,然后按F4(或选择视图 - >属性窗口),然后是TargetPlatform。

32位MSI将安装在32位和64位系统上,但安装不会让您传送到64位文件夹位置。 Visual Studio将在内部将所有组件标记为32位,因此可能会有你没有想到的结果。 64位MSI 可以提供32位和64位组件,但Visual Studio不允许您选择哪些组件是32位,哪些是64位。

在任何情况下,不同的体系结构需要单独的MSI文件:

https://blogs.msdn.microsoft.com/heaths/2008/01/15/different-packages-are-required-for-different-processor-architectures/

,因此人们建立完全的32位MSI设置(含32位代码和注册表数据)用于x86系统和64- (包含所有64位代码和注册表数据)用于64位系统。使用其他工具,您可以构建包含32位系统支持的64位MSI(例如COM Dll和两种体系结构的注册),但Visual Studio设置不支持该功能,因此您可能会遇到一些局限性, WiX,InstallShield,Advanced Installer等等。