谢谢坛子里的众位前辈 上个问题已经成功解决!这是现在的代码Option ExplicitPrivate Declare Function FindWindow Lib "user32" Alias "FindWindowA" (ByVal lpClassName As String, ByVal lpWindowName As String) As Long
Private Declare Function GetWindowThreadProcessId Lib "user32" (ByVal hwnd As Long, lpdwProcessId As Long) As LongPrivate Sub Timer1_Timer()
Dim hwnd As Long ' 储存 FindWindow 函数返回的句柄
hwnd = FindWindow(vbNullString, "NavyFIELD") ' 取得进程标识符If hwnd = 0 Then
Label1.Caption = "游戏未运行"
Else
Label1.Caption = "游戏已运行"
End If
End SubPrivate Sub Form_Load()
Timer1.Interval = 100
End Sub    我下一步想让NavyFIELD这个游戏窗口一直处于最顶层 然后使用postmessage函数进行键盘的模拟可看了3个多钟头 还是把握不了该如何使用postmessage 烦请大大们给举个实例 写一段代码 该怎么向目标为NavyFIELD的游戏窗口发送键盘模拟?谢谢!

解决方案 »

  1.   

    想做外挂,先学习好基本功能。了解windows下的程序的结构、api、PE文件格式...
      

  2.   

    我以前做过一个极其简单的剑侠情缘练90武功的外挂。就是读内存中的血、气、武器耐久度等值,然后程序不停的点鼠标。在桃花岛上打木桩。剑侠开的是窗口模式。然后让程序在屏幕的指定区域里点鼠标,就是在游戏的窗口上。如果不行的话,可以在游戏窗口上点一下,然后在程序窗口上点一下,如此反复就可以实现鼠标的点击,键盘我直接用的sendkey来吃加血和打坐。希望能帮到你。
      

  3.   

    PostMessage hWnd, WM_KEYDOWN, [vKey], 0
    PostMessage hWnd, WM_KEYUP, [vKey], 0