Red de conocimiento informático - Material del sitio web - ¿Cómo utilizar VB para enviar caracteres o texto a otros programas?

¿Cómo utilizar VB para enviar caracteres o texto a otros programas?

La idea del cartel original es muy complicada de implementar. Debido a que QQ bloquea la función SendMessage, debe usar Hook para escribir la cola de QQ. Y los API Hooks están mucho más allá de mi alcance de conocimiento. Incluso si un maestro lo escribe, es posible que el propietario no pueda entenderlo.

Y para escribir este tipo de programas, es mejor ingresar los caracteres de oración de uso común en algún lugar con anticipación y luego copiarlos y pegarlos con el teclado (CtrlC CtrlV), que también es muy rápido. Si desea escribir un programa de entrada que sea común a todos los programas, será más rápido utilizar el método de entrada Ziguang Pinyin para componer sus propias oraciones, ¿qué opina?

----------------- Yo soy el delimitador---------------------- ----- ---------

Lo he escrito, pero no tengo el código a mano. Si desea escribir texto en WORD, no necesita usar SendMessage, VB puede interactuar con WORD y usar métodos de clase para hacerlo. Si desea escribir texto en el Bloc de notas, etc., utilice SendMessage. El siguiente código cambia el texto en una ventana del Bloc de notas denominada "Sin título - Bloc de notas". Tenga en cuenta que está configurando en lugar de agregar texto. Olvidé qué información se utilizó para adjuntar el texto. Lo siento.

Opciones explícitas

"Obtener el control.

Función de declaración privada FindWindow Lib "user32" Alias ​​​​"FindWindowA" (ByVal lpClassName como cadena, ByVal lpWindowName como cadena) siempre que

Función de declaración privada FindWindowEx Lib "user32" Alias ​​"FindWindowExA" " (ByVal hWnd1 Mientras, ByVal hWnd2 Como Cualquiera, ByVal lpsz1 Como Cualquiera, ByVal lpsz2 Como Cadena) Mientras. Cadena) Mientras

'Enviar Mensaje

Función de declaración privada PostMessage Lib "user32" Alias ​​​​"PostMessageA" (ByVal hwnd As Long, ByVal wMsg As Long, ByVal wParam As Long, lParam As Any) As Long

Función de declaración privada SendMessage Lib " user32" Alias ​​​​"SendMessageA" ( ByVal hwnd As Long, ByVal wMsg As Long, ByVal wParam As Long, lParam As Any) As Long

'Establecer mensaje para texto

Privado Const WM_SETTEXT = & HC&

Subcomando privado1 _Click()

Atenuar hWndWindow mientras

Atenuar hWndEdit mientras

'Usar FindWindow para obtener el identificador de ventana por título de ventana

hWndWindow = FindWindow(vbNullString , "Untitled - Notepad")

'Utilice findWindowEx para obtener el identificador del cuadro de texto (es decir, "editar" ) a través del título de la ventana.e. "editar")

hWndEdit = FindWindowEx(hWndWindow, vbNullString, "edit", vbNullString)

'FindWindowEx puede obtener el identificador de la ventana a través de la ventana título. p>

'Utilice SendMessage para enviar un mensaje WM_SETTEXT al identificador del cuadro de texto obtenido

SendMessage hWndEdit, WM_SETTEXT, 0, ByVal "República Popular China de China"

Fin del subtítulo