Título: Ejecutar código antes de cerrar aplicación Publicado por: kiriost en 16 Marzo 2012, 17:51 pm Tengo un problema. Estoy realizando una aplicación en C++ que se ingresa datos en una base de datos a través de un script PHP que está en el mismo servidor que la base de datos, ya que la bd no tiene acceso desde el exterior, sino que solo en localhost.
Ya tengo las funciones hechas que permiten el envío de datos. Estas funciones hacen el uso de sockets (Windows). Yo quisiera hacer que cuando el programa se cierra, ya sea porque se le mande la señal de cerrado o se apague Windows, este envíe un comando POST al servidor mediante SOCKETS. Para hacer esto usé atexit() pero me da un problema: cuando el programa recibe la señal de cierre, cierra las librerías de sockets y luego ejecuta la función que hay en atexit(), entonces no puedo hacer uso de sockets en esta función porque fue cerrada la librería para hacer esto. Qué puedo hacer? Me podrían dar una buena solución para enviar datos a través de sockets una vez que el programa recibe la señal de cierre? Gracias de antemanos. Título: Re: Ejecutar código antes de cerrar aplicación Publicado por: Sagrini en 16 Marzo 2012, 20:10 pm Podrías volver a abrir los sockets, por ejemplo. En linux lo mejor es usar signal (), y si no puedes utilizar destructores. Tú verás ;)
Título: Re: Ejecutar código antes de cerrar aplicación Publicado por: naderST en 17 Marzo 2012, 16:52 pm En el lado del servidor detectar cuando se cierre la conexión.
Título: Re: Ejecutar código antes de cerrar aplicación Publicado por: kiriost en 17 Marzo 2012, 19:19 pm Pero tengo un problema: el ingreso de datos a la base de datos se realiza a través de un script PHP del lado del servidor, porque la base de datos no tiene acceso desde el exterior.
Es posible mantener una conexión abierta entre mi programa (en Windows) y el servidor web mediante un script PHP? |