首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > VB >

vb 后台方向鍵控制問題解决思路

2012-04-25 
vb 后台方向鍵控制問題各位好:以下是小弟从网上,撷取的代码,确定可用在记事本上,以及在网络游戏中发送回车

vb 后台方向鍵控制問題
各位好:
以下是小弟从网上,撷取的代码,确定可用在记事本上,以及在网络游戏中发送回车键都没问题,但是在发送箭头键的时候,游戏没有反应,游戏是由小键盘2,4,8,6控制人物方向,↑↓按键控制物品栏,而我已经试用过keybd_event,结果都是一样,send更是不行,我找过网上文章,好像要用HOOK,但是我不会用,请问我要如何在不调用HOOK的情况下操作,才能使箭头键正常在后台使用。小弟用的版本為VB6。
感谢大家

Private Declare Function FindWindow Lib "user32" Alias "FindWindowA" (ByVal lpClassName As String, ByVal lpWindowName As String) As Integer
Private Declare Function PostMessage Lib "user32" Alias "PostMessageA" (ByVal hwnd As Integer, ByVal wMsg As Long, ByVal wParam As Long, lParam As Any) As Integer
Private Declare Function FindWindowEx Lib "user32" Alias "FindWindowExA" (ByVal hWnd1 As Long, ByVal hWnd2 As Long, ByVal lpsz1 As String, ByVal lpsz2 As String) As Integer
Private Declare Function MapVirtualKey Lib "user32" Alias "MapVirtualKeyA" (ByVal wCode As Long, ByVal wMapType As Long) As Long

Private Sub Check1_Click()
If Check1.Value = 1 Then
Timer1.Enabled = True
Timer1.Interval = 2000
End if

End Sub

Private Sub Timer1_Timer()
   
  Const WM_KEYDOWN = &H100
  Const WM_KEYUP = &H101
  Const WM_CLOSE = &H10
  Const VK_RETURN = &HD
  Const VK_F1 = &H70
  Const VK_A = &H41
  Const VK_RIGHT = &H27
  Const VK_NUMPAD4 = &H64


Dim hwnd, hedit As Integer
hwnd = FindWindow("未命名 - 記事本", vbNullString)
hedit = FindWindowEx(hwnd, 0, "edit", vbNullString)
PostMessage hedit, WM_KEYDOWN, VK_RETURN, 0
PostMessage hedit, WM_KEYDOWN, VK_RIGHT , MapVirtualKey(VK_RIGHT , WM_KEYDOWN)
End Sub

[解决办法]
http://download.csdn.net/detail/veron_04/2884653

热点排行