-
-
关于SetWindowsHookEx的一个小疑惑,在线等大神
-
发表于:
2015-8-2 15:59
3924
-
关于SetWindowsHookEx的一个小疑惑,在线等大神
最近在摆弄钩子的时候遇到一个这样的问题。
我有一个DLL文件,里面有两个函数和一个全局变量如下所示
static int number=0;
HHOOK m_Hook = NULL;
LRESULT CALLBACK hookfunc(int nCode, WPARAM wParam, LPARAM lParam)
{
return CallNextHookEx(m_Hook, nCode, wParam, lParam);
}
__declspec(dllexport) void SetHook(int x)
{
number = x;
m_Hook = SetWindowsHookEx(WH_CBT, hookfunc, GetModuleHandle(L"me.dll"), 0);
}
我的注入器加载的时候就load了这个dll。
然后需要的时候就调用Sethook这个函数。同时将一个数字传递进去(这个数字是可变的)
我去查了一下核心编程,书上貌似是说把进程内存空间里面的DLL映射到另一个进程。
但是我测试的时候发现,number这个变量在注入以后是0,并不是我传递进去的数字。不知道有没有大神知道应该怎么做呢?(尽量不使用进程通信之类的方案,我想直接把我设定好的DLL复制到另外一个进程)
在线等大神。也拜托大神说明下问题的原因。
P.S:钩子函数里面没有执行任何功能,我写在了DLL加载的函数里面。
[注意]传递专业知识、拓宽行业人脉——看雪讲师团队等你加入!