解决用VC开发的64位程序无法运行的问题.

来源:互联网 发布:大文件上传和存储 java 编辑:程序博客网 时间:2024/05/16 05:01

 第一次写64位,碰到不少问题,尤其是在VS2005下,对64位程序的编写支持不是很好,所以建议用VS2008.

   VS2005和2008默认情况下没有安装64位编程模块,可以在安装的时候选自定义选中x64 编译器和工具,再安装,如果你已经安装了,则可以再启动安装程序选"添加或移除功能",选x64 编译器和工具安装.
   以VS2008为例,工程环境中,选择解决方案平台,再在里面选 配置管理器,活动解决方案平台,选新建,键入或选择平台里选择X64.回到工程编译程序,可以正常运行.
   把程序移到没有安装VS2008里的64位平台上,发现程序无法运行,提示 配置不正确(side by side configuration is incorrect).
   在VS2008安装目录下,把VC/redist/amd64/Microsoft.VC90.CRT下面的文件都拷贝出来放到我们写的64位应用程序同一文件夹下.如果是MFC程序,则需把VC/redist/amd64/Microsoft.VC90.MFC里面的文件拷过去.程序即可以正常运行了.
   如果程序不大的,依赖的库不是很多,建议采用静态编译,这样相比下来程序的体积可以小很多.在项目菜单下面选属性-配置属性- C/C++ -代码生成 - 运行时库,选多线程(/MT).
   当然还有一个愚蠢的办法,到微软官方下载Microsoft Visual C++ 2005 Redistributable Package (x64),如果是VS2008下载Microsoft Visual C++ 2008 Redistributable Package (x64).地址(VS2005):http://www.microsoft.com/downloads/details.aspx?familyid=90548130-4468-4BBC-9673-D6ACABD5D13B&displaylang=en, 地址(VS2008):http://www.microsoft.com/downloads/details.aspx?familyid=BD2A6171-E2D6-4230-B809-9A8D7548C1B6&displaylang=en.安装在没有安装VS2008或VS2005的64位平台上就可以运行64位程序了.
原创粉丝点击