PDA

Ver la Versión Completa : Como saber cuando windows abre una ventana externa a nuestra apli?


Xema
22-09-2004, 19:14:46
Hola, estoy haciendo una aplicacion en delphi, que en un momento determinado tiene que ejecutar otra aplicacion de windows, y me gustaria saber cuando windows a mostrado la ventana de esa aplicacion. Gracias

delphi.com.ar
22-09-2004, 20:21:14
Podrías hacerlo creando un Hook. Te recomiendo leerte ese "capítulo" de la ayuda de "Windows SDK"

Saludos!

roman
22-09-2004, 20:23:44
Según la ayuda del SDK de Windows, si ejecutas la aplicación externa usando CreateProcess puedes pasar el 'handle' del proceso creado a la función WaitForInputIdle la cual detiene el flujo de tu aplicación hasta que el nuevo proceso esté listo para recibir entrada del usuario.

Quizá esto te pueda servir.

// Saludos

roman
22-09-2004, 20:30:01
Podrías hacerlo creando un Hook.

Mmmm... sí. Fue en lo primero que pensé pero en este caso la aplicación externa la inicia la propia aplicación de Xema de manera que siento un poco excesivo el uso de un hook para determinar si ya abrió una aplicación que uno mismo inició.

// Saludos

delphi.com.ar
22-09-2004, 21:05:19
...Fue en lo primero que pensé pero en este caso la aplicación externa la inicia la propia aplicación de Xema...
Pues... mi suposición fue exactamente lo contrario :D

Xema
23-09-2004, 14:24:34
Vale, gracias por contestar. Pero estoy buscando informacion de las funciones de la api, pero no encuentro nada. Estoy buscando como funciona la funcion PostMessage, pero nada.
Para cerrarla utilizo: PostMessage(FindWindow(Nil, Pchar('Nombre ventana')), WM_close, 0, 0);
pero no se los parametros como van. Saben donde se puede encontrar ayuda sobre todo esto??
Muchas gracias

roman
23-09-2004, 15:16:18
Saben donde se puede encontrar ayuda sobre todo esto??


Con Delphi viene incluida la ayuda del SDK de Windows en donde están documentadas todas las funciones de la API. Búscala en el menú Help|Windows SDK.

// Saludos