我正在开发一个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个不同的安装程序,我如何才能将此依赖项添加到每个安装程序?
先感谢您 !
比特: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(底部)来实现相同的目标。
链接: