PDA

Click to See Complete Forum and Search --> : Using API instead of VB's Sendkey func


DeathGoat
Jul 17th, 2001, 04:14 PM
I was wondering if anybody could help or explain how I would go about sending keys to a game using API

I can send keys right now using the Sendkey command in Visual Basic, although I cannot send keys if the game client is maximized

jim mcnamara
Jul 17th, 2001, 04:19 PM
From allapi.net - sends a keystroke to the gotfocus window. You have to send both keydown & keyup.....



Const VK_H = 72
Const VK_E = 69
Const VK_L = 76
Const VK_O = 79
Const KEYEVENTF_EXTENDEDKEY = &H1
Const KEYEVENTF_KEYUP = &H2
Private Declare Sub keybd_event Lib "user32.dll" (ByVal bVk As Byte, ByVal bScan As Byte, ByVal dwFlags As Long, ByVal dwExtraInfo As Long)
Private Sub Form_KeyPress(KeyAscii As Integer)
'Print the key on the form
Me.Print Chr$(KeyAscii);
End Sub
Private Sub Form_Paint()
'KPD-Team 2000
'URL: http://www.allapi.net/
'E-Mail: KPDTeam@Allapi.net
'Clear the form
Me.Cls
keybd_event VK_H, 0, 0, 0 ' press H
keybd_event VK_H, 0, KEYEVENTF_KEYUP, 0 ' release H
keybd_event VK_E, 0, 0, 0 ' press E
keybd_event VK_E, 0, KEYEVENTF_KEYUP, 0 ' release E
keybd_event VK_L, 0, 0, 0 ' press L
keybd_event VK_L, 0, KEYEVENTF_KEYUP, 0 ' release L
keybd_event VK_L, 0, 0, 0 ' press L
keybd_event VK_L, 0, KEYEVENTF_KEYUP, 0 ' release L
keybd_event VK_O, 0, 0, 0 ' press O
keybd_event VK_O, 0, KEYEVENTF_KEYUP, 0 ' release O
End Sub

Megatron
Jul 18th, 2001, 10:19 AM
The virtual key codes are already defined in VB as vbKeyH, vbKeyE, vbKeyL etc., hence you don't need to declare additional constants.