在C/C++中捕获DLL崩溃
发布时间:2020-12-16 09:32:22 所属栏目:百科 来源:网络整理
导读:我正在从DLL调用一个函数,如下所示: __declspec ( dllimport ) bool dll_function(...);int main() { [...] if (dll_function(...)) { [...] }} 在某些情况下,我传递给DLL函数的数据将导致DLL崩溃.有可能捕获这个,所以我的应用程序也不会崩溃(没有修改不是
我正在从DLL调用一个函数,如下所示:
__declspec ( dllimport ) bool dll_function(...); int main() { [...] if (dll_function(...)) { [...] } } 在某些情况下,我传递给DLL函数的数据将导致DLL崩溃.有可能捕获这个,所以我的应用程序也不会崩溃(没有修改不是由我创建的DLL)? 解决方法
您可以使用MSVC编译器中的__try和__except关键字捕获AV.并非所有这些都有用,你不知道造成了什么样的伤害.您的程序状态可能已损坏.例如,堆可能会被烧毁,从而导致随后的随机故障.在自己的进程中托管DLL并使用IPC与之交谈是唯一不错的方法.
(编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |