![]() |
![]() |
| Paypal | FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
|||||||
| Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
![]() |
|
|
Herramientas | Buscar en Tema | Desplegado |
|
|
|
#1
|
|||
|
|||
|
Buenas,
La funcion que me has pasado me ha ayudado mucho, por cierto he tenido que cambiar esto para que funcione Código Delphi [-]GetWindowThreadProcessId(Handle, PId); por GetWindowThreadProcessId(Handle,@ PId); La funcion me ha devuelto mas informacion de la que esperaba y me ha surgido la siguiente duda. ¿Puedo preguntar si la Clase TF_MULTICONSULTA es una calse class(TForm) ?.Esto me ayudaria ya que me mostraria solo los formularios de la aplicacion. hWnd: 000202B6h Caption: MultiConsulta Clase: TF_MULTICONSULTA ----------------------------------------------- hWnd: 000102B0h Caption: Aplicación Servidor - Clase: TF_Principal ----------------------------------------------- hWnd: 000202A2h Caption: Clase: TfrProgressForm ----------------------------------------------- hWnd: 00060248h Caption: Servidor - Clase: TApplication ----------------------------------------------- hWnd: 011B04D2h Caption: Clase: ComboLBox ----------------------------------------------- hWnd: 000102CAh Caption: Clase: TPUtilWindow ----------------------------------------------- hWnd: 000102C8h Caption: Clase: TPUtilWindow ----------------------------------------------- hWnd: 000102C6h Caption: Clase: TPUtilWindow ----------------------------------------------- hWnd: 000102C4h Caption: Clase: TPUtilWindow ----------------------------------------------- hWnd: 000102C2h Caption: Clase: TPUtilWindow ----------------------------------------------- hWnd: 000102C0h Caption: Clase: TPUtilWindow ----------------------------------------------- hWnd: 000102BEh Caption: Clase: TPUtilWindow ----------------------------------------------- hWnd: 000102BCh Caption: Clase: TPUtilWindow ----------------------------------------------- hWnd: 000102B4h Caption: Clase: TPUtilWindow ----------------------------------------------- hWnd: 000102AEh Caption: Clase: TPUtilWindow ----------------------------------------------- hWnd: 000102ACh Caption: Clase: TPUtilWindow ----------------------------------------------- hWnd: 000102D8h Caption: M Clase: MSCTFIME UI ----------------------------------------------- hWnd: 0004022Ch Caption: Default IME Clase: IME ----------------------------------------------- |
|
#2
|
||||
|
||||
|
Cita:
![]() En principio estás explorando ventanas con la API, de cualquier APP. Sólo las aplicaciones basadas en la VCL tienen ventanas del tipo TForm. No se debe confundir la Clase de POO con la clase de ventana de windows, que no tiene nada que ver con la POO. La VCL da nombres de clase de ventana (WindowClass) similares a los de la clase POO lo que ayuda al explorar ventanas de una APP escrita en delphi o Builder. Esto puede aproximarte a tu duda. Puedes saber mas de las ventanas con otras API. Estudia GetWindowLong. Con ella sabrás los estilos de ventada y deducir si la ventana que buscas es un TForm, pero nunca estarás seguro de ello con esta función. Saludos. |
|
#3
|
|||
|
|||
|
Puede que sea porque uilizo para este proyecto delphi 5
Al final voy a coger las clases y meterlas en una lista y comparla con otra lista de clases con el programa en reposo.De esta manera sabre si la APP este en el menu principal.Creo que con esto esta solucionado. Una pregunta más cuando voy a guardar el buffer de la clase en un string me aperele lo siguiente: TF_MULTICONSULTA'#0'’|º¡’|'#0#0#$15#0'`'#0#0'@]'#0'’|ð '#$16#0'#'#0#0'À-ÿ‘|ÿÿÿÿË£’|º¡’|'#0#0#$15#0'`'#0#0'@]'#0'’|'#0#0#0#0'-ÿ‘|ô'#3#3#0#0#0#0#0#1#0#0#0#0#0#$15#0'Äð'#$12#0#0#0'É'#0'”ó'#1#0' '#0#0#0'8ò'#$12#0'0ó'#$12#0'”ó'#$12#0' é‘|`'#0'’|ÿÿÿÿ]'#0'’|¬'#4'’|'#0#0#$15#0#0#0#0#0#$10#$17#$16#0#$18'ó'#$12#0'‚'#4'’|'#$10#$17#$16#0#0#0#$15#0#0#0#0#0 #0#0#0#0#0#0#0#0'üó'#$12#0'b4@'#0'þ!'#0#0#0#0#$15#0',ñ'#$12#0#0#0#$15#0'¦¥:~`ó:~'#0#0#0#0#0#0#0#0#0# 0#0#0#0#0#0#0'Ê'#0#0#0'`q'#$16#0'pó'#$12#0'ì'#$1B'£'#0'„õ'#$12#0'ø'#$C#0#0 . He intentando lipiarlo y dejar lo que me interesa(TF_MULTICONSULTA) con funciones que limpiar caracteres dobles, tambien con la siguiente funcion: Código Delphi [-]function TFORM1.QuitarCaracteres(Str: String): String; var i: Integer; begin Result:= EmptyStr; for i:= 1 to Length(Str) do if (Str[i] < #123)AND(Str[i] > #64) then Result:= Result + Str[i]; end; y no hay manera siempre me encuentro algo de basura en algun caso.¿Se te ocurre algo? |
|
#4
|
|||
|
|||
|
Perdon por el mensaje anterior, ya he solocionado el problema de la cadena con basura .Muchas gracias por haberme pasado esa funcion.
|
![]() |
|
|
Temas Similares
|
||||
| Tema | Autor | Foro | Respuestas | Último mensaje |
| For a todas las ventanas abiertas. | rauros | Varios | 1 | 03-08-2008 22:07:59 |
| Cerrar todas las Ventanas MDIChild | gluglu | OOP | 11 | 18-04-2007 20:12:56 |
| Recoger Información de Balanza | altp | Varios | 4 | 22-08-2005 21:26:32 |
| Minimizar todas las ventanas | santiago14 | Varios | 2 | 17-09-2004 03:34:01 |
| minimizar todas las ventanas. | soyhugo | Varios | 2 | 18-02-2004 13:11:26 |
|