应该程序在退出时,出现关键性停止的声音.

yndfcd 2009-02-13 03:35:18
我这个程序由四个模块组成,分别是c.exe r.dll u.dll和ce.dll,其中c.exe隐式链接了r.dll u.dll和ce.dll,在退出时,出现系统中叫做关键性停止的声音.查看系统日志发现是ce.dll中的某段地址出错了.出错地址为:0x000364a6.我用调式器运行c.exe,发现模块u.dll 和ce.dll前面都有感叹号,而r.dll正常.但所有dll中的功能,均可以正确完成.

请问是什么原因,怎么解决呢.
...全文
205 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
waizqfor 2009-02-14
  • 打赏
  • 举报
回复
[Quote=引用 7 楼 yndfcd 的回复:]
问题的原因己经找到了.我delete一个非new分配的指针.谢谢各位.
[/Quote]
恭喜LZ了
yndfcd 2009-02-14
  • 打赏
  • 举报
回复
问题的原因己经找到了.我delete一个非new分配的指针.谢谢各位.
叶落寒山 2009-02-13
  • 打赏
  • 举报
回复
在程序退出的地方设置断点,查看call stack中ce.dll的执行情况,看执行了哪段代码。
yndfcd 2009-02-13
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 waizqfor 的回复:]
有感叹号 可以是你的连接有问题 在动态连接库上 不知道你用的什么版本的Debug版还是Release版的 一般都会有这样的错误
LZ再自己检查下错误的具体位置吧!~~
[/Quote]

请问什么叫连接有问题,我在debug和release版上,均出现相同的问题.我使用的是隐式链接,链接代码是由编译器自动生成的.
yndfcd 2009-02-13
  • 打赏
  • 举报
回复
可以肯定不是内存操作错误的问题.

我打开c.exe,不执行任何操作,直接退出一样有问题.ce.dll中的所有static变量是简单的整数类型,不存在内存操作问题.软件在release下编译后,进行也没有任何问题.
waizqfor 2009-02-13
  • 打赏
  • 举报
回复
[Quote=引用楼主 yndfcd 的帖子:]
我这个程序由四个模块组成,分别是c.exe r.dll u.dll和ce.dll,其中c.exe隐式链接了r.dll u.dll和ce.dll,在退出时,出现系统中叫做关键性停止的声音.查看系统日志发现是ce.dll中的某段地址出错了.出错地址为:0x000364a6.我用调式器运行c.exe,发现模块u.dll 和ce.dll前面都有感叹号,而r.dll正常.但所有dll中的功能,均可以正确完成.

请问是什么原因,怎么解决呢.
[/Quote]
有感叹号 可以是你的连接有问题 在动态连接库上 不知道你用的什么版本的Debug版还是Release版的 一般都会有这样的错误
LZ再自己检查下错误的具体位置吧!~~
a_rockboy 2009-02-13
  • 打赏
  • 举报
回复
内存操作问题。Debug版有时程序可以运行,但退出就出现问题。Release版这样的情况少一些。
Dinelgua 2009-02-13
  • 打赏
  • 举报
回复
调试过程中动态库有感叹号
说明调试环境下的pdb与动态库版本没对应上,不会影响正常运行
只要找对应版本的pdb和dll调试就没问题了


至于报某地址错误 信息不够目前还看不出什么
有可能有一些越界情况,但越界点并没有产生异常而已,所以运行正常

64,642

社区成员

发帖
与我相关
我的任务
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++ 技术论坛(原bbs)
社区管理员
  • C++ 语言社区
  • encoderlee
  • paschen
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
  1. 请不要发布与C++技术无关的贴子
  2. 请不要发布与技术无关的招聘、广告的帖子
  3. 请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下

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