hook 窗口消息队列
2012-11-08 16:41
405 查看
此段代码,不能在控制台里运行,必须有窗口。
// HOOK 消息循环处理.cpp : 定义控制台应用程序的入口点。 // #include "stdafx.h" #include <Windows.h> // //LRESULT (CALLBACK *Old_WindowProc) (HWND hwnd,UINT uMsg,WPARAM wParam,LPARAM lParam); LONG Old_WindowProc; LONG New_WindowProc; HWND cmd_hwd; LRESULT CALLBACK myWindowProc (HWND hwnd,UINT uMsg,WPARAM wParam,LPARAM lParam) { LRESULT re; if (uMsg == WM_COPYDATA) { printf("收到的数据消息"); } re= CallWindowProc((WNDPROC)Old_WindowProc,hwnd, uMsg, wParam,lParam); return re; }; void Hook()//开始替换消息列队 { cmd_hwd=GetConsoleWindow();//获取当前控制窗口的的句柄 printf("当前消息循环句柄为:%x",cmd_hwd); Old_WindowProc=SetWindowLong(cmd_hwd,GWL_WNDPROC,(LONG)myWindowProc); }; void UmHook()//停止替换消息列队 { New_WindowProc=SetWindowLong(cmd_hwd,GWL_WNDPROC,(LONG)Old_WindowProc); }; int _tmain(int argc, _TCHAR* argv[]) { Hook(); while(1) { Sleep(1000); } return 0; }
相关文章推荐
- win7下不能收到窗口hook消息的问题
- 关于HOOK,如何通过钩子截获指定窗口的所有消息 SetWindowsHookEx demo
- WTL 窗口创建消息队列
- 钩子中向窗口发送消息、操作窗口无反应的问题解决方法(Hook dll ShowWindow HWND)
- Windows消息队列,UI线程,窗口以及消息处理方式总结
- 窗口消息钩子:ShellHook, RegisterShellHookWindow, Hook窗口创建, 闪烁等
- SetWinEventHook 事件钩子(有些windows事件并没有消息对应,譬如弹出菜单,切换窗口,获得焦点,滚动条滚动等)good
- Windows消息队列,UI线程,窗口以及消息处理方式总结 .
- Windows消息队列,UI线程,窗口以及消息处理方式总结
- 【转】为控制台窗口建立消息队列
- 如何HOOK桌面窗口消息
- Windows消息队列 UI线程,窗口以及消息处理方式总结
- 如何HOOK桌面窗口消息
- VC++ Hook截取鼠标点击窗口消息的问题!全局钩子
- 关于HOOK,如何通过钩子截获指定窗口的所有消息
- VC6系统托盘类|崩溃自动重建图标|HOOK窗口消息|气泡效果更新SDK
- 各种各样的hook钩子用于截获操作系统中不同消息队列的消息
- Windows消息队列,UI线程,窗口以及消息处理方式总结
- 为控制台窗口建立消息队列(转载处也没标明出处)
- win7下不能收到窗口hook消息的问题