用mfc写了一个基于单文档的程序,在vc里面运行很好没有错误,可是为什么在Debug里打开.exe文件没反应
双击.exe文件后,通过任务管理器发现程序进程出现几秒然后就自动消失了。不知道是什么原因?那位大侠帮我看看...
双击.exe文件后,通过任务管理器发现程序进程出现几秒然后就自动消失了。不知道是什么原因?那位大侠帮我看看
展开
5个回答
展开全部
在VC下运行,编译器会自动查找所需的库文件,不管是静态链接还是动态链接。
但是单独打包EXE文件,如果不选静态链接MFC库,编译器不会将你程序中所用到的MFC库打包到exe文件中,自然会出错了
记得打包EXE时选静态链接就OK
用了静态链接MFC库连接exe。在VC外面可以运行了。
但是我VC里直接按F5运行,居然在原来在外面exe出错的那一行发生了错误。
简单的说用了
使用
动态链接MFC VC外EXE:不正确 VC里运行:正确
静态链接MFC VC外EXE:正确 VC里运行:不正确
静态链接库(lib)与动态链接库(dll)的比较:
首先,静态链接库与动态链接库都是共享代码的方式,也可称为程序模块化的方式;
静态链接库:
lib中的指令都被直接包含在最终的EXE中,因此exe运行时不再需要lib文件;
不能再包含其他的动态链接库或者静态库;
动态链接库:
dll与EXE文件独立存在,所以发布EXE时需要同时发布dll文件;
可以再包含其他的动态链接库或者静态库;
建议:
请最好使用动态链接库(dll)进行程序的模块化,静态链接库(lib)过时了(应用程序升级上就能看出其劣势);
但是单独打包EXE文件,如果不选静态链接MFC库,编译器不会将你程序中所用到的MFC库打包到exe文件中,自然会出错了
记得打包EXE时选静态链接就OK
用了静态链接MFC库连接exe。在VC外面可以运行了。
但是我VC里直接按F5运行,居然在原来在外面exe出错的那一行发生了错误。
简单的说用了
使用
动态链接MFC VC外EXE:不正确 VC里运行:正确
静态链接MFC VC外EXE:正确 VC里运行:不正确
静态链接库(lib)与动态链接库(dll)的比较:
首先,静态链接库与动态链接库都是共享代码的方式,也可称为程序模块化的方式;
静态链接库:
lib中的指令都被直接包含在最终的EXE中,因此exe运行时不再需要lib文件;
不能再包含其他的动态链接库或者静态库;
动态链接库:
dll与EXE文件独立存在,所以发布EXE时需要同时发布dll文件;
可以再包含其他的动态链接库或者静态库;
建议:
请最好使用动态链接库(dll)进行程序的模块化,静态链接库(lib)过时了(应用程序升级上就能看出其劣势);
展开全部
你看看是不是在OnTimer函数里面有OnClose()一类的函数
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
你在VC里运行是用debug还是release模式?看运行正常是在什么模式下。
追问
在debug模式下运行的,我用的以前别人的框架,是不是问题出在这啊
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2012-11-12
展开全部
可能是没有找到必要的dll文件
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
清理一下,重新编译看看,我遇到过
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询