c - 如何在 32 位计算机上使用 VS 2005 交叉编译 64 位 DLL?

标签 c visual-studio 64-bit 32-bit cross-compiling

使用 Visual Studio 2005,我用 C 编写了一个简单的 DLL,它使用 Windows API 发送 UDP 数据报,并挂接到第三方程序中。在 64 位机器上,它根本不起作用,因为在这种情况下第三方代码是为 64 位编译的。所以我需要发布同一个 DLL 的两个版本 - 一个用于 32 位,一个用于 64 位。

但是,我没有设法让 Visual Studio(在 32 位机器上运行)吐出一个与 32 位版本不同的 DLL - 似乎项目属性中的“机器”设置被简单地忽略了.一位同事告诉我 VS 2008 在这种情况下根本拒绝交叉编译。这真的不可能吗?

最佳答案

在解决方案资源管理器中右键单击项目,然后转到属性/配置管理器/事件解决方案平台:<New...>/x64/确定/关闭。然后在 Platform 中选择 x64,OK,就可以了。

关于c - 如何在 32 位计算机上使用 VS 2005 交叉编译 64 位 DLL?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1042453/

相关文章:

C 定义我的 fmod 回调

visual-studio - 哪些 Visual C++ 文件类型应提交版本控制?

64-bit - 我可以在 32 位计算机上运行 64 位 VMware 镜像吗?

如果在 VPN 上广播,C sendto 返回 -1

c - 如何使用测试文件运行C程序?

c - 检测到堆栈崩溃 - 已中止(核心已转储)

c++ - 为什么在我使用模板时 VS 不自动完成?

c# - 在 UWP 中创建不同的构建

mysql - 在 64 位 ruby​​ 和 64 位 Windows 上安装 ruby​​ on Rails 的 mysql2 扩展

c - 组织和维护 x86 和 x64 Windows 的代码