Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • World
  • Users
  • Groups
Skins
  • Light
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Default (No Skin)
  • No Skin
Collapse
Code Project
  1. Home
  2. General Programming
  3. Visual Basic
  4. how to lock keyboard and mouse by vb6 code

how to lock keyboard and mouse by vb6 code

Scheduled Pinned Locked Moved Visual Basic
helpdebuggingtutorial
2 Posts 2 Posters 0 Views 1 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • Z Offline
    Z Offline
    zhiyuan16
    wrote on last edited by
    #1

    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 Long

    Public hnexthookproc As Long
    'Public Const HC_ACTION = 0
    'Public Const WH_KEYBOARD = 2

    Public 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.

    L 1 Reply Last reply
    0
    • Z zhiyuan16

      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 Long

      Public hnexthookproc As Long
      'Public Const HC_ACTION = 0
      'Public Const WH_KEYBOARD = 2

      Public 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.

      L Offline
      L Offline
      Lost User
      wrote on last edited by
      #2

      Does the function reside in a DLL?

      I are Troll :suss:

      1 Reply Last reply
      0
      Reply
      • Reply as topic
      Log in to reply
      • Oldest to Newest
      • Newest to Oldest
      • Most Votes


      • Login

      • Don't have an account? Register

      • Login or register to search.
      • First post
        Last post
      0
      • Categories
      • Recent
      • Tags
      • Popular
      • World
      • Users
      • Groups