如何使用Visual C ++ 2010 Express编译64位应用程序?


Answers:


181

以下是分步说明:

  1. 下载并安装Windows软件开发工具包7.1版。Visual C ++ 2010 Express不包含64位编译器,但SDK包含。SDK的链接: http //msdn.microsoft.com/zh-cn/windowsserver/bb980924.aspx
  2. 更改您的项目配置。转到项目的属性。在对话框的顶部,将有一个“配置”下拉菜单。确保选择“所有配置”。也将有一个“平台”下拉菜单,显示为“ Win32”。最后,在右侧有一个“配置管理器”按钮-按下它。在出现的对话框中,找到您的项目,点击Platform下拉菜单,选择New,然后选择x64。现在,将“活动解决方案平台”下拉菜单更改为“ x64”。当您返回到“属性”对话框时,“平台”下拉列表现在应显示为“ x64”。
  3. 最后,更改您的工具集。在项目的“属性”菜单中的“配置属性” |“ 常规,将“平台工具集”从“ v100”更改为“ Windows7.1SDK”。

无论如何,这些步骤对我都有效。可以在Microsoft的参考中找到有关步骤2的更多详细信息,该参考提到了以前的海报:http : //msdn.microsoft.com/zh-cn/library/9yb4317s.aspx


2
恭喜-您的回答赢得了275 rep。感谢您的答复!
内森·奥斯曼

我有Windows XP,但SDK适用于Windows7。这是否仍然有效?
0x499602D2

@ 0x499602D2:我不知道。我希望,如果Visual C ++和SDK版本相同,那就可以。你试过了吗?
马特

2
仅在安装此处提到的补丁3和4之后,此方法对我
有用

1
@Matt:这一切在WinXP 64bit上都对我有用。将Platform Toolset更改为Win7.1SDK的原因是什么?
IgorStack

48

默认情况下,Visual C ++ Express上不提供64位工具。要在Visual C ++ Express上启用64位工具,除了安装Visual C ++ Express之外,还要安装Windows软件开发工具包(SDK)。否则,当您尝试使用Visual C ++ Express将项目配置为以64位平台为目标时,会发生错误。

如何:将Visual C ++项目配置为目标64位平台

参考:http : //msdn.microsoft.com/en-us/library/9yb4317s.aspx


这可用于VB 2010 Express吗?
Remus Rigo

出于某种原因,我的$(WindowsSdkDir)似乎工作不正常,但是一旦我手动添加了绝对路径,它就会获得成功。
rogerdpack 2011年

5
按照说明进行操作后,我一直在获得x64平台的空白属性页。我必须在这里安装编译器更新。有关更多信息,请参见KB2519277
kipkennedy 2011年


9

我发现要添加一个重要的步骤-安装SDK之后,转到项目属性,然后将v100的Configuration Properties-> General-> Platform Toolset或从v100更改为Windows7.1SDK。这会将$(WindowsSdkDir)更改为正确的位置,似乎也解决了我遇到的其他一些困难。


5

请注意,如果已安装Windows SDK v7.1,则在将Visual Studio 2010 Professional或Visual Studio 2010 Express升级到Visual Studio 2010 SP1时,将删除Visual C ++编译器。

有关解决此问题的说明,请参阅Microsoft支持站点上的KB2519277


5
最好将其作为注释,因为它实际上并不能回答当前的问题。
安全猎犬2012年

4

下载Windows SDK,然后转到“视图”->“属性”->“配置管理器”->“活动解决方案平台”->“新建”->“ x64”。


1
要运行什么程序?我没有用“查看”可找到任何程序
斯特凡洛朗

3

在64位环境中进行编程与32位环境完全不同。生成的代码在32和64位代码中具有完全不同的汇编结构,即使与功能进行通信的协议也发生了变化。因此,您无法使用32位编译器生成64位代码。

您可能希望在Microsoft网站上看到有关使用64位目标但使用32位开发机的文章。


给出的答案根据英特尔文档
peribrain 2011年

是的,确实也必须使用64位编译器重新编译所有依赖项,否则链接步骤将失败。
rogerdpack'2

2

正如Jakob所说:如果存在MS VC ++ x64和x86运行时以及版本10.0.40219的可重新发行版本,则无法安装Windows sdk 7.1。删除它们后,可以进行win sdk安装,可以再次安装VS C ++ SP1。

亲切的问候

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.