windows – 如何在GetLastError()返回ERROR_MOD_NOT_FOUND后获取缺少的DLL名称

前端之家收集整理的这篇文章主要介绍了windows – 如何在GetLastError()返回ERROR_MOD_NOT_FOUND后获取缺少的DLL名称前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我的应用程序使用 LoadLibrary()加载DLL来抑制标准的关键错误处理程序消息框.当LoadLibrary()失败并且 GetLastError()返回 ERROR_MOD_NOT_FOUND(0x7E)时,我想检索丢失的DLL名称.此错误代码不仅在请求的DLL丢失时设置,而且在缺少任何依赖的DLL时设置.

值得注意的是,标准消息框(被禁止)显示正确缺失的DLL名称,问题是如何在代码获取它.

谢谢

解决方法

我不确定是否有一种简单的方法获取丢失的DLL的名称.但是你可以通过在调试器中单步执行LoadLibrary()并查看哪个函数在参数中使用什么文件名失败来找到它. depends.exe也可以显示依赖项.

此外,尝试启动进程监视器并使用适当的过滤器可以查看进程中的I / O错误以及哪些文件.

猜你在找的Windows相关文章