我想拦截dll的加载,所以我可以使用它们。我的第一个想法是钩住GetProcAddress。令人惊讶的是,通过挂钩它,我只能拦截在拥有我的图书馆的过程中所做的调用。 (我打开的调用GetProcAddress其他可执行文件和这些电话没有得到拦截)(我猜是因为它是动态反对我的lib编译)输出的挂接windows API函数来拦截dll加载(仅限Windows)
例子:
C:\ WINDOWS \ SysWow64资料\ kernel32.dll中 Module32NextW
C:\ WINDOWS \ SysWow64资料\ kernel32.dll中 CreateToolHelp32Snapshot函数
C:\ WINDOWS \ SYSTEM32 \ DINPUT.dll DirectInputCreateW
C:\ WINDOWS \ Syswow64资料\ ntdll.dll中 由DirectDrawCreate
不管怎么说,我想知道的是,我应该开始能够拦截的DLL加载这样我就可以再使用其功能。
基本上,我想能够调用任何DLL加载GetModuleInformation。
重复的http://stackoverflow.com/questions/873658/how-can-i-hook-windows-functions-in-c-c和许多更类似的问题。 – mghie 2010-02-08 07:43:16
我不知道我是否应该打电话给你的名字或忽略你。我不想知道如何挂钩功能。我想知道我应该挂钩哪些函数来拦截Dll的加载。 – user246100 2010-02-08 08:33:15