Club Delphi  
    Paypal   FTP   CCD     Buscar   Trucos   Trabajo   Foros

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

Coloboración Paypal con ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 08-09-2005
Avatar de sierraja
sierraja sierraja is offline
Miembro
 
Registrado: sep 2004
Posts: 281
Poder: 22
sierraja Va por buen camino
Question Acess Violation

Algunas veces se genera un Acess Violation y me indica alguna dirección o simplemente 00000x000000 y seguidamente la aplicación se detiene y cae en el fuente. Pero, explico: El error se genera dentro de un form y cuando cae en el fuente apunta luego de que pasa por la creación del form, es decir:

Código Delphi [-]
 Procedure Button1.onclick();
 Begin
   FForm1:=TFForm1.create(Applicatiom);
   FForm1.showmodal;
 end; // aqui es donde se detiene la aplicación, pero el error se genera en el Form1 ;(

Última edición por dec fecha: 10-09-2005 a las 17:04:29. Razón: Encerrar el código fuente en la etiqueta [DELPHI]
Responder Con Cita
  #2  
Antiguo 08-09-2005
Alfredo Alfredo is offline
Miembro
 
Registrado: nov 2003
Ubicación: Valencia, Venezuela
Posts: 234
Poder: 23
Alfredo Va por buen camino
Que tienes codificado en el evento oncreate del form?
__________________
if Vivir = Vivir + Aprender then Aprender = ?
Alfredo Borges
Responder Con Cita
  #3  
Antiguo 08-09-2005
Avatar de sierraja
sierraja sierraja is offline
Miembro
 
Registrado: sep 2004
Posts: 281
Poder: 22
sierraja Va por buen camino
Question

En este evento sólo se tiene definición de variables: actualización de variales tipo fecha a la fecha del día, inicialización de variables tipo boolean. En algunas ocasiones se genera una Acess Violation en 0000x00000 de la siguiente rutina

Código Delphi [-]
 modulo_datos.cds_Alquilando.First;
 while not modulo_datos.cds_Alquilando.Eof do
 Begin
   pb1.Position:=c;
   delay(t);
   c:=c+1;
   xcodigo:=modulo_datos.cds_AlquilandoCodigo_de_Pelicula.AsString;
   modulo_datos.cds_Peliculas.FindKey([xcodigo]);
   modulo_datos.cds_Peliculas.Edit;
   modulo_datos.cds_PeliculasStatus_de_Proceso.AsString:='';
   modulo_datos.cds_Peliculas.Post;
   modulo_datos.cds_Peliculas.Refresh;
   modulo_datos.cds_Detalle_Alquiler.Insert;
 
   modulo_datos.cds_Detalle_AlquilerCodigo_Socio.AsString:=
     modulo_datos.cds_AlquilandoCodigo_Socio.AsString;
 
   modulo_datos.cds_Detalle_AlquilerNumero_de_Alquiler.AsInteger:=
     modulo_datos.cds_AlquilandoNumero_de_Alquiler.AsInteger;
 
   modulo_datos.cds_Detalle_AlquilerCodigo_de_Pelicula.AsString:=
     modulo_datos.cds_AlquilandoCodigo_de_Pelicula.AsString;
 
   modulo_datos.cds_Detalle_AlquilerTitulo_de_Pelicula.AsString:=
     modulo_datos.cds_AlquilandoTitulo_de_Pelicula.AsString;
 
   modulo_datos.cds_Detalle_AlquilerClasificacion.AsString:=
     modulo_datos.cds_AlquilandoClasificacion.AsString;
 
   modulo_datos.cds_Detalle_AlquilerFecha_de_Alquiler.AsDateTime:=
     modulo_datos.cds_AlquilandoFecha_de_Alquiler.AsDateTime;
 
   modulo_datos.cds_Detalle_AlquilerFecha_de_Posible_Entrega.AsDateTime:=
     modulo_datos.cds_AlquilandoFecha_de_Posible_Entrega.AsDateTime;
 
   modulo_datos.cds_Detalle_AlquilerMonto_Alquiler.AsString:=
     modulo_datos.cds_AlquilandoMonto.AsString;
 
   modulo_datos.cds_Detalle_AlquilerStatus_de_Proceso.AsString:='Alquilada';
   modulo_datos.cds_Detalle_Alquiler.Post;
   modulo_datos.cds_Detalle_Alquiler.ApplyUpdates(0);
   modulo_datos.cds_Detalle_Alquiler.Refresh;
   modulo_datos.cds_Alquilando.Next;
 end;
Debe de haber alguna manera que según la dirección del Acess Violation se pueda ubicar directamente la línea donde se generó el error.


PD. Bueno no sé que tan explícito está pero por favor pregunta.

Última edición por dec fecha: 10-09-2005 a las 17:01:58. Razón: Encerrar el código fuente en la etiqueta [DELPHI]
Responder Con Cita
  #4  
Antiguo 10-09-2005
Avatar de sierraja
sierraja sierraja is offline
Miembro
 
Registrado: sep 2004
Posts: 281
Poder: 22
sierraja Va por buen camino
Question

Sólo quiero poder utilizar debug para ubicar los errores a traves de sus direcciones. Cómo se hace....
Responder Con Cita
  #5  
Antiguo 10-09-2005
Avatar de jmariano
jmariano jmariano is offline
Miembro
 
Registrado: jul 2005
Posts: 376
Poder: 21
jmariano Va por buen camino
Según lo que comentas, parece que estás intentando acceder a un objeto que no ha sido inicializado o que fué destruido (es por eso lo de el error "Access Violation"). Te aconsejo visitar la siguiente dirección donde verás un excelente tutorial de como tratar con este tipo de errores: http://delphi.about.com/od/objectpas.../aa052201b.htm

Saludos!
Responder Con Cita
  #6  
Antiguo 10-09-2005
Avatar de sierraja
sierraja sierraja is offline
Miembro
 
Registrado: sep 2004
Posts: 281
Poder: 22
sierraja Va por buen camino
Thumbs up

JMariano, excelente aporte, muy oportuno y me has sacado de las tinieblas, muchas gracias.... Problema resuelto.
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 11:22:20.


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