• WINCE的钩子


    我们知道钩子编程是DESKTOP当中相当常见的方式,不过WINCE下实现很麻烦。我前一段做了个这方面的小应用,给大家分享一下!
    参看WinCE的winbase.h,wince下可以使用以下三种:
    #define WH_JOURNALRECORD 0
     #define WH_JOURNALPLAYBACK 1
    #define WH_KEYBOARD_LL 20
    wince并不支持钩子。但是是不是不支持呢?只能说不直接支持钩子,用别的方法也是可以使用钩子函数的,那就是直接获取钩子函数地址,然后调用的方法。
     g_hHookApiDLL = LoadLibrary(_T("coredll.dll"));
    SetWindowsHookEx = (_SetWindowsHookExW)GetProcAddress(g_hHookApiDLL, _T("SetWindowsHookExW"));
    这样一个SETWINDOWSHOOKEX就得到了:)
    如法炮制,可以获得其他两个函数的地址,有了这三个函数的地址,就可以类似这样使用了: g_hInstalledLLKBDhook = SetWindowsHookEx(WH_KEYBOARD_LL, keyboardProc, hInstance, 0);
    有了这些函数的指针,就可以按照大多WINDOWS下编程的方法来做了。不过钩子一定要甚用,我现在做的东西曾经一度就是把HTC搞到要刷机才能使的。

  • 相关阅读:
    LFU
    poj 3581 -- 后缀数组
    leetcode 679
    poj 两条线段接雨水
    poj 1696极角排序
    判断平面上是否有一条直线与所有线段相交
    洛谷P3808 【模板】AC自动机(简单版)
    Most Distant Point from the Sea UVA
    P2742 [USACO5.1]圈奶牛Fencing the Cows /【模板】二维凸包
    P2249
  • 原文地址:https://www.cnblogs.com/xyzlmn/p/3168291.html
Copyright © 2020-2023  润新知