Enviar mensaje a otra aplicación
Buenas,
El problema es el siguiente. En mi aplicación hago uso de otra aplicación y cuando yo quiero cerrar la mía, quiero q la otra también se cierre. Aquí tengo dos alternativas con las que no consigo el efecto que yo deseo: - Matar el proceso. A priori si mato el proceso no debería tener problemas, pero no es así. No lo mato bien muerto y se queda como en segundo plano ejecutándose de forma errónea. El por qué no lo sé, pero es lo q sucede. - La segunda forma sería enviando un mensaje pidiendo q se cierre SendMessageAplicacion.Hwnd,WM_CLOSE,0,0). Lo que ocurre es q en este caso la aplicación me muestra un mensaje diciendo si deseo cerrar con las opciones de Sí, No, Cancelar. Ante esta situación me estoy decantando por la segunda forma, pero me gustaría saber si hay alguna manera desde mi aplicación Delphi de enviarle un segundo mensaje para decirle elijo la opción 'Sí'. Gracias a todos y perdón por el chorizo de mensaje...:p |
a ver... prueba matando la ejecución del exe y me cuentas
Fuente: Q3Team Saludos |
X q no pruebas emplear algun componente de conexion entre programas?? como TcpServer y TcpClient, y solo lo empleas para enviar la informacion al final. Envias un mensaje desde el cliente al servidor para q le digas q debe cerrarse, y al recibir esa señal entonces el otro programa se cierra. Quizas consuma un poco mas de recursos pero es una opcion, como te digo. Espero que te ayude
|
Gracias a los dos por responder MaMu y luigixD.
Al final he probado lo que me decía MaMu y por fin mato bien muerto a la aplicación (Google Earth en concreto). Antes había probado esa solución, pero sin acierto, ya que en vez de pasarle a la función KillTask(FileName : String) el nombre del ejecutable le pasaba el nombre de la ventana. Es decir, en vez de pasar como argumento 'googleearth.exe' le pasaba 'QWidget' y entonces obtenía un efecto raro y es q no lo mataba. En cuanto a tu solución luigixD la descarté porque, aparte que lo otro me ha funcionado bien, no podía usarla ya que la otra aplicación (Google Earth) no era mía jeje. En fin que muchas gracias a los dos... que con este simple gesto me habeis arrancado la primera sonrisa del día :D... Que muchas gracias!!! |
La franja horaria es GMT +2. Ahora son las 12:33:55. |
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