我有Windows应用程序生成使用Visual C++。它正在构建和运行在32位窗口env。现在我需要确保它在Windows Vista/7 64位环境下工作。我需要考虑这个移植过程的所有事情?从32位移植到64位
3
A
回答
7
那不是从32位移植到64,这只是运行在64位机器上的32位代码,以确保它仍然有效。
要做到这一点的方法就是测试64位机器上的所有功能,就像每次发布新版本时一样,对吧? :-)
如果你真的想移植它(即编译成一个64位可执行文件),第一步就是试试它。您可能会发现它的工作原理。我只会担心移植问题,如果你尝试它,然后出现问题。
然后,只有这样,我才能去寻找原因。否则,这可能是浪费精力。
+0
太过真实。我唯一有意义的移植问题是假设指针是4个字节并加载内存映射文件。其他一切“只是起作用”。 – Goz 2010-01-20 08:41:42
1
0
一个需要注意的问题是,如果您要将简单的旧数据(POD)存储到文件中,或通过IPC或套接字将POD数据传递到其他应用程序等。 我们也有假定4字节长的代码4个字节的指针。不用说,我们删除了这些时代错误。
编译器通常擅长发现其他类型的错误,即长到int的转换等。因此,它通常只是注意编译器警告并相应地更改代码的情况。
1
建立之前,您在x64模式下投影。
- 包括所有必要的64位DLL的需要为您的项目
- 包括在链接库文件 - 额外的依赖 - 配置属性。
- 在C \ C++ - 预处理器 - 配置属性中添加必要的预处理器。
- 启用64级的警告 - 在编译时,编译器显示警告
防爆
- 转换数据类型从
int
到size_t
可能存在数据 - 存储指针地址的损失
- 魔术没有。
参考下面的链接,更多的错误和警告,而移植 http://www.viva64.com/en/a/0065/
相关问题
- 1. 代码从32位移植到64位
- 2. 从32位移植到64位版本
- 3. 澄清:移植32到64位
- 4. 将回调函数从32位移植到64位
- 5. 32位到64位内联汇编移植
- 6. 移植C编写的32位源代码到64位
- 7. 从32位到64位
- 8. Fortran:32位/ 64位性能可移植性
- 9. 从32位变为64位
- 10. Windows 64位移植问题
- 11. Linux 64位移植问题
- 12. 从32位到64位将在装配
- 13. 移植32位到在窗口7
- 14. 将32位程序移植到64位版本的指导原则
- 15. 将应用从32位移动到64位
- 16. 从Windows 32位移动到Linux 64位,base_convert()问题
- 17. 从32位移动到64位后PyQtGraph不工作
- 18. Excel插件错误从WindowsXP 32位移到Windows7 64位
- 19. 将PHP网站从32位RedHat迁移到64位
- 20. 迁移从32位[Delphi的7]到64位
- 21. 从Ubuntu 14.04 32位迁移到Ubuntu 14.04 64位
- 22. XOR高32位,低32位,64位数
- 23. VS上的UINT64左移(64> shift> 32)位仅移位32位
- 24. elastic beanstalk从32位更改为64位
- 25. 从32位访问64位ODBC过程
- 26. 从Win7编译32位64位
- 27. Xcode&64位&32位问题
- 28. 64位weblogic 32位oracle DB
- 29. 64位的32位除法
- 30. 64位OS/32位进程
你有将它移植到64位的还是你必须确保它适用于64位操作系统? – 2010-01-20 08:13:02
@Nikola,准确地说,我需要确保它可以在64位操作系统上运行。 – Unicorn 2010-01-20 08:52:50