为什么说找不到某个DLL?

xxjoyjn 2008-12-02 04:48:19
我写了一个简单的对话框程序,使用DEBUG版本,放在另外一台没有装VC的电脑上无法运行,说找不到某个DLL,如果我使用RELEASE版本,却可以在另外一台电脑上运行,为什么啊?
...全文
127 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
aqqwrpggame 2008-12-02
  • 打赏
  • 举报
回复
吐水贴,DEBUG版太慢了。。。。受不了。而且DEBUG版含有调试信息,生成的Exe比Release大很多。
receive099 2008-12-02
  • 打赏
  • 举报
回复
up
android2008 2008-12-02
  • 打赏
  • 举报
回复
up
killbug2004 2008-12-02
  • 打赏
  • 举报
回复
debug版本使用debug版的运行时,debug提供了很强大的侦错机制,并且debug版的程序与debug版的运行时dll必须匹配才可以运行,debug版中有许多的调试辅助信息和代码,故必release大,发布时要用release版,release中不像debug版本那样依赖特定版本的debug运行时,只要有c/c++运行时就可以正常运行,要想debug版可以在别的机子上运行,就带着debug版的运行时dll或静态连接运行时代码
来灵 2008-12-02
  • 打赏
  • 举报
回复
属性设置中改称“在静态库中使用 MFC”,就不会出现找不到某某动态库了。
VCRWX 2008-12-02
  • 打赏
  • 举报
回复
如果你保证要在其他机器上运行,最好用静态库
wonsoft 2008-12-02
  • 打赏
  • 举报
回复
补充一下:因为DEBUG和Release版本的所调用的DLL不一样,如果你用是vc6的话,它带的MFC4.2 DLL(release版) XP里面就带有。所以你的应用程序能运行
twoseconds 2008-12-02
  • 打赏
  • 举报
回复
呵呵,另外的一台机子肯定没装VC,生成一个Release版本就OK了。
wonsoft 2008-12-02
  • 打赏
  • 举报
回复
兄弟,你把需要的这些dLL和你的应用程序一起复制到目标机器上,和应用程序同一个文件夹或者将它们放在系统文件夹(Winodws\System32下)。
当然你也可以在目标机器上安装开发环境的可再发行包。
oyljerry 2008-12-02
  • 打赏
  • 举报
回复
缺少debug的MFC运行库等dll,而刚巧release的目标机器上有,或者static link了

15,978

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 界面
社区管理员
  • 界面
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧