91av视频/亚洲h视频/操亚洲美女/外国一级黄色毛片 - 国产三级三级三级三级

資源簡介

Qt實現全局鉤子,攔截鼠標鍵盤消息,修改消息,在Qt 4.86上編譯通過,適合學習,分享快樂,謝謝。

資源截圖

代碼片段和文件信息

#include?
#include?
#include?

HHOOK?keyHook=NULL;
HHOOK?mouseHook=NULL;
bool?fire=false;
bool?pressGun=false;
void?unHook();

LRESULT?CALLBACK?keyProc(int?nCodeWPARAM?wParamLPARAM?lParam?)
{
????KBDLLHOOKSTRUCT?*pkbhs?=?(KBDLLHOOKSTRUCT?*)?lParam;
????if(pkbhs->vkCode==VK_ESCAPE)
????{
????????unHook();
????}

????//?pkbhs->flags?說明
????//?0???指定的鍵是否擴展的鍵,如功能鍵或數字鍵盤上的鍵。值為?1,如果鍵是一個擴展的密鑰?;否則,它是?0。
????//?1-3?保留。
????//?4???指定是否已注入該事件。值為?1,如果該事件被注射?;否則,它是?0。
????//?5???上下文代碼。值為?1,如果按下?ALT?鍵?;否則,它是?0。
????//?6???保留。
????//?7???過渡狀態。如果它被釋放,則值為?0,如果按下的鍵和?1。

????bool?bPress?=?(0x1?&?(pkbhs->flags?>>?7));
//????printf(“KeyCode:%ld\nFlag???:%ld\nPress??:%ld\n“?pkbhs->vkCode?pkbhs->flags?bPress);
????if(!bPress){
????????if(pkbhs->vkCode==VK_F12)
????????{
????????????fire=true;
//????????????keybd_event(65000);
????????}
????}else{
????????if(pkbhs->vkCode==VK_F12)
????????{
????????????fire=false;
//????????????keybd_event(650KEYEVENTF_KEYUP0);
????????????if(pressGun)
????????????{
????????????????pressGun=false;
????????????????mouse_event?(MOUSEEVENTF_LEFTUP?|?MOUSEEVENTF_MOVE??0?-30?0?0?);
????????????}
????????}

????}

????return?CallNextHookEx(keyHook?nCode?wParam?lParam?);



}

LRESULT?CALLBACK?mouseProc(int?nCodeWPARAM?wParamLPARAM?lParam?)
{
????MSLLHOOKSTRUCT?*pkbhs?=?(MSLLHOOKSTRUCT?*)?lParam;
????MSLLHOOKSTRUCT?*pkbhs_tmp=(MSLLHOOKSTRUCT?*)?lParam;


????if?(nCode????????return?CallNextHookEx(mouseHook?nCode?wParam?lParam);
????}

????switch(wParam)
????{
????????case?WM_LBUTTONDOWN:
????????????if(fire)
????????????{
????????????????if(!pressGun){
????????????????????mouse_event?(MOUSEEVENTF_LEFTDOWN?|?MOUSEEVENTF_MOVE??0?3?0?0?);
????????????????????pressGun=true;
????????????????}else
????????????????{
????????????????????mouse_event?(MOUSEEVENTF_LEFTDOWN?|?MOUSEEVENTF_MOVE??0?0?0?0?);
????????????????}
????????????????return?1;
????????????}
????????????break;
?????????case?WM_LBUTTONUP:
????????????if(fire)
????????????{
????????????????mouse_event?(MOUSEEVENTF_LEFTUP?|?MOUSEEVENTF_MOVE??0?0?0?0?);
????????????????return?1;
????????????}
????????????break;
?????????case?WM_MOUSEMOVE:
//????????????if(fire)
//????????????{
//????????????????printf(“X:??%ld\n“pkbhs->pt.y);
//????????????????pkbhs->pt.y+=100;
//????????????????printf(“X:??%ld\n“pkbhs_tmp->pt.y);
//????????????}
????????????break;
????}

????return?CallNextHookEx(mouseHook?nCode?wParam?lParam?);
}

void?unHook()
{
????UnhookWindowsHookEx(keyHook);
????UnhookWindowsHookEx(mouseHook);
}

void?setHook()
{
????keyHook?=SetWindowsHookEx(?WH_KEYBOARD_LLkeyProcGetModuleHandle(NULL)0);
????mouseHook?=SetWindowsHookEx(?WH_MOUSE_LLmouseProcGetModuleHandle(NULL)0);
}

int?main(int?argc?char?*argv[])
{
????QCoreApplication?a(argc?argv);

????printf(“Hello?Qt?Hook?begin\n“);

????

?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----

?????文件?????175847??2017-10-11?15:36??keyHook\debug\keyHook.exe

?????文件?????105390??2017-10-11?15:36??keyHook\debug\main.o

?????文件????????327??2017-10-11?10:14??keyHook\keyHook.pro

?????文件??????18440??2017-10-12?08:14??keyHook\keyHook.pro.user

?????文件??????17640??2014-06-03?23:19??keyHook\keyHook.pro.user.3.0-pre1

?????文件???????3293??2017-10-11?15:36??keyHook\main.cpp

?????文件???????6380??2017-10-11?15:36??keyHook\Makefile

?????文件???????5008??2017-10-11?15:36??keyHook\Makefile.Debug

?????文件???????5054??2017-10-11?15:36??keyHook\Makefile.Release

?????目錄??????????0??2017-10-11?15:36??keyHook\debug

?????目錄??????????0??2017-10-11?09:25??keyHook\release

?????目錄??????????0??2017-10-12?08:14??keyHook

-----------?---------??----------?-----??----

???????????????337379????????????????????12


評論

共有 條評論