2015-12-29 46 views
-1

我儘量讓自動鍵加壓,使最小化的遊戲客戶端爲我做的秩序,而我在其它事情(永恆之塔遊戲客戶端),但這裏沒有工作,工作是我使用,請告訴我什麼是錯的代碼它有毛病SendMessage函數API

Const WM_SETTEXT As Long = &HC 
    Const GW_CHILD As Long = 5 


    Declare Function GetWindow Lib "user32.dll" (ByVal hWnd As IntPtr, ByVal uCmd As Integer) As IntPtr 
    Declare Function FindWindow Lib "user32.dll" Alias "FindWindowA" (ByVal lpClassName As String, ByVal lpWindowName As String) As IntPtr 'Int32 
    Declare Function SendMessage Lib "user32.dll" Alias "SendMessageA" (_ 
    ByVal hWnd As IntPtr, _ 
    ByVal wMsg As Int32, _ 
    ByVal wParam As Int32, _ 
    ByVal lParam As String) As Int32 


    Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click 
     Dim hWnd1 As IntPtr = FindWindow("AIONClientWndClass1.0", "AION Client") 
     Dim hWndR2 As IntPtr = GetWindow(hWnd1, GW_CHILD) 
     SendMessage(hWndR2, WM_SETTEXT, 0, "h") 
    End Sub 

這是代碼我用它必須在當我點擊Button1的遊戲展示窗口,但沒有發生

我使用Visual Studio 2013和Windows 10的64位

+0

你想發送keypress密碼嗎? –

+0

是的,我試圖做 –

+0

,你是否在找到你的指針? (hWnd1和hWndR2) –

回答

1

這裏我的錯

  1. 月1日我的應用程序需要以管理員身份運行
  2. 第二必須設置目標CPU到86X
  3. 3日我固定我的代碼,在這裏它是

    Const WM_SETTEXT As Long = &HC 
    Const GW_CHILD = 5 
    
    Const WM_KEYDOWN As Integer = &H100 
    Const WM_KEYUP As Integer = &H101 
    
    
    Declare Function GetWindow Lib "user32.dll" (ByVal hWnd As IntPtr, ByVal uCmd As Integer) As IntPtr 
    Declare Function FindWindow Lib "user32.dll" Alias "FindWindowA" (ByVal lpClassName As String, ByVal lpWindowName As String) As IntPtr 'Int32 
    Declare Function SendMessage Lib "user32.dll" Alias "SendMessageA" (ByVal hWnd As IntPtr,ByVal wMsg As Int32,ByVal wParam As Int32,ByVal lParam As IntPtr) As IntPtr 
    
    
    Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click 
        Dim _hndl As IntPtr = FindWindow("AIONClientWndClass1.0", "AION Client") 
        SendMessage(_hndl, WM_KEYDOWN, &H55, 0) 
    End Sub 
    

& H55是虛擬鍵碼= u