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

有没有一种简单的方法可以用32位版本的 Visual C + + 2010 Express 编译一个64位的应用程序?需要什么样的配置(如果有的话) ?

175629 次浏览

上不提供64位工具 默认情况下,VisualC + + Express 在 VisualC + + 上启用64位工具 Express,安装 Windows 软件 开发工具包(SDK) VisualC + + Express 当您尝试 将项目配置为以64位为目标 使用 Visual C + + Express 开发平台。

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

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

下载 Windows SDK,然后转到 View-> Properties-> Configuration Manager-> Active Solution Platform-> New-> x64。

我发现了一个重要的步骤添加到这一点-在您安装了 SDK 之后,转到您的项目属性和更改配置属性-> 一般-> 平台工具集从 v100或不管它是什么到 Windows7.1 SDK。这将 $(WindowsSdkDir)更改为适当的位置,似乎也解决了我遇到的其他一些困难。

确保下载的是 Windows7SDK,而不仅仅是 Windows7。让我头疼欲裂。

以下是一步一步的说明:

  1. 下载及安装视窗软件开发工具包7.1版。VisualC + + 2010Express 不包含64位编译器,但 SDK 包含。到 SDK 的链接: http://msdn.microsoft.com/en-us/windowsserver/bb980924.aspx
  2. 更改项目配置。转到项目的属性。在对话框的顶部会有一个“ Configuration”下拉菜单。确保选择“ All Configuration”还将有一个“ Platform”下拉列表,其中将显示“ Win32”最后在右边有一个“配置管理器”按钮-按它。在出现的对话框中,找到您的项目,点击 Platform 下拉列表,选择 New,然后选择 x64。现在将“ Active Solutions Platform”下拉菜单更改为“ x64”当您返回到属性对话框时,“ Platform”下拉列表现在应该是“ x64”
  3. 最后,更改您的工具集。在项目的“属性”菜单中的“配置属性 | 常规”下,将“平台工具集”从“ v100”更改为“ Windows7.1 SDK”。

不管怎样,这些步骤对我很有效。关于步骤2的更多细节可以在微软的参考资料中找到,之前的一个海报提到: http://msdn.microsoft.com/en-us/library/9yb4317s.aspx

在64位环境中编程与在32位环境中编程完全不同。 在32位和64位代码中,生成的代码具有完全不同的汇编结构,甚至与函数通信的协议也会发生变化。因此,不能使用32位编译器生成64位代码。

您可能希望看到关于目标为64位目标但使用32位开发计算机的 微软网站上的一篇文章

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

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

正如 Jakob 所说: 如果存在 MSVC + + x64和 x86运行时以及版本10.0.40219的可重分发文件,则不能安装 windows sdk 7.1。删除它们后,win sdk 安装就可以了,VS C + + SP1也可以再次安装。

问候你