Ver Mensaje Individual
  #4  
Antiguo 21-08-2012
alsn alsn is offline
Miembro
NULL
 
Registrado: abr 2012
Posts: 20
Reputación: 0
alsn Va por buen camino
Hola, podrías probar a obtener el manejador del control que muestra los datos con FindWindow y FindWindowEx. Y una vez obtenido, con SendMessage y WM_GETTEXT conseguir esos datos.

Una forma de ver si se puede es que crees un programa con un Timer y un Memo. Y en el evento timer poner el código:


Código Delphi [-]
procedure TForm1.Timer1Timer(Sender: TObject);
var
  hwnd : THandle;
  mousepnt : TPoint;
  WndName, ClsName : String;
  s, sTexto: String;
  Len: Longint;
begin
  GetCursorPos(mousepnt);
  hwnd := WindowFromPoint(mousepnt);
  SetLength(WndName, 255);
  GetWindowText(hwnd, PChar(WndName), 255);
  WndName := PChar(WndName);
  SetLength(ClsName, 255);
  GetClassName(hwnd, PChar(ClsName), 255);
  ClsName := PChar(ClsName);

  sTexto := '';
  Len := SendMessage(hwnd, WM_GETTEXTLENGTH, 0, 0);
  if Len > 0 then
  begin
    SetLength(sTexto, Len);
    SendMessage(hwnd, WM_GETTEXT, Len + 1, Longint(Pchar(sTexto)));
  end;

  s := 'Nombre Clase:   ' + ClsName + #13#10 +
       'Nombre Ventana: ' + WndName + #13#10 +
       'Texto:          ' + sTexto;

  if Memo1.Text <> s then
    Memo1.Text:=s;
end;

Comprobar entonces si al situar el ratón encima de los datos que quieres estos llegan a obtenerse.

Saludos
Responder Con Cita