debug版本和release版本的问题

huaxu2002 2006-05-14 09:55:45
我的debug版本能够正常运行,可是在release版本下却不能运行,而且还弹出"应用程序错误"窗口提示"0x00000000"指令引用的内存"0x000000000"不能read,我不清楚这个错误在debug下怎么不提示?一般遇到这个错误怎么解决啊?我点击"取消"却不能调试,请赐教!谢谢!
程序调用了我写的一个dll.
...全文
257 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
wolflarge 2007-03-26
  • 打赏
  • 举报
回复
mark
huaxu2002 2006-05-15
  • 打赏
  • 举报
回复
我把release版本中的调用规则改成和debub中的一样,是_stdcall,结果release就没问题了,不知道这个是不是问题所在.
huaxu2002 2006-05-15
  • 打赏
  • 举报
回复
好的,我试一下,等调试后再发帖。先谢过!
cut9 2006-05-15
  • 打赏
  • 举报
回复
mark
chenchen 2006-05-15
  • 打赏
  • 举报
回复
调用规则不一致会破坏堆栈,极可能会出问题
flowlight 2006-05-15
  • 打赏
  • 举报
回复
调试版和发行版本在某些参数的默认初始化值是不一样的,如BOOL, 可能是你的程序未初始化而使用默认的随机参数造成的
Featured 2006-05-14
  • 打赏
  • 举报
回复
让Release版本也支持调试,步骤如下:
1、在Project Settings里选Settings For为All Configurations。
2、在C/C++标签中,Debug info 选 Program Database。
3、在Link 标签中,Category选 Debug,选中Debug info 复选框和Microsoft format。
现在就可以像在调试版本中那样设置断点进行测试了,由于代码优化,有些变量观察不到,行的运行顺序可能也会不同。

15,472

社区成员

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

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