如何捕捉DLL中的class EAcessViolation with message异常

Nepalon 2009-07-13 06:11:59
我在VC中写了一个DLL名为my.dll,在这个DLL中会调用另一个名为sale.dll的DLL,这个sale.dll不是我写的,也没有代码,而且是一个纯C写的库。我直接通过VC写了个命令行测试程序来调用my.dll是没有任何问题的。但我通过BCB界面来调用my.dll时,直接就挂了,只能通过任务管理器才能关闭。如果在BCB中运行,就会报“Project test.exe raised exception class EAcessViolation with message 'Access violation at address 698F1DCA in module 'abc.dll'.Write of address 01080018. Process stopped.”的错误。这种错误应该是内存异常吧?请问通过try可以捕捉这类异常吗?要怎样处理?
...全文
82 5 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
Nepalon 2009-07-14
  • 打赏
  • 举报
回复
代码没有问题。这个DLL在VC中调用是不会出错的。但在CB中调用,有时会出错有时不会出错。而且出错的也不是一调用就出错,而是运行了一段时间后才出错。
周药师 2009-07-14
  • 打赏
  • 举报
回复
问题代码放出看看吧
yangangs 2009-07-13
  • 打赏
  • 举报
回复
那可不好弄了,又不是你自己写的dll,你是静态调用还是动态调用的啊
hemiya 2009-07-13
  • 打赏
  • 举报
回复
指针错误.
你看一下,你调用dll文件里面的函数地址对不对,是不是为空.

13,870

社区成员

发帖
与我相关
我的任务
社区描述
C++ Builder相关内容讨论区
社区管理员
  • 基础类社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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