我需要一些提示来解决以下问题:
我有一个简单的VC ++应用程序(称为DLLApp),该应用程序加载DLL(DLLSource)(带有LoadLibrary)并从该DLL调用导出的函数(__declspec(dllexport)int dllPublic_GetValue())(仅打印文本) 。 我将另一个DLL(称为DLLHookSource)注入DLLApp(使用CreateToolhelp32Snapshot并在LoadLibraryA上创建线程)。 注入成功,DLLHookSource加载,DLLApp调用dllPublic_GetValue。
接下来我要做的是,当用DLL_PROCESS_ATTACH(在DLLHookSource中)调用DLLMain时,从 DLLHookSource 中再次调用(再次)DLLSource的DLLPublic_GetValue 。 / p>
我只是在互联网上阅读很多信息而感到困惑...我假设我需要获取PE的导出表才能获取 dllPublic_GetValue 指针,或者至少这是最接近的指针适合我需要的信息。 因此,我的问题是:
在注入的名为DLLHookSource的DLL的Dllmain中获取 dllPublic_GetValue (属于DLLSource.dll)的指针的步骤是什么?
应该执行哪些检查才能确保我是进程(DLLApp.exe)空间。
谢谢