我使用带有WH_CALLWNDPROC的SetWindowsHookEx来捕获所有WndProc消息 - 它工作正常。 我想知道是否有办法在回调函数可以读取和使用它的地方存储参数。
我认为因为回调函数位于"其他"进程,调用SetWindowsHookEx的进程没有连接,所以只是在静态变量中存储一个值就不会有任何好处。
例如:
void Hook(DWORD dwThread, int randomNumber)
{
MagicallyStore(randomNumber);
SetWindowsHookEx(WH_CALLWNDPROC, hookProc, GetModuleHandle(L"WNDProcHooks"), dwThread);
...
...
}
LRESULT CALLBACK hookProc(int nCode, WPARAM wParam, LPARAM lParam)
{
int randomNumber = MagicallyRestore();
DoSomthing(randomNumber);
return CallNextHookEx(0, nCode, wParam, lParam);
}
我已经考虑过拥有" MagicallyStore"函数将参数写入文件并在" MagicallyRestore"中读取一次。功能 - 但必须有更好的方法..
提前致谢:)