在一个配置中同时编译x86和x64?

7

大家好,

我正在使用Visual Studio 2010中的C#解决方案。目前,由于我针对AnyCPU进行了定位,因此当我想要构建我的安装程序时,我只需选择发布模式并点击构建即可完成所有操作。但是,很快我将不得不添加一个C++ DLL项目到解决方案中以完成一些低级操作。为了避免为x86和x64分别提供两个下载链接,我希望在我的安装程序中包含这两种版本。但是,如果我必须为x86和x64分别设置不同的配置,那将非常麻烦。我必须先构建一个,然后再构建另一个,最后将它们打包起来。有没有办法让Visual Studio在发布模式下编译C++项目的x86和x64版本呢?


参见: https://dev59.com/gHI_5IYBdhLWcg3wAd82 - RikRak
3个回答

3

我找到了一个解决方案。只需创建两个项目,一个用于x86构建,另一个用于x64构建,引用相同的源文件即可。虽然有点丑陋,但它能够正常工作。


0

只需在 C++ DLL 项目的 PostBuild 事件中添加执行命令以构建此类配置。使用宏和 "devenv /?" 的帮助。

例如:

devenv $(SolutionName) /project $(ProjectName) /ProjectConfig "Release|x64"

0

我认为你需要手动编辑proj文件,以确保msbuild指令正确。我猜这不是一项难任务。


我已经尝试过编辑解决方案文件中的“GlobalSection(ProjectConfigurationPlatforms) = postSolution”部分,但这并不起作用。 它只会编译列出的第一个配置,并忽略任何后续的列表。 - Paul Accisano

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接