• 全部
  • Windows SDK/API
  • 基础类
  • ActiveX
  • 数据库及相关技术
  • 网络及通讯开发
  • VCL组件使用和开发
  • 问答

如何捕捉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可以捕捉这类异常吗?要怎样处理?
...全文
15 点赞 收藏 5
写回复
5 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
Nepalon 2009-07-14
代码没有问题。这个DLL在VC中调用是不会出错的。但在CB中调用,有时会出错有时不会出错。而且出错的也不是一调用就出错,而是运行了一段时间后才出错。
回复
周药师 2009-07-14
问题代码放出看看吧
回复
yangangs 2009-07-13
那可不好弄了,又不是你自己写的dll,你是静态调用还是动态调用的啊
回复
hemiya 2009-07-13
指针错误.
你看一下,你调用dll文件里面的函数地址对不对,是不是为空.
回复
发帖
C++ Builder
创建于2007-08-02

1.3w+

社区成员

C++ Builder相关内容讨论区
申请成为版主
帖子事件
创建了帖子
2009-07-13 06:11
社区公告
暂无公告