windowsHOOK消息真心不知道HOOK了些什么和什么
2013-12-06 18:33
344 查看
#define _WIN32_WINNT 0x500
#include <windows.h>
static LRESULT CALLBACK hookproc(UINT nCode,WPARAM wParam,LPARAM lParam);
BOOL _stdcall InstallMyHook(HWND hWnd);
BOOL _stdcall UninstallMyHook(HWND hWnd);
HHOOK hook;
HWND hWndMain;
HINSTANCE hInst=GetModuleHandle("MouseDll.dll");
BOOL _stdcall InstallMyHook(HWND hWnd){
hook=SetWindowsHookEx(WH_MOUSE_LL,(HOOKPROC)hookproc,hInst,0);
//SetWindowsHookEx()
if(!hook)
{
DWORD reason=GetLastError();
LPCSTR tt=(LPCSTR)&reason;
//CString str;
// str.Format("%c",reason);
MessageBox(hWnd,tt,"HHOOK",MB_OK);
// OutputDebugString(reason);
return FALSE;
}
hWndMain=hWnd;
return TRUE;
} // HOOK安装
BOOL _stdcall UninstallMyHook(HWND hWnd)
{
if(hWnd != hWndMain || hWnd==NULL)
return FALSE;
BOOL unhooked=UnhookWindowsHookEx(hook);
if(unhooked)
hWndMain=NULL;
return unhooked;
}
static LRESULT CALLBACK hookproc(UINT nCode,WPARAM wParam,LPARAM lParam)
{
if(wParam == WM_MOUSEMOVE)
{
MOUSEHOOKSTRUCT *mhookstruct;
mhookstruct=(MOUSEHOOKSTRUCT*)lParam;
POINT pt=mhookstruct->pt;
PostMessage(hWndMain,WM_MOUSEMOVE,MK_CONTROL,MAKELPARAM(pt.x,pt.y));
}
return CallNextHookEx(hook,nCode,wParam,lParam);
}
#include <windows.h>
static LRESULT CALLBACK hookproc(UINT nCode,WPARAM wParam,LPARAM lParam);
BOOL _stdcall InstallMyHook(HWND hWnd);
BOOL _stdcall UninstallMyHook(HWND hWnd);
HHOOK hook;
HWND hWndMain;
HINSTANCE hInst=GetModuleHandle("MouseDll.dll");
BOOL _stdcall InstallMyHook(HWND hWnd){
hook=SetWindowsHookEx(WH_MOUSE_LL,(HOOKPROC)hookproc,hInst,0);
//SetWindowsHookEx()
if(!hook)
{
DWORD reason=GetLastError();
LPCSTR tt=(LPCSTR)&reason;
//CString str;
// str.Format("%c",reason);
MessageBox(hWnd,tt,"HHOOK",MB_OK);
// OutputDebugString(reason);
return FALSE;
}
hWndMain=hWnd;
return TRUE;
} // HOOK安装
BOOL _stdcall UninstallMyHook(HWND hWnd)
{
if(hWnd != hWndMain || hWnd==NULL)
return FALSE;
BOOL unhooked=UnhookWindowsHookEx(hook);
if(unhooked)
hWndMain=NULL;
return unhooked;
}
static LRESULT CALLBACK hookproc(UINT nCode,WPARAM wParam,LPARAM lParam)
{
if(wParam == WM_MOUSEMOVE)
{
MOUSEHOOKSTRUCT *mhookstruct;
mhookstruct=(MOUSEHOOKSTRUCT*)lParam;
POINT pt=mhookstruct->pt;
PostMessage(hWndMain,WM_MOUSEMOVE,MK_CONTROL,MAKELPARAM(pt.x,pt.y));
}
return CallNextHookEx(hook,nCode,wParam,lParam);
}
相关文章推荐
- windows moblie wtl 从CStdDialogImpl继承的窗口,domodal出来,任务栏中的叉,点了叉不知道触发了什么事件。临时解决办法,隐藏它
- windows moblie wtl 从CStdDialogImpl继承的窗口,domodal出来,任务栏中的叉,点了叉不知道触发了什么事件。临时解决办法,隐藏它
- HOOK windows消息 C# 代码
- VS2013 MFC Windows 程序设计之消息框(里面没什么)
- SetWinEventHook 事件钩子(有些windows事件并没有消息对应,譬如弹出菜单,切换窗口,获得焦点,滚动条滚动等)good
- windows 消息大全 与 虚拟键列表 HOOK专题
- windows 消息大全 与 虚拟键列表 HOOK专题
- windows 消息大全 与 虚拟键列表 HOOK专题
- Hook技术之消息拦截(Windows Hook )
- Windows - Hook键盘和鼠标消息
- 一千个是什么 - Windows消息机制(Windows Messaging)
- 用指针的方法求最大值(真心的暂时不知道学指针是为了干什么,都说他难,我相信他就是个纸老虎)
- 一千个是什么 - Windows消息机制(Windows Messaging)
- windows Hook 消息分类
- windows 消息 hook
- Windows黑客基础(1):Hook本进程的消息
- 关于HOOK,如何通过钩子截获指定窗口的所有消息 SetWindowsHookEx demo
- C++ Windows Hook 消息钩子 详解
- 有什么没见过,没听过的单词?来这里找找!有什么没听过,不知道的人和事,来这里找找!
- windows消息分发机制