我可以在Visual Studio 2008中从Win32解决方案配置编译x64 exe(反之亦然)吗?

Can I compile an x64 exe from a Win32 solution configuration (and vice versa) in Visual Studio 2008?

本文关键字:exe x64 反之亦然 编译 配置 Studio Visual 2008 中从 解决方案 Win32      更新时间:2023-10-16

我有一个Visual Studio解决方案,其中有许多项目。x86和x64都有调试和发布配置,当选择一个特定的组合时,所有的东西都成功地以该格式构建。

然而,现在有一个要求,不管"位"&;当前选择的某个c++项目应该同时编译为x86和x64。例如,当解决方案在x86调试模式下构建时,在构建目录中应该有两个exe的调试副本,一个x86和一个x64。

实现这一点最简单的方法是什么?我试过制作项目的两个副本,exename_32和exename_64。我的第一个想法是将.vcproj文件中的Debug|x64节点的内容复制到exename_64的Debug|Win32节点中。但是当我尝试在Win32模式下构建解决方案时,我得到了exename_64项目的以下错误:

c:program files (x86)microsoft visual studio 9.0vcincludecodeanalysissourceannotations.h(17): error C2371: 'size_t': redefinition;不同的基本类型

20比;预定义的c++类型(编译器内部)(19):参见声明'size_t'

20>C:UsersmelolDesktoplocalmarch03srcthirdpartyMicrosoft sdk Windowsv6.0includewinnt.h(81): fatal error C1189: #error: "No Target Architecture"

所讨论的exe是带有wWinMain的Windows命令行实用程序。仅有的两个#include是

#include <windows.h>
#include <iostream>

想法吗?

你绝对可以在Visual Studio 2008中构建32/64位(反之亦然)。

实现任务的最简单方法似乎是使用"批量构建":http://msdn.microsoft.com/en-us/library/169az28z(v=vs.90).aspx

使用此对话框可同时生成多个项目配置一次。例如,您可以决定构建每个项目用一个命令配置一个项目。你可以访问这个对话框。