求VB版的APIHOOK实例代码,很急拜托大家了!!!

解决方案 »

  1.   

    hook what?keyboard?mouse?or message?
      

  2.   

    最好是message,如果没有的话,无论拿来那一个都行,我想看看!!!
    谢谢,两为老兄了
      

  3.   

    'In a module
    Public Const WH_KEYBOARD = 2
    Public Const VK_SHIFT = &H10
    Declare Function CallNextHookEx Lib "user32" (ByVal hHook As Long, ByVal ncode As Long, ByVal wParam As Long, lParam As Any) As Long
    Declare Function GetKeyState Lib "user32" (ByVal nVirtKey As Long) As Integer
    Declare Function SetWindowsHookEx Lib "user32" Alias "SetWindowsHookExA" (ByVal idHook As Long, ByVal lpfn As Long, ByVal hmod As Long, ByVal dwThreadId As Long) As Long
    Declare Function UnhookWindowsHookEx Lib "user32" (ByVal hHook As Long) As Long
    Public hHook As Long
    Public Function KeyboardProc(ByVal idHook As Long, ByVal wParam As Long, ByVal lParam As Long) As Long
        'if idHook is less than zero, no further processing is required
        If idHook < 0 Then
            'call the next hook
            KeyboardProc = CallNextHookEx(hHook, idHook, wParam, ByVal lParam)
        Else
            'check if SHIFT-S is pressed
            If (GetKeyState(VK_SHIFT) And &HF0000000) And wParam = Asc("S") Then
                'show the result
                Form1.Print "Shift-S pressed ..."
            End If
            'call the next hook
            KeyboardProc = CallNextHookEx(hHook, idHook, wParam, ByVal lParam)
        End If
    End Function'In a form, called Form1
    Private Sub Form_Load()
        'KPD-Team 2000
        'URL: http://www.allapi.net/
        'E-Mail: [email protected]
        'set a keyboard hook
        hHook = SetWindowsHookEx(WH_KEYBOARD, AddressOf KeyboardProc, App.hInstance, App.ThreadID)
    End Sub
    Private Sub Form_Unload(Cancel As Integer)
        'remove the windows-hook
        UnhookWindowsHookEx hHook
    End Sub
      

  4.   

    自己进程里的API HOOK?~~~不用吧~~~自己进程的API还要HOOK干什么??HOOK其他进程API的HOOK好象要写DLL~~~不然就得汇编~~~~郁闷咯~~~我这里有一个自己写的~~~不过比较烂~~~需要的话联系我~~~~QQ:359408897
      

  5.   

    修改函数入口,实现全局HOOK API!
      

  6.   

    修改函数入口,实现全局HOOK API!
      

  7.   

    大家理解错了,APIHOOK不是普通HOOK,APIHOOK是拦截API的,如不想自己的程序被结束进程就得写APIHOOK,拦截OPENPROC~~~~~~什么的API。
      

  8.   

    WM_GETTEXT消息得不到LABEL的文本,APIHOOK可以。如:东方快车。
      

  9.   

    偶有一个hook的VB例子,是做成dll,附有源码,可以监视任何系统进程的开始和终止.
    我可以给你,有email吗?这东西传出去不得,极容易做成病毒
      

  10.   

    seabird125(海鸥) 能给俺一个吗,谢了。[email protected]
      

  11.   

    我也想要,非常谢谢。
    [email protected]
      

  12.   

    加我一个,谢谢,[email protected]
      

  13.   

    给我也发一个吧,谢谢了!
    [email protected]
      

  14.   

    发个给我,谢谢
    [email protected]
      

  15.   

    http://email.hosp.ncku.edu.tw/~cww/html/q00553.html
      

  16.   

    rainstormmaster(暴风雨 v2.0) 给的那个链接的例子可以,这是目前见到的VBHook的最有用的一个例子,我原来试过的。
    那里还有一个好东西:
    http://email.hosp.ncku.edu.tw/~cww/html/q00549.html
    开始以为是注入远线程的,但不是。
    请rainstormmaster(暴风雨 v2.0)改一下这段程序,搞成能注入远线程就好了,我认为是可以实现的。谢谢!