PDA

Ver la Versión Completa : Saber si otra aplicacion esta en ejecucion


Salomon
07-10-2003, 16:39:51
Wuenaaaaaaaaaaaaaaaaaassssssss!!!!!

Tengo una aplicacion principal desde donde se llama a otras aplicaciones, mi idea es no poder cerrar la aplicacion principal hasta que todas las otra esten cerradas, y claro, tengo que saber si alguna esta en ejecucion, he probado con el truco de trucomania, pero no funciona, tambien he provado con findwindows, y tampoco, no se si en realidad no funciona o es que no se utilizarlos bien.
Es delphi en windows 2000,

Muchas gracias!!

Salo!!

delphi.com.ar
07-10-2003, 16:53:35
La función FindWindow es muy sencilla, y está muy bien explicada en la ayuda. Simplemente te devuelve el handle de una ventana que la puedes buscar por el nombre de la clase o de la ventana. Solo tendrías que saber el nombre de la clase o de la ventana que quieres buscar, por ejemplo:

var
hWnd : THandle;
begin
hWnd := FindWindow( TMiVentana', nil );
if hWnd <> 0 Then
SendMessage( hWnd, WM_CLOSE, 0, 0 );
end;

Puedes utilizar alguna herramienta como el WinSight32 para conocer el nombre de las clases de las ventanas.

Saludos!

Salomon
07-10-2003, 17:44:28
muchas gracias por la ayuda, pero, como llamo a mi aplicacion, con el nombre, con la ruta completa, hay que tener en cuenta que es una aplicacion independiente, que la llamo con un winexec, que no depende de la aplicacion principal.

ciao!!

delphi.com.ar
07-10-2003, 18:19:31
Recien ahora entiendo lo que quieres hacer, y para este caso te recomiendo hacer algo como lo que se muestra en este hilo http://www.clubdelphi.com/foros/archivo/viewtopic.php?t=20317, verás que se crea un proceso y puedes consultar cuando este terminó.

Saludos!