飘云阁

 找回密码
 加入我们

QQ登录

只需一步,快速开始

查看: 1931|回复: 0

Win屏蔽asm

[复制链接]

该用户从未签到

发表于 2007-1-11 17:37:26 | 显示全部楼层 |阅读模式
感谢我的好友Jampe
HOOK部分代码,没有什么技术含量

  1. /*--------------------------------------------------------------------*
  2. *                                Win键屏蔽                            *
  3. *                               qxtianlong                            *
  4. *                            只是我研究学习之用                       *
  5. *                                 无聊之作                            *
  6. *                                2006/12/27                           *
  7. *           如果有任何问题可以给我Email:qxtianlong.x@gmail.com        *
  8. *                        感谢所有帮助过我的朋友                       *
  9. *                              第二人生俱乐部                         *
  10. *---------------------------------------------------------------------*/

  11. #define _WIN32_WINNT 0x0400         //使用PKBDLLHOOKSTRUCT结构必须包含
  12. #include <Windows.h>
  13. #include "hook.h"

  14. HINSTANCE g_hInstance;

  15. HHOOK g_hKeyboard;

  16. //消息处理
  17. LRESULT CALLBACK LowLevelKeyboardProc(int nCode, WPARAM wParam, LPARAM lParam)
  18. {
  19.         PKBDLLHOOKSTRUCT pKey;

  20.         switch(nCode)
  21.         {
  22.                 case HC_ACTION:
  23.                         {
  24.                                 pKey = (PKBDLLHOOKSTRUCT)lParam;//初始化对象

  25.                                 switch(wParam)
  26.                                 {
  27.                                 case WM_KEYDOWN:
  28.                                 case WM_SYSKEYDOWN:
  29.                                 case WM_KEYUP:
  30.                                 case WM_SYSKEYUP:
  31.                                         {
  32.                                                  if((pKey->vkCode == VK_LWIN) || (pKey->vkCode == VK_RWIN))//屏蔽win键
  33.                                                  {
  34.                                                          return TRUE;
  35.                                                  }
  36.                                         }
  37.                                         break;
  38.                        
  39.                                 default:
  40.                                         {
  41.                                                 //什么都不干
  42.                                         }
  43.                                         break;
  44.                                 }
  45.                
  46.                         }//HC_ACTION
  47.        
  48.                 default:
  49.                         {
  50.                                 //什么都不干
  51.                         }
  52.                         break;
  53.         }

  54.         return CallNextHookEx(g_hKeyboard,nCode,wParam,lParam);//传给系统继续处理
  55. }

  56. //初始化钩子
  57. void __declspec(dllexport)  InitHOOK()
  58. {
  59.         g_hKeyboard = SetWindowsHookEx(WH_KEYBOARD_LL, LowLevelKeyboardProc, g_hInstance, 0);//安装钩子
  60. }

  61. //卸载钩子
  62. void __declspec(dllexport)  StopHOOK()
  63. {
  64.     UnhookWindowsHookEx(g_hKeyboard);//卸载钩子
  65. }

  66. //主函数
  67. BOOL WINAPI DllMain(HINSTANCE hinstDLL,
  68.                     DWORD fdwReason,
  69.                     LPVOID lpvReserved)
  70. {
  71.         g_hInstance = hinstDLL;//保存实例

  72.         switch(fdwReason)
  73.         {
  74.         case DLL_PROCESS_ATTACH:
  75.                 {

  76.                 }
  77.                 break;
  78.         case DLL_THREAD_ATTACH:
  79.                 {

  80.                 }
  81.                 break;
  82.         case DLL_THREAD_DETACH:
  83.                 {

  84.                 }
  85.                 break;
  86.         case DLL_PROCESS_DETACH:
  87.                 {

  88.                 }
  89.                 break;
  90.         }

  91.         return TRUE;
  92. }

复制代码

Win.rar

13 KB, 下载次数: 0, 下载积分: 飘云币 -2 枚

asm

PYG19周年生日快乐!
您需要登录后才可以回帖 登录 | 加入我们

本版积分规则

快速回复 返回顶部 返回列表