Ver Mensaje Individual
  #1  
Antiguo 23-03-2016
Bant Bant is offline
Miembro
NULL
 
Registrado: mar 2016
Posts: 19
Reputación: 0
Bant Va por buen camino
Error Exception EAccessViolation

Saludos colegas, denuevo vuelvo con un error xDD parece que les caigo bien y siempre me aparecen.
Ando usando Delphi 7 y tengo Windows 8.1 de 64 bits.
Ando creando un juego como veran a continuacion y tiene el siguiente codigo.


Código Delphi [-]
program PJuego;

uses
  Windows,
  Dialogs,
  SysUtils,
  UJuego in 'UJuego.pas',
  UArcade in 'UArcade.pas';


{$R *.res}
var
Teclado : TTeclado;
Temporizador : TTemporizador;


begin
  InicializarSDL;
  ModoVideo( 640, 480, 16, True );
  Teclado := TTeclado.Create;
  Temporizador := TTemporizador.Create;
  CargarSprites;

  while not bSalir do
  begin
    Temporizador.Actualizar;

    if Temporizador.Activado then
    begin
      Teclado.Leer;
      DibujarSprites;
      ActualizarPantalla;
      Temporizador.Incrementar;
      ControlarEventos;
    end
    else
      Temporizador.Esperar;
  end;

  DestruirSprites;
  Temporizador.Free;
  Teclado.Free;
  FinalizarSDL;
end.

Al ejecutarlo me da el error Exception EACcessViolation in module... at 000527CB. Access violation ant address 004527CB.... Read of address 000000006.El problema me da cuando escribo la linea del procedure
Código Delphi [-]
ControlarEventos;
que se encuentra en la unidad UArcade.pas el programa me corre sin esta pero ya saben.. no hara el proceso xD.

He indagado en internet y segun entendi cuando el address tiene 00000 es que el proceso al que intento llamar no ha sido creado o ya ha sido destruido. Pero reviso en el codigo y a mi parecer no le veo el error. Descargue madExcept que dicen que es un buen rastreador de excepciones y que las maneja pero no encuentro alguna guia para instalarlo en Delphi, aunque como es la version mas reciente se instala ''automaticamente'', o en mi caso no funciona. Por favor quisiera un poco de su sabiduria una vez mas!!
Responder Con Cita