Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Varios
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Grupo de Teaming del ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 08-09-2004
Ester Ester is offline
Miembro
 
Registrado: oct 2003
Posts: 13
Poder: 0
Ester Va por buen camino
EAccessViolation

Hola a todo el mundo,

llevo ya algunos dias peleandome con una aplicación que me da el error de EAccesViolation al salir. Estuve mirando distintos foros y siguiendo los consejos que leí pero no consigo solucionar el problema. Parece ser que el error me lo da en el End final, pero no se que está intentando hacer.

Os explico un poco como tengo montada la aplicación, a ver si alguien puede decirme que hago mal:

- La aplicación tiene como formulario principal un login y a partir de este carga un formulario de menus con el menu personalizado para cada usuario.
- También contiene un datamodule que cargo al iniciar la aplicación.
- No cierro manualmente el datamodule, deduzco que lo hará él al finalizar la aplicación.
- En el evento onclose de todos los formularios, incluido el frlogin incluyo la instruccion "action:=cafree".

El código para iniciar el programa es el siguiente:

Begin
Application.Initialize;
Application.Title := 'Top Cable';
Application.CreateForm(Tfrdadesglobals, frdadesglobals);
Application.CreateForm(Tfrlogin, frlogin);
Application.Run;
End;

A ver si alguien me puede decir algo, por que este error me está poniendo nerviosa

Ester
Responder Con Cita
  #2  
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.932
Poder: 27
delphi.com.ar Va por buen camino
¿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
  #3  
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
  #4  
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
  #5  
Antiguo 08-09-2004
Avatar de jachguate
jachguate jachguate is offline
Miembro
 
Registrado: may 2003
Ubicación: Guatemala
Posts: 6.254
Poder: 28
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
  #6  
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.932
Poder: 27
delphi.com.ar Va por buen camino
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
Respuesta



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 19:08:36.


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
Copyright 1996-2007 Club Delphi