用mfc写了一个基于单文档的程序,在vc里面运行很好没有错误,可是为什么在Debug里打开.exe文件没反应

 我来答
匿名用户
2013-09-06
展开全部
标准的答案!在VC下运行,编译器会自动查找所需的库文件,不管是静态链接还是动态链接。
但是单独打包EXE文件,如果不选静态链接MFC库,编译器不会将你程序中所用到的MFC库打包到exe文件中,自然会出错了
记得打包EXE时选静态链接就OK
用了静态链接MFC库连接exe。在VC外面可以运行了。
但是我VC里直接按F5运行,居然在原来在外面exe出错的那一行发生了错误。
简单的说用了
使用
动态链接MFCVC外EXE:不正确VC里运行:正确
静态链接MFCVC外EXE:正确VC里运行:不正确
静态链接库(lib)与动态链接库(dll)的比较:
首先,静态链接库与动态链接库都是共享代码的方式,也可称为程序模块化的方式;
静态链接库:
lib中的指令都被直接包含在最终的EXE中,因此exe运行时不再需要lib文件;
不能再包含其他的动态链接库或者静态库;
动态链接库:
dll与EXE文件独立存在,所以发布EXE时需要同时发布dll文件;
可以再包含其他的动态链接库或者静态库;
建议:
请最好使用动态链接库(dll)进行程序的模块化,静态链接库(lib)过时了(应用程序升级上就能看出其劣势);
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式