how to lock keyboard and mouse by vb6 code
-
dear all i would like to lock keyboard and mouse when my system is running by vb6, however i got some code here, but when i run, some error is there, any one can help me, urgent, thanks.
Option Explicit
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
Declare Function CallNextHookEx Lib "user32" (ByVal hHook As Long, ByVal ncode As Long, ByVal wParam As Long, lParam As Any) As LongPublic hnexthookproc As Long
'Public Const HC_ACTION = 0
'Public Const WH_KEYBOARD = 2Public Sub UnHookKBD()
If hnexthookproc <> 0 Then UnhookWindowsHookEx hnexthookpro hnexthookproc = 0 End If
End Sub
Public Function EnableKBDHook()
If hnexthookproc <> 0 Then Exit Function End If hnexthookproc = SetWindowsHookEx(2, AddressOf MyKBHFunc, App.hInstance, 0) If hnexthookproc <> 0 Then EnableKBDHook = hnexthookproc End If
End Function
Private Sub Command1_Click()
EnableKBDHook
End Sub
Private Sub Command2_Click()
UnHookKBD
End Sub
Public Function MyKBHFunc(ByVal iCode As Long, ByVal wParam As Long, ByVal lParam As Long) As Long
MyKBHFunc = 0 If iCode < 0 Then MyKBHFunc = CallNextHookEx(hnexthookproc, iCode, wParam, lParam) Exit Function End If If wParam = vbKeyReturn Then Debug.Print "haha" Else Call CallNextHookEx(hnexthookproc, iCode, wParam, lParam) End If
End Function
Private Sub Form_Load()
EnableKBDHook
End Sub
Private Sub Form_Unload(Cancel As Integer)
CallUnHookKBD
End Sub
the problem is underline point.
-
dear all i would like to lock keyboard and mouse when my system is running by vb6, however i got some code here, but when i run, some error is there, any one can help me, urgent, thanks.
Option Explicit
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
Declare Function CallNextHookEx Lib "user32" (ByVal hHook As Long, ByVal ncode As Long, ByVal wParam As Long, lParam As Any) As LongPublic hnexthookproc As Long
'Public Const HC_ACTION = 0
'Public Const WH_KEYBOARD = 2Public Sub UnHookKBD()
If hnexthookproc <> 0 Then UnhookWindowsHookEx hnexthookpro hnexthookproc = 0 End If
End Sub
Public Function EnableKBDHook()
If hnexthookproc <> 0 Then Exit Function End If hnexthookproc = SetWindowsHookEx(2, AddressOf MyKBHFunc, App.hInstance, 0) If hnexthookproc <> 0 Then EnableKBDHook = hnexthookproc End If
End Function
Private Sub Command1_Click()
EnableKBDHook
End Sub
Private Sub Command2_Click()
UnHookKBD
End Sub
Public Function MyKBHFunc(ByVal iCode As Long, ByVal wParam As Long, ByVal lParam As Long) As Long
MyKBHFunc = 0 If iCode < 0 Then MyKBHFunc = CallNextHookEx(hnexthookproc, iCode, wParam, lParam) Exit Function End If If wParam = vbKeyReturn Then Debug.Print "haha" Else Call CallNextHookEx(hnexthookproc, iCode, wParam, lParam) End If
End Function
Private Sub Form_Load()
EnableKBDHook
End Sub
Private Sub Form_Unload(Cancel As Integer)
CallUnHookKBD
End Sub
the problem is underline point.