如何卸载其他进程加载的A.dll? 例如,A进程加载了A.dll,我如何在A进程运行的情况下将A.dll卸载掉? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 用远线程注入原理,不过卸载掉A.dll后,若进程A又调用A.dll相关的,估计又载入A.dll 谢谢lovenoend(有容乃大) ,是否能详细的讲解一下,最好有代码示范,我不太清楚如何利用远程线程。A再次调用A.dll的情况可以不考虑,我主要想在卸载掉A.dll后就删除了A.dll。 老兄,如果你的目的仅仅是想删dll文件,何必劳师动众去写什么程序,把那个进程关掉然后删dll不就是了 to halk(夜风) ,大哥,你想过没有,要是这么简单我没事发帖子问什么啊。好多dll我一时确定不了是哪个进程在使用,而且即使确定了,由于该进程是服务或其他原因(如它就是explorer.exe结束了也没用,我迟早还是要运行它的)结束不掉,再一种情况是,即使进程结束了,可dll依然没有从内存中退出,依然无法删除。这就是我发贴的原因。 明白了,不过我没试过,只能从原理上提些建议,讨论一下。再一种情况是,即使进程结束了,可dll依然没有从内存中退出,依然无法删除。这就是我发贴的原因。------------------每当DLL加载到一个进程的时候,都会有相应的引用值,当这个值减到0的时候系统就把它从此进程中卸载了,进程结束的时候也一样会卸载它们;但是如果同时还有其它进程在引用这个DLL,那么仍然不能删掉,只有当所有的进程都把它卸载的时候,内存影像才会关闭,文件才能删掉。所以,删不掉很可能是还有其他进程在使用它。好多dll我一时确定不了是哪个进程在使用------------------这该怎么办,一个一个的找?看看有没有别人给出更好的办法而且即使确定了,由于该进程是服务或其他原因(如它就是explorer.exe结束了也没用,我迟早还是要运行它的)结束不掉------------------没别的办法,不能把服务都停掉吧?当然也可以试试,看看哪些是可以停掉而不至于down机的(从服务列表中停)。实在不行,就只能启动到dos去删了;如果是NTFS的分区DOS还看不见,不知道启动到win2k的诊断控制台能否删掉。 同意一楼,用远程线程调用GetModuleHandle获得a.dll的模块句柄,然后调用FreeLibrary卸载。 非模式对话框为什么总是置顶的呢? combo控件列表项的顺序问题 请问如何画实时曲线 如何禁止winxp弹出的Unknown software exception错误? 谢谢 在CDocment类的子类中使用UpdateALLView出错 哈达在线(北京)科技有限公司 招聘 技术小问题,请大家帮忙,谢谢 debug版运行正常,为啥release运行不正常? 如何在控件中得到设备句柄 请教DIRECTSHOW??? LPWSAOVERLAPPED 是什么类型来的? Media Player 6.4
不过卸载掉A.dll后,若进程A又调用A.dll相关的,估计又载入A.dll
好多dll我一时确定不了是哪个进程在使用,而且即使确定了,由于该进程是服务或其他原因(如它就是explorer.exe结束了也没用,我迟早还是要运行它的)结束不掉,再一种情况是,即使进程结束了,可dll依然没有从内存中退出,依然无法删除。这就是我发贴的原因。
------------------
每当DLL加载到一个进程的时候,都会有相应的引用值,当这个值减到0的时候系统就把它从此进程中卸载了,进程结束的时候也一样会卸载它们;但是如果同时还有其它进程在引用这个DLL,那么仍然不能删掉,只有当所有的进程都把它卸载的时候,内存影像才会关闭,文件才能删掉。所以,删不掉很可能是还有其他进程在使用它。好多dll我一时确定不了是哪个进程在使用
------------------
这该怎么办,一个一个的找?看看有没有别人给出更好的办法而且即使确定了,由于该进程是服务或其他原因(如它就是explorer.exe结束了也没用,我迟早还是要运行它的)结束不掉
------------------
没别的办法,不能把服务都停掉吧?当然也可以试试,看看哪些是可以停掉而不至于down机的(从服务列表中停)。实在不行,就只能启动到dos去删了;如果是NTFS的分区DOS还看不见,不知道启动到win2k的诊断控制台能否删掉。