Para ello debes hacer uso de la API
SendMessageBynum .
La cual recibe el num ascii, en este ejemplo estoy enviando el mensaje "hola mundo" a un cuadro de texto y seguidamente envio la tecla ENTER (13) a ese cuadro de texto.
Analiza el ejemplo, cualquier duda estaré atento!
Código vb:
Ver originalPrivate Declare Function SendMessage Lib "user32" Alias _
"SendMessageA" (ByVal hwnd As Long, ByVal wMsg _
As Long, ByVal wParam As Long, lParam As Any) As Long
Private Declare Function SendMessageBynum Lib "user32" Alias _
"SendMessageA" (ByVal hwnd As Long, ByVal wMsg _
As Long, ByVal wParam As Long, ByVal lParam As Long) As Long
Private Declare Function FindWindowEx Lib "user32" Alias "FindWindowExA" ( _
ByVal hWnd1 As Long, _
ByVal hWnd2 As Long, _
ByVal lpsz1 As String, _
ByVal lpsz2 As String) As Long
Private Declare Function FindWindow Lib "user32" Alias "FindWindowA" ( _
ByVal lpClassName As String, _
ByVal lpWindowName As String) As Long
' La constante:
Private Const WM_CHAR = &H102
Private Const WM_SETTEXT = &HC
' Hwnd de la ventana
Dim ret As Long
Dim retV As Long
Private Sub Command1_Click()
retV = FindWindow("nomVentana", vbNullString)
ret = FindWindowEx(retV, 0, "nomControlTextBox", vbNullString)
Call SendMessage(ret, WM_SETTEXT, 0, ByVal CStr("hola mundo..."))
Call SendMessageBynum(ret, WM_CHAR, 13, ByVal 0)
End Sub