Club Delphi  
    Paypal   FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Varios
Registrarse FAQ Miembros Calendario Guía de estilo Buscar Temas de Hoy Marcar Foros Como Leídos

Coloboración Paypal con ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 08-09-2004
Avatar de delphi.com.ar
delphi.com.ar delphi.com.ar is offline
Federico Firenze
 
Registrado: may 2003
Ubicación: Buenos Aires, Argentina *
Posts: 5.964
Poder: 29
delphi.com.ar Va camino a la fama
¿En qué línea se te produce este AccessViolation?
__________________
delphi.com.ar

Dedique el tiempo suficiente para formular su pregunta si pretende que alguien dedique su tiempo en contestarla.
Responder Con Cita
  #2  
Antiguo 08-09-2004
Avatar de marcoszorrilla
marcoszorrilla marcoszorrilla is offline
Capo
 
Registrado: may 2003
Ubicación: Cantabria - España
Posts: 11.221
Poder: 10
marcoszorrilla Va por buen camino
Como muy bien dices, no es necesario cerrar el Datamodulo, aunque como te dice Federico, tienes que dar algún dato más, estos errores suelen producirse por tratar de acceder a componentes o que aún no han sido creados o que ya han sido destruidos......

También convendría que pusieras el mensaje de error que te da completo.

Un Saludo.
__________________
Guía de Estilo de los Foros
Cita:
- Ça c'est la caisse. Le mouton que tu veux est dedans.
Responder Con Cita
  #3  
Antiguo 08-09-2004
Ester Ester is offline
Miembro
 
Registrado: oct 2003
Posts: 13
Poder: 0
Ester Va por buen camino
El error me sale justo cuando pasa por el End de la aplicación:

begin

Application.Initialize;
Application.Title := 'Gestión';
Application.CreateForm(Tfrdadesglobals, frdadesglobals);
Application.CreateForm(Tfrlogin, frlogin);
Application.Run;

end. --> en esta linea

y el mensaje de error es el siguiente:


Application Error

Exception EAccessViolation in module Gestion.exe at 000B661A.
Access violation at address 004B661A in module 'Gestion.exe'. Read of address 0181EDEC.
Responder Con Cita
  #4  
Antiguo 08-09-2004
Avatar de jachguate
jachguate jachguate is offline
Miembro
 
Registrado: may 2003
Ubicación: Guatemala
Posts: 6.254
Poder: 30
jachguate Va por buen camino
Te recomiendo revisar los eventos "de salida" de tus forms y demás componentes. OnExit, OnClose, OnDestroy, etc. En alguno estas haciendo referencia a un objeto que seguramente ya ha sido destruido durante el proceso de salida de la aplicación.

De ahi el access violation.

Ahora que me fijo un poco mas... si el formulario principal es el frLogin, y al cerrarlo lo destruis, la aplicación no correrá, pues al cerrarse este, provoca el cierre de la aplicación completa. Aunque esto dicho, claro, no coincide con el código que publicas, donde el formulario frdadesglobals seria el principal de la aplicación.

Hasta luego.

__________________
Juan Antonio Castillo Hernández (jachguate)
Guía de Estilo | Etiqueta CODE | Búsca antes de preguntar | blog de jachguate
Responder Con Cita
  #5  
Antiguo 08-09-2004
Avatar de delphi.com.ar
delphi.com.ar delphi.com.ar is offline
Federico Firenze
 
Registrado: may 2003
Ubicación: Buenos Aires, Argentina *
Posts: 5.964
Poder: 29
delphi.com.ar Va camino a la fama
Si no me equivoco en el End se ejecutan todos los Finalizations de las units... ¿Tenes posibilidad de debuguerlo?... ¿Utilizas algun objeto que se crea automáticamente (Por ejemplo Clipboard, Printer...)?

Saludos!
__________________
delphi.com.ar

Dedique el tiempo suficiente para formular su pregunta si pretende que alguien dedique su tiempo en contestarla.
Responder Con Cita
  #6  
Antiguo 08-09-2004
Ester Ester is offline
Miembro
 
Registrado: oct 2003
Posts: 13
Poder: 0
Ester Va por buen camino
El formulario principal no es el 'frdadesglobals', este es un datamodule y lo necesito al abrir el login, por eso lo creo antes.
He probado de quitar el action:=cafree del frlogin pero el error me sale igual.

En cuanto a los 'onclose' no los he repasado todos por que tengo unos 350 formularios. Lo que he hecho es poner puntos de interrupcion en los cierres de los cinco o seis formularios que se crean des del login, pero no me ha servido de nada por que cuando abro el login y lo vuelvo a cerrar sin acceder a ningun otro formulario no pasa por ningun otro formclose y el error me lo da igualmente.

Del tema de objetos automáticos no tengo ninguno.

Una cosa curiosa que si he observado es que cuando reconstruyo el proyecto (con el build) el ejecutable que me crea no da el error al salir, en canvio si seguidamente al build intento ejecutar el proyecto des del codigo fuente si me vuelve a salir el error. ¿?¿?¿?¿?

Y haciendo pruebas veo que añadiento el siguiente codigo despues del application.run me da el error en el destroy del dadesglobals, pero el del login parece que lo hace bien:
frlogin.destroy;
frdadesglobals.destroy;

Pero añadiendolo al revés también me da el error en destroy del dadesglobals:
frdadesglobals.destroy;
frlogin.destroy;

Ester
Responder Con Cita
  #7  
Antiguo 08-09-2004
Avatar de marcoszorrilla
marcoszorrilla marcoszorrilla is offline
Capo
 
Registrado: may 2003
Ubicación: Cantabria - España
Posts: 11.221
Poder: 10
marcoszorrilla Va por buen camino
Si los formularios ya contienen:
Action:=CaFree;

Al cerrarse estos se destruyen por lo tanto si luego llamas desde otro formulario al método Destroy de alguno de los que acabas de cerrar te darán error porque esos formularios ya no existen......?

Un Saludo.
__________________
Guía de Estilo de los Foros
Cita:
- Ça c'est la caisse. Le mouton que tu veux est dedans.
Responder Con Cita
Respuesta


Herramientas Buscar en Tema
Buscar en Tema:

Búsqueda Avanzada
Desplegado

Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro


La franja horaria es GMT +2. Ahora son las 16:40:49.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi