Ver Mensaje Individual
  #1  
Antiguo 23-05-2012
jpgonzalez jpgonzalez is offline
Miembro
 
Registrado: feb 2010
Posts: 121
Reputación: 15
jpgonzalez Va por buen camino
Acces Violation al crear un Form

Buenas para todos...

Hace poco empece a migrar las aplicaciones que tengo en Delphi 5 hacia Delphi XE, y en una de las mismas me sale un "acces violation at address..." al crear un form.
El codigo es el que sigue:

Código Delphi [-]
   //action que se ejecuta al pulsar el BtnUsuarios que la tiene asociada, y abre el Form de usuarios
   procedure TFrmMain.actABMUsuariosExecute(Sender: TObject);  
   begin
      FrmABMUsuarios:= TFrmABMUsuarios.Create(self);
      FrmABMUsuarios.ShowModal;
      FrmABMUsuarios.Free;
   end;

   //action que se ejecuta al pulsar el BtnPerfilUsuario que la tiene asociada, y abre el Form de perfiles de usuarios
   procedure TFrmMain.actABMPerfildeUsuarioExecute(Sender: TObject);  
   begin
      FrmABMPerfilDeUsuario:= TFrmABMPerfilDeUsuario.create(self);
      FrmABMPerfilDeUsuario.ShowModal;
      FrmABMPerfilDeUsuario.Free;
   end;

Lo que pasa es que en el primer click en BtnUsuarios el FrmABMUsuarios se muestra perfectamente.
Si quiero pulsar nuevamente el BtnUsuarios o el BtnPerfilUsuario me tira "access violation".

Probe cambiando el create(self), create(nil) y create(application)...
Probe reiniciando la maquina por si la memoria habia quedado mal...
Sinceramente no se que es lo que pasa, ni porque tira ese error, si debbugueando veo que pasa por el FrmABMUsuarios.Free.

Por ultimo, cuando cierro el form (click derecho - close page), me tira un "invalid pointer operation".

Bueno, espero haber sido claro... desde ya muchas gracias... abrazo!!!

Última edición por jpgonzalez fecha: 23-05-2012 a las 18:14:45.
Responder Con Cita