麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁 > 編程 > C# > 正文

在C#中使用鉤子來處理消息的方法

2023-05-17 11:41:58
字體:
來源:轉載
供稿:網友

本文講解了在C#中使用鉤子技術處理消息的方法。

1、聲明鉤子函數代理:

public   delegate   IntPtr   HookProc(int   nCode,   IntPtr   wParam,   IntPtr   lParam); 

2、聲明API函數:

[DllImport("user32.dll",   CharSet=CharSet.Auto)]
        public   static   extern   IntPtr   SetWindowsHookEx(int   hookid,   HookProc   pfnhook,   IntPtr   hinst,   int   threadid); 

[DllImport("user32.dll",   CharSet=CharSet.Auto,   ExactSpelling=true)]      
        public   static   extern   bool   UnhookWindowsHookEx(IntPtr   hhook);

[DllImport("user32.dll",   CharSet=CharSet.Auto,   ExactSpelling=true)]      
        public   static   extern   IntPtr   CallNextHookEx(IntPtr   hhook,   int   code,   IntPtr   wparam,   IntPtr   lparam);

[DllImport("kernel32.dll",   ExactSpelling=true,   CharSet=CharSet.Auto)]      
        public   static   extern   int   GetCurrentThreadId();

public   const   int   WH_MSGFILTER   =   -1;

3、寫你自己的HookProc代理實現方法,如MyHookProc

public   IntPtr   MyHookProc(int   nCode,   IntPtr   wParam,   IntPtr   lParam)       
        {      
              //...你的代碼       
              return   CallNextHookEx(iHookHandle,   code,   wparam,   lparam);       
        }

4、為你的類聲明一個Hook   Handle和非托管的鉤子線程地址:

private   IntPtr   _iHookHandle=IntPtr.Zero;
        private   GCHandle   _hookProcHandle;

5、在合適的地方安裝你的鉤子

HookProc   hookProc   =   new   HookProc(MyHookProc);
        _hookProcHandle   =   GCHandle.Alloc(hookProc);
        iHookHandle   =   SetWindowsHookEx(WH_MSGFILTER,   hookProc,  IntPtr.Zero,   .GetCurrentThreadId());
        if   (iHookHandle   ==   IntPtr.Zero)   throw   new   System.Exception("沒有足夠權限安裝鉤子!");

6、在合適的地方卸載你的鉤子

if   (iHookHandle!=IntPtr.Zero)
           UnhookWindowsHookEx(iHookHandle); 
         _hookProcHandle.Free();
         iHookHandle   =   IntPtr.Zero;

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 成年性羞羞视频免费观看 | a级毛片免费观看在线播放 日本aaa一级片 | 国产精品久久久久一区二区 | 护士xxxx | 亚洲九草| 深夜激情视频 | 久久久www视频 | 午夜精品在线视频 | 免费一级毛片电影 | 精品久久久久久久久久中文字幕 | 香蕉视频18 | 成人在线视频播放 | 免费国产在线观看 | 欧美精品免费一区二区三区 | 久久美女免费视频 | 久久精品网址 | 91精品国产综合久久久动漫日韩 | 亚洲va久久久噜噜噜久牛牛影视 | 成人午夜视频免费看 | 久久久亚洲欧美综合 | 中文字幕 亚洲一区 | 毛毛片在线看 | 精品国产九九九 | 九九热精品在线视频 | 羞羞的视频免费在线观看 | 蜜桃视频在线播放 | 337p粉嫩大胆噜噜噜亚瑟影院 | 欧美一级视频免费看 | 国产又粗又爽又深的免费视频 | 神马久久精品综合 | 久久久久久亚洲综合影院红桃 | 一区国产精品 | 黄色av免费网站 | 黄色片网页 | 免费看一级片 | 一本一道久久久a久久久精品91 | 蜜桃网在线观看 | 欧美极品免费 | 成年人毛片视频 | 精品国产乱码久久久久久久 | 久久91精品视频 |