FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
|
Herramientas | Buscar en Tema | Desplegado |
#1
|
|||
|
|||
¿Como cerrar todos los módulo de una aplicacion?
Hola amigos!!!
Tengo una aplicación que carga un menu principal y desde éste se cargan los demás módulos del sistema mediante la sentencia WinExec, asi: por ejemplo WinExec('C:\sistema\nomina.exe', 1);, ejecuta a nomina. Lo que quiero es que cuando cierre el menu principal tambien se cierren los módulos que esten abiertos. Gracias desde ya... ElCherchu.... |
#2
|
|||
|
|||
Pues me parece que tendrás que cambiar el WinExec por ShellExecute (un poco más complicado de usar) que devuelve un handle a la aplicación lanzada.
Te guardas el Handle en algún sitio y luego haces un PostMessage(HandleDeLaAplicacion, WM_CLOSE, 0, 0) o algo así. (Vamos, le mandas un mensaje de cierre). Lo que no se es que pasará si la aplicación ya se cerró... |
#3
|
|||
|
|||
No sé si es la manera más óptima pero así lo tengo yo:
a:= 0 ; a:= FindWindow(nil,'Polizas') ; if a<>0 then begin ShowMessage('Debe cerrar primero el módulo de Pólizas') ; SendMessage(a,WM_CLOSE,0,0) ; end ; Debes tener presente que si, en este caso Pólizas, tiene una Dialog por el estilo de "Seguro quiere Salir? S/N" Se va a mostrar.... Saludos, |
#4
|
||||
|
||||
Creo que ya te han contestado tu pregunta, pero igualmente te recomiendo que leas este link, donde se propone una forma mas "elegante" y práctica de modularizar aplicaciones.
http://www.clubdelphi.com/foros/show...ht=modularizar
__________________
delphi.com.ar Dedique el tiempo suficiente para formular su pregunta si pretende que alguien dedique su tiempo en contestarla. |
|
|
|