Tengo unas consultas con error C000005 al salir en forms de nivel superior

19 views
Skip to first unread message

Marcelo Barberis

unread,
Sep 5, 2011, 11:49:07 PM9/5/11
to publicesvfoxpro
Estimados amigos
De nuevo recurro a ustedes por un error sobre un proyecto con form de nivel superior.

Bueno estoy diseñando un proyecto de ventas en donde todos los forms estan diseñados en nivel superior, para el ingreso no me da errores, pero al momento de salir, ejecuto un procedimiento para activar un respaldo automatico y despues de eso cierra todo quit y me genera un error C000005, este error la pueden ver en el adjunto que envie error imagen error.jpg, y podran ver las lineas que generan el error y es la linea 156 del prg principal, la imagen del codigo en donde se genera el error la adjunte tambien imagen error2.jpg, la linea donde se genera el error es READ EVENT.
Una linea antes ejecuto los procedimientos que iran mostrando las diferentes pantallas con la que trabaja el sistema antes de mostrar la principal del sistema oappdatos.controlapli, que verifica si estas registrado, que no falte los archivos obligatorios, si es demo, usuarios del sistema y luego de todo esto muestra la pantalla principal.
La pantalla de inicio o splash se encarga de ver que estan todos los archivos necesarios: imagen pantalla1.jpg
La pantalla que verifica si es demo o registrado solo sale si no estas registrado, si trabajas en demo: pantalla2.jpg
La pantalla para ingresar con usuarios registrados en el sistema: pantalla3.jpg
La pantalla principal del sistema: pantalla4.jpg
todas estas pantallas trabajan como form de nivel superior

Para salir del sistema utilizo este procedimiento

FUNCTION ONSHUTDOWN
*!* Cuando hacemos click en la X para cerrar la aplicacion necesitamos que el sistema
*!*    nos pregunte si deseamos salir utilizamos la variable ya establecida
IF SALIRSINPREGUNTAR = "NO"
    IF  APLI_CORRIENDO = "SI"
        CLEAR WINDOW
        QUIT
    ELSE
        MI_SALIDA = MESSAGEBOX(_MSGSALIR_LOC,36,_MSGNOMBREPROG_LOC)
        IF MI_SALIDA = 6
            IF _VFP.STARTMODE = 0
                OASETUP.APLICAR_SONIDO('SALIR')
                orespaldoauto = CREATEOBJECT("zip.backupautomatico")
                orespaldoauto.autocenter = .T.
                orespaldoauto.show
                IF TXNLEVEL() > 0
                    ROLLBACK 
                ENDIF
                ON SHUTDOWN
                CLEAR WINDOW
                CLEAR DLLS
                CLOSE ALL
                RELEASE ALL EXTENDED
                CLEAR MEMORY
                QUIT
            ELSE
                OASETUP.APLICAR_SONIDO('SALIR')
                orespaldoauto = CREATEOBJECT("zip.backupautomatico")
                orespaldoauto.autocenter = .T.
                orespaldoauto.show
                IF TXNLEVEL() > 0
                    ROLLBACK 
                ENDIF
                ON SHUTDOWN
                CLEAR WINDOW
                CLEAR DLLS
                CLOSE ALL
                RELEASE ALL EXTENDED
                CLEAR MEMO
                QUIT
            ENDIF
        ENDIF
    ENDIF    
ENDIF
ENDFUNC
***********************************************************************************************
Les adjuntos las imagenes que utilizo para el sistema
Como les dije anteriormente todo el proyecto trabaja con form de nivel superior
Cualquier tipo de ayuda que me proporcione que me ayude a solucionar este error C00000005 se los agradeceria mucho.
Marcelo Barberis
Bolivia
error.jpg
error2.jpg
pantalla1.jpg
pantalla2.jpg
pantalla3.jpg
pantalla4.jpg

Douglas Sánchez Guillén

unread,
Sep 6, 2011, 12:15:42 AM9/6/11
to publice...@googlegroups.com
antes del quite pone Clear Events. si te salis del programa totalmente se supone.
Cuando salgas de un form no mandes a ejecutar esa funcion, pone solo release thisform
--
Ing. Douglas Sánchez Guillén
      Consultor Informatico
Movistar: 505 8759 - 5342
Claro: 505 88495476

Mauricio Molinero,

unread,
Sep 6, 2011, 8:40:12 AM9/6/11
to Comunidad de Visual Foxpro en Español
Yo tambien estoy teniendo un error parecido a la salida, y usando
clear events igual lo da.
Por lo que vi tengo que hacer una salida mas "limpia", cerrando
formularios, tablas,cursores buffered, objetos, etc.
Tal vez a ti te pase igual.

Saludos!

Mauricio R. Molinero,

Viktor Velazquez

unread,
Sep 6, 2011, 10:47:26 AM9/6/11
to publice...@googlegroups.com
debes chkar tus salidas a lo mejor estas dejando algun form abierto..y te esta provocando ese error


Date: Tue, 6 Sep 2011 05:49:07 +0200
Subject: [vfp] Tengo unas consultas con error C000005 al salir en forms de nivel superior
From: alexm...@gmail.com
To: publice...@googlegroups.com

Marcelo Barberis

unread,
Sep 6, 2011, 12:39:24 PM9/6/11
to publice...@googlegroups.com
En la funcion para salir del sistema pongo thisform.release pero tengo el problema que el sistema sigue cargado en el OS por lo que tengo que recurrir a cerrarlo manualmente con ctrl+alt+supr, pero cuando pongo Quit recien me aparece el error C000005, tambien he notado que si no utilizo la funcion para salir del sistema los datos que ingreso en las tablas no se gurdan utilizando thisform.release para salir del sistema.
Bueno si alguien tiene alguna idea para solucionar este tema agradeceria mucho, yo te todas maneras voy a intentar recodificando nuevamente a ver si con otra forma soluciono el problema.
Marcelo

Douglas Sánchez Guillén

unread,
Sep 6, 2011, 1:10:33 PM9/6/11
to publice...@googlegroups.com
Cuando ocurre eso es pq no hay un Clear events, por eso la aplicacion te queda activa.  o no esta llegando donde esta quit.

no se tu pero cuando yo mando a cerrar algo unicamente hago esto..
close table all
close database all
set classlib to
set library to
clear event
quit

asi funciona bien... preba y conta, desactiva tu funcion onshutdows hace copia  de seguriidad y solo ponele eso. que te puse y prueba

saludes..

Douglas

Daniel Del Giudice

unread,
Sep 6, 2011, 5:38:59 PM9/6/11
to Comunidad de Visual Foxpro en Español
Que versión de Fox tienes? A mi ese error me aparecía en una situación
similar y era porque no tenía instalado el Service Pack 1 de la
versión 8.0.- En las máquinas donde instalaba el Runtime que ya
incluía el SP1 no lo hacía.


Reply all
Reply to author
Forward
0 new messages