LoadLibraryEx 失败(Failed),error : 998

hihusir 2013-04-08 10:45:22
HMODULE hTempModule = ::LoadLibraryEx(fileName, 0, DONT_RESOLVE_DLL_REFERENCES);
如上,这段代码在99%正常的机器上运行的很好(我们的用户上千万级),但是在某些机器上就有问题了(升级后再启动会崩溃500多个,崩溃时会上报日志,里面带有所有安装目录下面的dll的md5)。加载的dll的md5没有变化,说明dll的二进制是正确的,但就是加载失败,导致崩溃。并且不只是某个dll会这样,很多dll会这样,它们的md5是正确的,但就是LoadLibrary失败,last error 是998【内存位置访问无效。 】
...全文
590 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
边走边瞧 2013-04-12
  • 打赏
  • 举报
回复
这种问题很头疼,多半是个别机器里的模块版本不对,至于是哪个模块需要慢慢查。
hihusir 2013-04-09
  • 打赏
  • 举报
回复
还想到了一种情况,就是depends的dll出现错误了,导致这个dll加载失败
hihusir 2013-04-08
  • 打赏
  • 举报
回复
引用 4 楼 oyljerry 的回复:
查看系统日志是否有什么异常信息
没法看系统日志,用户不一定在线,我们是崩溃了后上报自己的日志
oyljerry 2013-04-08
  • 打赏
  • 举报
回复
查看系统日志是否有什么异常信息
hihusir 2013-04-08
  • 打赏
  • 举报
回复
是否是机器内存不够了还不知道,我们的程序使用的内存还是不多。os异常可以检测不?可以加在日志里面
hihusir 2013-04-08
  • 打赏
  • 举报
回复
引用 1 楼 oyljerry 的回复:
机器内存不够了,或者OS异常了?
WorkingSetSize=35.70M PagefileUsage=27.19M 这个没有,日志显示是刚刚启动,内存如上。也不多
oyljerry 2013-04-08
  • 打赏
  • 举报
回复
机器内存不够了,或者OS异常了?
hihusir 2013-04-08
  • 打赏
  • 举报
回复
引用 6 楼 cczlp 的回复:
调用的DLL是你们自己写的吗,怀疑DLL里面有静态的类,初始化发生错误.
dll不是我们的,是用的第三方库QT,加载的是qgif4.dll。不过我们自己的dll也遇到过这样的情况
cczlp 2013-04-08
  • 打赏
  • 举报
回复
调用的DLL是你们自己写的吗,怀疑DLL里面有静态的类,初始化发生错误.

15,471

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 进程/线程/DLL
社区管理员
  • 进程/线程/DLL社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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