PDA

Ver la Versión Completa : Mensaje Raro al Salir aplicacion


JULIOCTORRESG
14-12-2006, 16:40:03
Me sale este mensaje raro al cual solo puedo matar llamando al gestor de procesos y buscar el delphi32 que esta corriendo y finalizarlo...que sera ...?

Access violation at address 02CA1C10 Read from address 02CA1C10

gracias por adelantado por su ayuda....

Neftali [Germán.Estévez]
14-12-2006, 16:49:58
En realidad no es tan raro.
Access Violation, normalmente ocurre cuando estás accediendo a una posición de memoria no válida.
Suele pasar cuando accedes a cosas/objetos no inicializados, o en tu caso, si es al cerrar, cuando intentar liberar un elemento más de una vez.

Son pocos datos los que das, pero yo revisaría los objetos que estés liberando (si haces Free de cosas que hayas creado).

kuan-yiu
14-12-2006, 17:19:54
A mi también me pasa a veces y no tiene nada que ver con el proyecto que compilo porque me ha sucedido sin hacer nada: abrir el Delphi y sin llegar a abrir el proyecto tener que cerrar el Delphi y saltarme ese error.
En mi caso estoy casi convencida de que el error me lo da una librería que referencia a algún objeto inexistente (o algo así) porque cuando "limpio la máquina" (con programas tipo doctor que revisan el registro de windows) deja de aparecer ese error.

PD: Algún día desinstalaré Delphi y lo pondré todo bien... pero me da tanta pereza... y tengo tanto trabajo...

JULIOCTORRESG
14-12-2006, 17:26:03
para crear los formulario que es lo unico que creo dinamicamente

desde el boton o menu que los llama :

Application.CreateForm(TfrmFormulario, frmFormulario);
frmFormulario.Show;


luego en el onclose del formulario :

action:=cafree;


pregunto que hay de malo en esto, y si hay un metodo mejor cual es .....

gracias de nuevo....

Neftali [Germán.Estévez]
14-12-2006, 18:29:28
para crear los formulario que es lo unico que creo dinamicamente...
pregunto que hay de malo en esto, y si hay un metodo mejor cual es .....

No hay nada de malo en eso. Es correcto y bueno.
Busca otra cosa. żDentro de alguno de los formularios creas algo dinámicamente? żUsas componentes de terceros que puedan estar fallando?

jlchiodo
14-12-2006, 19:52:03
Puede ser una combinacion de ambos problemas. Me ha sucedido hace mucho.
Si trabajas con Win XP te recomiendo para limpieza del registro los ss. productos, son Freeware: EasyCleaner v 2.0 y RegScrubXP. Conla combinacion de ambos, dejas el registro bien y el error no se repite.

Por otro lado: Pregunta: estas usando componentes ADO en tu aplicacion? o algunas lineas de codigo en las que configures e intentes alguna conexion a un
Motor de Bases de Datos?

Saludos!

JULIOCTORRESG
14-12-2006, 22:06:30
ya veo como los creo y como los elimino con
action:=cafree pero esto se ejecuta en el onclose del form ahora bien siendo la ventana no modal si la minimizo y luego la vuelvo a llamar desde el menu principal o sea ya estando creada ejecuto

Application.CreateForm(TfrmFormulario, frmFormulario);
frmFormulario.Show;

no me genera error pero
pregunto ...? no deberia preguntar primero si esta creada
o sea algo asi como

if not form(existe) then Application.CreateForm(TfrmFormulario, frmFormulario);

frmFormulario.Show;


y si es asi como lo hago...?

gracias otra vez....