32位程序在64位系统上运行
32位系统下的MFC文件,怎么在64位的系统上面运行?
先将32位的应用程序转换为64位的应用程序。
从32位应用程序到64位应用程序
编译:starlight
这篇文章主要是讲述如何将已有的32位程序编译成为64位程序, 并简单讲述如何远程调试64位应用程序, 以及在其中可能遇到的问题, 其中译注补充部分为自已的实践经验, 如有出入或其它解决方案, 欢迎指正.
本文一步一步地描述了怎样使用Microsoft Visual Studio IDE创建64位应用程序, 并且,64位的应用程序代码和32位应用程序代码完全一样, 只是编译环境配置有所不同。目前还没有发现有纯64位的IDE应用程序开发环境。笔者翻译本文时,Microsoft已在VS.NET2002/2003/2005/2008 IDE中提供了64位创建环境 ,但完全的64位IDE开发环境似乎还没有。有兴趣的朋友可以看下:
http://blogs.msdn.com/deeptanshuv/archive/2006/04/11/573795.aspx
http://forums.msdn.microsoft.com/en-US/netfx64bit/threads/
当前的软件开发包(应该是指Microsoft SDK 2003 server RC2)包括了专为64位应用程序开发的编译器,链接器, 和其它的工具. 同样, 这个SDK包含了C运行时库(CRT), 微软基础类库(MFC), 和活动模板库(ATL), 这些均是64位的产品版本. 你可以用Visual C++ 6.0 或者 Visual C++ .NET IDE创建64位的应用程序。如果你有一个32位的应用程序并且你想移植它到64位应用程序, 这篇文章描述了怎样在同一个工程中创建一个64位的 配置环境。
一些必要条件
这下面的列表描述了推荐的硬件, 软件, 网络以及Service pack:
Microsoft 平台 SDK (2001/11月) 或最近发布的Microsoft 平台 SDK: 推荐使用2003 SDK RC2版本, 下载地址:
http://download.microsoft.com/download/0/8/3/0839ce16-0523-4407-9432-01958ee61aff/VS2008TeamSuite90DayTrialCHSX1429243.part1.rar
…
http://download.microsoft.com/download/0/8/3/0839ce16-0523-4407-9432-01958ee61aff/VS2008TeamSuite90DayTrialCHSX1429243.part7.rar
Visual C++ 6.0 或者 Visual C++ .NET (2002 or 2003 or 2005 or 2008 )
用Visual C++ 6.0 IDE创建一个64位应用程序
设置64位创建环境变量, 用下面任何一种方式都行:
方式一:
点击”开始”菜单, 指向 “Microsoft Platform SDK” > “Open Build Environment Windows” > “Set Windows XP 64 Build Environment”, 然后点击”Set Windows XP 64 Build Environment (Debug)”, 这时, 一个控制台窗口将显示,