Red de conocimiento informático - Problemas con los teléfonos móviles - El problema de actualizar la pantalla en el juego QQ usando VB.

El problema de actualizar la pantalla en el juego QQ usando VB.

Definitivamente puedo usar este código. No entiendo Baidu HI.

Función de declaración privada FindWindow Lib "user32 "alias" FindWindowA" (ByVal lpClassName es una cadena, ByVal lpWindowName es una cadena) es larga

Función de declaración privada getwindowtextlib "usuario 32" alias "GetWindowTextA" (ByVal Hwnd es Long, ByVal lpString es String, ByVal cch es Long) es Long

Función de declaración privada GetWindow Lib "usuario 32" (ByVal Hwnd tiene la misma longitud, ByVal wCmd es la misma length)

Función de declaración privada GetDesktopWindow Lib "user32 "() es Long

Función de declaración privada GetClassName Lib "user32 "alias" GetClassNameA" (ByVal Hwnd es Long, ByVal lpClassName es String , ByVal nMaxCount es Long) es Long

Función de declaración privada SendMessage Lib "usuario 32" alias "SendMessage a" (ByVal Hwnd es Long, ByVal wMsg es Long, ByVal wParam es Long, ByVal lParam es String) es Long

Función de declaración privada SetWindowPos Lib " usuario 32 "(ByVal Hwnd As Long, ByVal hWndInsertAfter As Long, ByVal x As Long, ByVal y As Long, ByVal cx As Long, ByVal cy As Long, ByVal w flags As Long)Long

Declaración privada biblioteca sub-sleep "kernel 32" (ByVal dw milisegundos as long)

Función de declaración privada PostMessage Lib "usuario 32" alias "PostMessageA" (ByVal Hwnd es Long, ByVal wMsg es Long, ByVal wParam es Long, ByVal lParam es Long) es Long

Constante privada WM_SETTEXT = ampHC

Constante privada GW_HWNDFIRST = 0

Constante privada GW_HWNDNEXT = 2

Constante privada GW_CHILD = 5

Constante privada WM_KEYDOWN = ampH100

Constante privada WM_KEYUP = ampH101< / p>

Dim A() As Long 'Definir matriz.

Subcomando privado 1_Click()

Temp = True

Establecer Ai como un número entero

Marcar Ak como un número entero

Dim Hwnd tiene la misma longitud, l tiene la misma longitud

Dim s es una cadena, T es una cadena

List1.

claro

Hwnd = GetDesktopWindow()

Hwnd = GetWindow(Hwnd, GW_CHILD o GW_HWNDFIRST)

Y Hwnd lt gt0

Hwnd = GetWindow(Hwnd, GW_HWNDNEXT)

s = String(256, Chr(0))

GetClassName Hwnd, s, 255

s = Reemplazar( s, Chr(0), "")

T = String(256, Chr(0))

GetWindowText Hwnd, T, 255

T = Reemplazar( T,Chr(0),"")

Actividades múltiples

Si derecha (s, 11) = "8:10011:0" e izquierda (s, 4) = " afx:" y t = "QQ game "Entonces el nombre de la clase de ventana debe coincidir.

"EnumallHandleswnd" enumera todos los controles/ventanas secundarios.

Finalizar si...

Fila

Si lista 1. ListCount gt entonces 0

ReDim A(0 a List1. ListCount - 1) es tan largo

Etiqueta I como un número entero

Para i = 0 para bajar enlazado ( A)

A(i) = Val(Mid(Lista1. Lista (uno), 4))

T = medio (lista1.lista (i), instr ( list1. lista (i), "tipo de identificador principal") 6).

T = Left(T, 8)

Si T lt gt entonces "cuadro combinado"

A(i) = 0

Terminará si...

Siguiente yo

Otro

Temp = False

MsgBox "Ventana de juego no encontrada", vbCritical, "Error"

Conector de salida

Terminará si...

Si list1.

ListCount gt entonces 0

Para i = 0 al límite inferior (A)

si A(I) lt entonces 0

l = SendMessage(A); ( i), WM_SETTEXT, 0, " aaaaaa " ampChr(0))

Dormir 10

Múltiples actividades

l = PostMessage(A(i), WM_KEYDOWN, vbKeyReturn, 0)

Dormir 10

Múltiples actividades

l = PostMessage(A(i), WM_KEYUP, vbKeyReturn, 0)

Dormir 10

Múltiples actividades

Terminará si...

A mi lado

Terminará si...

Conector final

Controlador de subenumeración privado (ByVal Hwnd As Long)

Dim hn tiene la misma longitud

Dim firsthd. Mientras Long

Dim s es una cadena, T es una cadena

firsthd = GetWindow(Hwnd, GW_CHILD)

firsthd = GetWindow(firsthd, GW_HWNDFIRST)

hn = firsthd

cuando hn lt gt0

s = string(256, Chr(0))

£255

s = Reemplazar(s, Chr(0), "")

T = String(256, Chr(0))

GetClassName Hwnd, T, 255< / p>

T = Reemplazar(T,Chr(0),"")

Actividades múltiples

Si s = "Editar " entonces 'si satisface el requisito, se agregará a la lista.

Lista1. AddItem "identificador:" hn amp "identificador principal: " Hwnd amp " Class amp: " s&p. "Tipo de identificador principal:" ; T ampvbCrLf

Terminará si...

EnumAllHandles hn 'Búsqueda recursiva, no suelte los controles secundarios.

hn = GetWindow(hn, GW_HWNDNEXT)

Si hn = firsthd, sale de Do

Loop

Conector final

Subcomando privado 2_Click()

Finalizar conector