Cita:
Iniciado por pkj
Quizá puedas usar SaveSetting y GetSetting para ir pasando los datos a través del registro.
En el receptor pones un timer con algo como esto:
Timer1_Timer()
TextoCapturado = GetSetting(App.Title, "TXRX", "Datos", "")
SaveSetting App.Title, "TXRX", "Datos", ""
Call ProcesaDatos (TextoCapturado)
End Sub
y en el transmisor:
SaveSetting App.Title, "TXRX", "Datos", GetSetting(App.Title, "TXRX", "Datos", "") & vbCrLf & DatosAEnviar
De este modo si el transmisor es más rápido que el receptor irá acumulando los datos en el registro y cuando el receptor los lea los borra y procesa todos los paquetes enviados.
Es una idea.
Otra idea es usar SendMessage para mandar los datos a un textbox del programa receptor. Incluso para no tener que andar usando FindWindow para conseguir el hWnd del textbox receptor puedes hacer que el programa receptor al arrancar guarde el hwnd del textbox receptor en el registro usando savesetting y el transmisor mande los datos con sendmessage a ese hwnd, evitando así usar findwindow tantas veces. No se si me explico.
Que se dé bien.
Gracias tío. Pues no conocía eso del "Registro de windows", ¿me lo recomiendas mejor que el portapapeles? porque para borrar los datos en el portapapeles también se puede usar un Clipboard.Clear, así conforme voy leyendo voy eliminando. Mi duda es que si estás con el WORD o cualquier otra aplicación al mismo tiempo que se graben datos al portapapeles y se lie todo.
¿Con SendMessage si oculto el textbox del receptor también funciona?