[Windows编程] 监视DLL装载/卸载
来源:互联网 发布:淘宝改后台是什么意思 编辑:程序博客网 时间:2024/05/01 07:59
Windows 驱动开发库里面提供了一个函数 LdrRegisterDllNotification , 可以让你监视进程装载/卸载DLL 的事件。 当你想在某个DLL被加载的时候Hook它的函数; 或者当你想在某个DLL推出之前做一些保存清理工作; 或者当你想阻止某个DLL 被加载(比如外挂) .... 这个机制正可以派上用场 。
以下是示例代码,因为有些类型的定义在驱动开发库DDK里面,所以这里我直接从MSDN上(http://msdn.microsoft.com/en-us/library/dd347460(VS.85).aspx)把定义copy 到代码里面。
运行程序, 输出如下。可以证实以上代码监听了 mshtml.dll 的装载和卸载。 而且系统自动装载的其他DLL也被监视到。
Dll Loaded: C:/Windows/system32/mshtml.dll
Dll Loaded: C:/Windows/system32/msls31.dll
Dll Loaded: C:/Windows/system32/VERSION.dll
Dll Unloaded: C:/Windows/system32/mshtml.dll
Dll Unloaded: C:/Windows/system32/VERSION.dll
Dll Unloaded: C:/Windows/system32/msls31.dll
- [Windows编程] 监视DLL装载/卸载
- [Windows编程] 监视DLL装载/卸载
- windows dll 装载过程
- Delphi编程使用HOOK监视Windows
- Delphi编程使用HOOK监视Windows
- linux内核编程一:模块的装载和卸载
- WINDOWS编程之DLL
- windows DLL编程基础
- 装载外部DLL
- 运行时 DLL 装载
- 动态装载dll
- MEF装载dll
- Windows核心编程:DLL基础
- Windows核心编程 DLL基础
- windows核心编程 DLL技术
- windows核心编程---DLL基础
- 关于windows中一些系统dll的卸载套路
- 如何编程实现卸载进程内的DLL
- 无缝的缓存读取:双存储缓存策略
- bochuxt的JAVA自学之路
- 丶杂绪丨
- 广电总局太强了
- .Net的DataSet直接与SQL2005交互
- [Windows编程] 监视DLL装载/卸载
- 浏览器的几个感悟
- 双管道实现进程数据通信
- 什么是泛型编程——Generic Programming
- 微软抠动扳机,对手应声倒下
- ORACLE分页存储过程
- 09年最新的最有才的100句话,不服不行!!
- 理解JavaScript的caller,callee,call,apply
- 学习知识