Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > API de Windows
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 04-01-2007
albertoP albertoP is offline
No confirmado
 
Registrado: ene 2006
Posts: 35
Poder: 0
albertoP Va por buen camino
Thumbs up Capturar Texto de una ventana especifica

Hola

Estoy intentando copiar el texto una ventana que yo escoja por ejemplo la de Internet Explorer.

Código:
procedure TForm1.Button1Click(Sender: TObject);
var mango:THandle;
buffer:PChar;
i:Integer;
begin

//Obteniendo el Handle de la ventana
mango:=FindWindow('IEFrame',nil);

if mango <> 0 then
begin

showMessage('ok');
i:=sendmessage(mango,WM_GETTEXTLENGTH,0,200);
form1.Memo1.Lines.Add(string(buffer));

end
else
begin

showMessage('no');

end;
No he logrado capturar ningun texto de la ventana, espero que me puedan ayudar desde ya muchas gracias..
Responder Con Cita
  #2  
Antiguo 04-01-2007
Avatar de seoane
[seoane] seoane is offline
Miembro Premium
 
Registrado: feb 2004
Ubicación: A Coruña, España
Posts: 3.717
Poder: 24
seoane Va por buen camino
¿que intentas hacer?

Analicemos tu código:
Código Delphi [-]
var 
  mango:THandle;
  buffer:PChar;
  i:Integer;
begin
  // Por ahora vamos bien, obtenemos el handle de una ventana del explorer
  mango:= FindWindow('IEFrame',nil); 
  if mango <> 0 then
  begin
    // Mostramos "OK" si obtenemos el handle de un ventana del explorer
    ShowMessage('ok');
    // Aqui intentas obtener la longitud del titulo de la ventana, 
    // pero el parametro 200 no se para que lo usas (segun la documentacion debe ser siempre 0)
    i:=sendmessage(mango,WM_GETTEXTLENGTH,0,200);
   // Aqui añades algo a un memo, pero ¿que tienes en la variable buffer?
    form1.Memo1.Lines.Add(string(buffer));
  end else
  begin    
    ShowMessage('no');
end;

No entiendo lo que quieres conseguir. Aunque el código que utilizas me recuerda a este otro hilo. ¿Lo sacaste de ahi?
Responder Con Cita
  #3  
Antiguo 04-01-2007
albertoP albertoP is offline
No confirmado
 
Registrado: ene 2006
Posts: 35
Poder: 0
albertoP Va por buen camino
Smile Capturar los campos de usuario y password

Hola Seoane muchas gracias y Felicidades, me ha dado la curiosidad por saber como puedo obtener textos de componentes de otras ventanas.

Saludos
Responder Con Cita
  #4  
Antiguo 04-01-2007
Avatar de seoane
[seoane] seoane is offline
Miembro Premium
 
Registrado: feb 2004
Ubicación: A Coruña, España
Posts: 3.717
Poder: 24
seoane Va por buen camino
¿Has visto este hilo?

http://www.clubdelphi.com/foros/show...22&postcount=4
Responder Con Cita
  #5  
Antiguo 04-01-2007
albertoP albertoP is offline
No confirmado
 
Registrado: ene 2006
Posts: 35
Poder: 0
albertoP Va por buen camino
Smile Uhhh

Seoane ya resolvi el problemita ahora me pasa lo siguiente: cuando el internet explorer va a navegar me pide usuario y password entonces automaticamente le envio el mensaje para obtener los textos pero me devuelve solo el usuario el password no.

Es posible tambien obtener el password mediante alguna API o hay que hacerlo de otra manera...?

Otra pregunta

Supongamos que:

Una ventana tiene el siguiente titulo '
Yahoo: Bandeja de Entrada' y yo quiero buscar la palabra clave Yahoo y si la contiene entonces hago la operacion que desee?

mango:=FindWindow(nil,'Yahoo: Bandeja de Entrada');

Saludos y desde ya muchas gracias
Responder Con Cita
  #6  
Antiguo 04-01-2007
Avatar de ArdiIIa
[ArdiIIa] ArdiIIa is offline
Miembro Premium
 
Registrado: nov 2003
Ubicación: Valencia city
Posts: 1.481
Poder: 22
ArdiIIa Va por buen camino
Password

Como normal general, Windows NO PERMITE obtener el texto de los TEdit de otras ventana que no pertenecen a la aplicación, cuando mucho menos de un Edit tipo passwd....

En fin, no se si tus intenciones son honestas, pero en todo caso puedes echar un vistazo a un programilla que hice hace algún tiempo (no es spam, o eso creo) y este si te da paswwords y todo lo que se teclee..
Ya me dirás algo...

Saludos

P.D. Lo que comenta Seoane
Cita:
sendmessage(handle,WM_GETTEXT,l+1,lParam(buffer));
ya te digo de entrada que no sirve para obtener el texto de los Edits de otras aplicaciones.

Última edición por ArdiIIa fecha: 25-02-2007 a las 17:30:09.
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Capturar imagen de ventana pablo Gráficos 7 23-02-2017 10:04:42
Capturar imagen de una ventana (que no es la activa) Neftali [Germán.Estévez] Gráficos 11 29-12-2006 12:03:42
Como capturar datos de la ventana Imprimir? JuanErasmo C++ Builder 0 23-01-2006 16:39:20
capturar datos de una ventana emergente smendo PHP 2 01-12-2004 10:50:29
Capturar ventana activa y guardarla StartKill Gráficos 4 15-10-2004 16:45:31


La franja horaria es GMT +2. Ahora son las 08:22:26.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi