Presiona la tecla Enter cuando se inyecta vb en el juego, lo que significa que aún se pueden inyectar claves después de minimizar el juego, y las teclas se pueden presionar en segundo plano. Para el código vb se explica mejor el código.
Función de declaración privada PostMessage Lib "user32" Alias "PostMessageA" (ByVal hwnd As Long, ByVal wMsg As Long, ByVal wParam As Long, ByVal lParam As Long) As Long
Función de declaración privada FindWindow Lib "user32" Alias "FindWindowA" (ByVal lpClassName como cadena, ByVal lpWindowName como cadena) siempre y cuando
Función de declaración privada GetClassName Lib "user32" Alias "GetClassNameA " (ByVal hwnd As Long, ByVal lpClassName As String, ByVal nMaxCount As Long) As Long
Función de declaración privada GetShortPathName Lib "kernel32" Alias "GetShortPathNameA" ( ByVal lpszLongPath As String, ByVal lpszShortPath As String , ByVal cchBuffer As Long) As Long
Const privada WM_CLOSE = &H10
Const privada MAX_PATH = 260
Sub Form_Load privado()
Dim strQQGamePath como cadena
Dim objWscript como objeto 'Referencia dinámica
Me.strQQGamePath = App.Path & "\QQGame.exe"
strQQGamePath = Reemplazar$(strQQGamePath,"\ ","\")
Si Dir(strQQGamePath) <>.vbNullString Then
tmrDetectMsgBox.Enabled = True
Establecer objWscript = CreateObject("wscript. shell")
If Dir(strQQGamePath) <>.shell")
strQQGamePath = ShortName(strQQGamePath)
objWscript .Run strQQGamePath, , True 'Ejecutar La ruta no puede contener espacios ni archivos inexistentes; de lo contrario, puede causar fácilmente errores de automatización.
Finalizar si
Establecer objWscript = Nada
tmrDetectMsgBox.Enabled = False
Descargarme
End Sub
Private Sub tmrDetectMsgBox_Timer()
Dim lngHwnd As Long
Dim lpClassName As String
Dim strClassName As String
lngHwnd = FindWindow (vbNullString, "Mensaje rápido")
Si lngHwnd entonces
lpClassName = Space$(MAX_PATH)
Llamar a GetClassName(lngHwnd, lpClassName , MAX_PATH)
If Left$(lpClassName, InStr(lpClassName, Chr$(0)) - 1) = "#32770" Entonces 'Reconfirma si es la ventana de aviso del juego Tencent QQ
Llamar a PostMessage(lngHwnd, WM_CLOSE, 0, 0&)
Finalizar si
Finalizar si
Finalizar sub
Función pública ShortName(lpszLongPath As String) Como String
Dim lRet As Long
Dim lpszShortPath As String
Dim lchr0pos As Long
lpszShortPath = Space$(MAX_PATH)
lRet = GetShortPathName(lpszLongPath, lpszShortPath, MAX_PATH)
lchr0pos = InStr(lpszShortPath, Chr$(0))
ShortName = Left$(lpszShortPath, lchr0pos - 1)
Función final
Subformulario privado_Unload(Cancelar como entero)
Establecer frmQQGamePartner = Nada
p>End Sub
¡Envíe un QQGamePartner para su referencia!