社区
进程/线程/DLL
帖子详情
LoadLibrary 998
delphihero
2008-01-05 02:03:16
这个dll第一次调用 LoadLibrary 是成功能一切正常。通过FreeLibrary释放它后。再调用 LoadLibrary 加载它结果访问违规。期间不调用任何dll内函数都一样。有谁知道大概的原因吗??
...全文
265
7
打赏
收藏
LoadLibrary 998
这个dll第一次调用 LoadLibrary 是成功能一切正常。通过FreeLibrary释放它后。再调用 LoadLibrary 加载它结果访问违规。期间不调用任何dll内函数都一样。有谁知道大概的原因吗??
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
7 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
delphihero
2008-01-09
打赏
举报
回复
郁闷。因为工程和dll包含了vld。结果这个东西在dll卸载的时候没有卸载。导致不能再load
jameshooo
2008-01-05
打赏
举报
回复
你的EXE针对这个DLL有用到延迟加载/卸载特性吗?如果用到了,则不能直接调用FreeLibrary,因为它仅仅卸载模块,并不清除导出函数在地址空间中的映射表,重新加载时会导致访问违规。
既然你要继续使用DLL,为何非要FreeLibrary呢?用完了再卸载不行吗?
yxz_lp
2008-01-05
打赏
举报
回复
下面是需要注意的显式链接的两个缺点:
如果 DLL 具有 DllMain 入口点函数,则操作系统在调用 LoadLibrary 的线程上下文中调用此函数。如果由于以前调用了 LoadLibrary 但没有相应地调用 FreeLibrary 函数而导致 DLL 已经附加到进程,则不会调用此入口点函数。
如果 DLL 使用 DllMain 函数为进程的每个线程执行初始化,显式链接会造成问题,因为调用 LoadLibrary(或 AfxLoadLibrary)时存在的线程将不会初始化。
如果 DLL 将静态作用域数据声明为 __declspec(thread),则在显式链接时 DLL 会导致保护错误。用 LoadLibrary 加载 DLL 后,每当代码引用此数据时 DLL 就会导致保护错误。(静态作用域数据既包括全局静态项,也包括局部静态项。)因此,创建 DLL 时应避免使用线程本地存储区,或者应(在用户尝试动态加载时)告诉 DLL 用户潜在的缺陷。
delphihero
2008-01-05
打赏
举报
回复
没有。估计是资源释放问题。load 马上 free 之后load 任何dll都会失败。奇怪啊,也没看到内存泄漏
oldmanzhao
2008-01-05
打赏
举报
回复
在DLLMain Attach的时候有没有做什么操作?
delphihero
2008-01-05
打赏
举报
回复
自己写的dll. 对他FreeLibrary。似乎没有释放掉一些资源。Free 之后Load任何 dll 都会失败。奇怪的问题啊。
珍惜生命远离CPP
2008-01-05
打赏
举报
回复
系统dll还是别人的dll
ActiveX控件注册的几种方法
ActiveX控件注册的几种方法使用Regsvr32.exe程序 对ActiveX控件进行注册
VS2015 v140_xp 在 Windows XP 下
Load
Library
998
错误
同时使用。
Dll 中设置全局类变量,
Load
Library
998
错误, TLS问题.
话说俺在把一个程序改成c#,然后有些功能还是用VC写比较方便,所以要求c#调用dll. 俺这个程序是WebBrowser界面,通过external 调用dll , 结果c#的WebBrowser就会抛出异常,说 object error . 这是一个说了等于白说的错误. 奇怪的是该dll通过vc调用一切"正常". 通过ida查看,一开始以为 C# 没有对CRT
Load
Library
返回NULL,GetLastError返回
998
在使用
Load
Library
装载某个dll的时候返回NULL,然后调用GetLastError返回
998
,意思是说“内存位置访问无效。”,问题很奇怪,因为前一段时间还能正确加载,网上搜索也是说什么的都有,最后调查发现是由于
Load
Library
是在应用程序全局变量初始化的时候调用的,如果
Load
Library
放到应用程序初始化完成后就不会出现这个问题,看样子这个动态库不能装载过早,可能是由于其他前
在Windows下使用
Load
Library
导入自定义的DLL出现
998
错误
今天在使用
Load
Library
导入自定义的一个DLL的时候出现了
998
的错误
进程/线程/DLL
15,471
社区成员
49,182
社区内容
发帖
与我相关
我的任务
进程/线程/DLL
VC/MFC 进程/线程/DLL
复制链接
扫一扫
分享
社区描述
VC/MFC 进程/线程/DLL
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章