Mantener viva la aplicación
Buenas :) Quería agradecerles por la ayuda ofrecida en muchas oportunidades que me he estancado en esto de la programación :). Sin embargo, hoy día os traigo otra duda, esta vez no relacionada con bases de datos, pero sí con mantener una aplicación viva. La estructura es la siguiente:
Quisiera mantener esa aplicación viva por tiempo indefinido, sin tener que usar una aplicación tipo consola, tal cual sin GUI. Quizás un servicio tambien pueda ser adecuado, pero tampoco se mantiene vivo mucho tiempo (Quizás no lo estoy implementando bien) :(. No he tenido remota idea de como lograr esto, quizás algún loop en espera de algo. Si os sirve de ayuda, es para una aplicación de tipo servidor. :confused: Gracias de antemano :) |
¿Y qué se supone que debe hacer?
¿Ocupar RAM o algo mas? El código que has puesto, no hace nada en absoluto, asi que es normal que conforme lo ejecutes, se termine la ejecucion. Cuando en delphi creas una nueva aplicacion, en el dpr te pone esto:
Si no deseas que se muestre el formulario Form1, pon entre comentarios la linea Application.CreateForm(TForm1, Form1); Pero sinceramente, no se que utilidad tiene, si no hace nada. Quizás no he entendido tu problema :confused: |
Cita:
Un servicio te puede servir; También una aplicación con un bucle o con un Timer. |
Tanto las aplicaciones de consola, como las que tienen ventanas o incluso los servicios necesitan de un bucle que se esta ejecutando continuamente y mantiene la aplicacion "viva". En el caso de las aplicaciones con ventanas es el bucle de mensajes, y no se sale de el hasta que se recibe el mensaje WM_QUIT.
Este hilo puede que te sirva: http://www.clubdelphi.com/foros/showthread.php?t=43780 |
Gracias :D
El hilo que os habéis dejado me ha servido de ayuda para forjar el código necesario para mantener la aplicación viva. Muchas gracias, el código es el siguiente por si alguna otra persona se quedó con la duda:
Gracias de nuevo por su atención y ayuda. :) |
Ten cuidado, porque puede que Indy utilice funciones que necesiten un blucle de mensajes para funcionar. Si ves que no funciona bien, yo empezaria a buscar por ahi ...
|
Y si necesitas un bucle de mensajes echale un vistazo a esto:
http://www.clubdelphi.com/foros/show...66&postcount=3 |
Bueno, hehe.
En todo caso si no puedo usar Indy, tengo las librerías de Ararat Synapse para manejar sockets libremente, sin embargo, ahora tengo otra duda por aquí.
¿Alguna vez han podido asignarle a un procedimiento, al un determinado evento de un componente? hmmm, es que me desconecta al cliente porque no he definido un evento OnExecute, y quisiera asignarle un procedure a ese evento, o al evento OnConnect de ese componente Indy. Espero me puedan ayudar con esta :). Gracias de antemano. PD: Ese hilo que pusiste ahí me puede servir pronto y ya lo guardé, gracias :D. EDITADO: Oh, tampoco había pensado que para lograr esto necesitaría un bucle de mensajes para manejar los eventos. Jajaj, gracias por haberlo posteado arriba. |
Hola HombreGordo, por lo que se sobre los mensajes de Windows vas a necesitar el handle de una ventana para poder capturar los mensajes de Windows, así que los componentes Indy no te van a funcionar desde una aplicación de consola :o
Salu2 |
Cita:
http://www.clubdelphi.com/foros/show...66&postcount=3 |
La franja horaria es GMT +2. Ahora son las 15:56:41. |
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