¿Cómo utilizar VB para enviar caracteres o texto a otros programas?
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