![]() |
Capturar texto de otras ventanas
Buenos dias :)
tengo un pregunta un poco rara ... ( en mi linea jejejjee ) no se si se puede hacer, supongo q si. Imaginaos una ventana de otro programa q tiene de titulo "manue" y el contenido de la ventana , es una linea de texto q pone "hola" Hay alguna forma de capturar ese "hola" ??? lo unico q consigo es capturar el titulo de la ventana ("manue") con el GetWindowText Espero q me podais ayudar Muchas gracias por adelantado |
En teoría conociendo el handle del control y mediante la función GetWindowText podés obtener lo que buscas.
Fijate en Planet-Source-Code.com que hay ejemplos en VB que pueden ser adaptados y que tratan de inspectores de ventanas. |
Cita:
Como te indica Gydba debes obtener el "handle" del control que contiene el texto. Esto lo puedes hacer utilizando la función FindWindowEx de la API de Windows que te permite recorrer los controles que haya en la ventana principal. // Saludos |
El unico problema es que la funcion GetWindowText no devuelve el texto de otras aplicaciones que no sean la tuya. Para hacer eso se puede usar el mensage WM_GETTEXT que permite obtener el texto de otras ventanas.
Aqui te dejo un ejemplo que obtiene el texto de todas las ventanas que encuentra y lo escribe en un memo. Código:
function EnumChildProc(handle: Thandle; Param: lParam): boolean; stdcall; |
La franja horaria es GMT +2. Ahora son las 11:41:31. |
Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi