使用x64和x86的依赖项创建安装程序

问题描述 投票:1回答:1

我正在开发一个C#中的应用程序,它有几个依赖项,其中一个不同的是32位或64位。

当我编译应用程序时:here is the result of the compilation

在x64和x86文件夹中,找到相同的依赖项(SQLite.Interop.dll),但是特定于体系结构的文件(x86:1223 KB,x64:1575 KB)。

正如标题中所述,我想使用Visual Studo Installer为此应用程序创建一个安装程序。

当我将程序输出添加到“应用程序文件夹”时,所有依赖项都会出现,但x64或x86文件夹中除外。如何根据计算机的体系结构添加这个着名的依赖项?如果我必须创建2个不同的安装程序,我如何才能将此依赖项添加到每个安装程序?

先感谢您 !

c# visual-studio visual-studio-2017 windows-installer installer
1个回答
1
投票

比特:Different Packages are Required for Different Processor Architectures。 64位安装程序可以安装32位和64位组件,32位安装程序只能安装32位组件。 32位设置在64位系统上运行,但64位软件包不能在32位系统上运行。换句话说,您需要两个不同的安装程序,一个用于32位,另一个用于64位。

文件包含:我不使用此项目类型(原因将在下面说明),但您应该能够通过Right Click Project => Add => File...手动添加文件,然后编译两个单独的设置。

自定义操作:在定位不同平台时,请注意自定义操作的位数问题。我通常使用32位代码构建自定义操作。


部署工具:There are some well-known limitations for Visual Studio Installer projects。也许快速浏览一下other, common tools(不同部署工具功能的简洁总结)。

单一来源:Advanced Installer做了一些奇特的事情,允许针对两个具有一个来源的架构。我不太确定他们做了什么,说实话。 Installshield has similar constructs。 WiX可以使用compiler variables / preprocessor constructs(底部)来实现相同的目标。


链接:

© www.soinside.com 2019 - 2024. All rights reserved.