。。

解决方案 »

  1.   

    原来有一个VBHotKey这样的东东,找来改改新成了,并且这个东西在CSDN上就能搜到。自己找找?
      

  2.   

    不知道你想实现什么,我这到是有个截键盘的hook'模块
    Option ExplicitPrivate Declare Function CallNextHookEx Lib "user32" _
       (ByVal hHook As Long, _
        ByVal nCode As Long, _
        ByVal wParam As Long, _
        lParam As Any) As Long
        
    Private 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
        
    Private Declare Function UnhookWindowsHookEx Lib "user32" _
       (ByVal hHook As Long) As Long
       
    Private Declare Sub CopyMemory Lib "kernel32" _
        Alias "RtlMoveMemory" _
       (Destination As Any, _
        Source As Any, _
        ByVal Length As Long)Private Type PKBDLLHOOKSTRUCT
        vkCode As Long
        scanCode As Long
        flags As Long
        time As Long
        dwExtraInfo As Long
    End TypePrivate Const WM_KEYDOWN = &H100
    Private Const WM_SYSKEYDOWN = &H104
    Private Const WM_KEYUP = &H101
    Private Const WM_SYSKEYUP = &H105Private Const NUM_LOCK = 144Private Const HC_ACTION = 0
    Private Const WH_KEYBOARD_LL = 13Private lngHook As Long'to hold Keyboard by heading off windows messages
    Private Function LowLevelKeyboardProc(ByVal nCode As Long, ByVal wParam As Long, ByVal lParam As Long) As Long
        Dim blnHook As Boolean
        Dim p As PKBDLLHOOKSTRUCT
        
        If nCode = HC_ACTION Then
            Select Case wParam
                Case WM_KEYDOWN, WM_SYSKEYDOWN, WM_KEYUP, WM_SYSKEYUP
                    Call CopyMemory(p, ByVal lParam, Len(p))
                    If p.vkCode = NUM_LOCK Then
                        blnHook = True
                    End If
                Case Else
                    'do nothing
            End Select
        End If
        
        If blnHook Then
            LowLevelKeyboardProc = 1
        Else
            Call CallNextHookEx(WH_KEYBOARD_LL, nCode, wParam, lParam)
        End If
    End FunctionPublic Sub KeyboardHook()
        lngHook = SetWindowsHookEx(WH_KEYBOARD_LL, AddressOf LowLevelKeyboardProc, App.hInstance, 0)
    End SubPublic Sub UnKeyboardHook()
        Call UnhookWindowsHookEx(lngHook)
    End Sub
      

  3.   

    是 BoS 2.0 里要的东东,本不想改动它的代码 找不到只好动手术替换了 :(
      

  4.   

    呵呵,我到有一个,是王国荣先生用vc写的dll,而且有vb的例子
      

  5.   

    是呀 不知道成不成 能否发我看看?
    [email protected]