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 23-10-2014
jose.ignacio.ve jose.ignacio.ve is offline
Miembro
 
Registrado: sep 2012
Posts: 79
Poder: 12
jose.ignacio.ve Va por buen camino
Problema de Access Violation en Delphi XE2

hola tengo un problema. tengo un sistema de Gestion de alumnos. la primera pantalla que se tiene que mostrar es la de inicio de sesion. tengo este codigo
Código Delphi [-]
program P_rujas;

uses
  Vcl.Forms,
  controls,
  Uprincipal in 'Uprincipal.pas' {fprincipal},
  Umod in 'Umod.pas' {fmodulo: TDataModule},
  Ualumnos in 'Ualumnos.pas' {FAlumnos},
  Ulistado_alumnos in 'Ulistado_alumnos.pas' {flistado_alumnos},
  Ureportes in 'Ureportes.pas' {freportes: TDataModule},
  Ulistado_usuarios in 'Ulistado_usuarios.pas' {flistado_usuarios},
  Uusuarios in 'Uusuarios.pas' {fusuarios},
  Ulogin in 'Ulogin.pas' {Flogin},
  Uclave in 'Uclave.pas' {fclave},
  Uprincipal1 in 'Uprincipal1.pas' {Fprincipal1};

{$R *.res}

begin
  Application.Initialize;
  Application.MainFormOnTaskbar := True;
  Application.CreateForm(TFprincipal1, Fprincipal1);
  if flogin.ModalResult = mrcancel  then
       Application.Terminate  ;



     Application.Run;


end.
los otros formularios tengo los creo a la hora de llamarlo. me da error con ese codigo. Cuando lo los creaba automaticamente no me daba error. en tiempo de ejecucion. Pero si el sistema esta abierto mas de un dia me un error que no se de que es.
Responder Con Cita
  #2  
Antiguo 23-10-2014
Avatar de nlsgarcia
[nlsgarcia] nlsgarcia is offline
Miembro Premium
 
Registrado: feb 2007
Ubicación: Caracas, Venezuela
Posts: 2.206
Poder: 21
nlsgarcia Tiene un aura espectacularnlsgarcia Tiene un aura espectacular
jose.ignacio.ve,

Cita:
...la primera pantalla que se tiene que mostrar es la de inicio de sesión...


Revisa esta información, específicamente el Msg #9
Espero sea útil

Nelson.
Responder Con Cita
  #3  
Antiguo 23-10-2014
jose.ignacio.ve jose.ignacio.ve is offline
Miembro
 
Registrado: sep 2012
Posts: 79
Poder: 12
jose.ignacio.ve Va por buen camino
gracias ya solucione eso. Estaba creando mal los formularios. pero ahora tengo un problema. al cerrar sesion necesito que me aparezca de nuevo la pantalla de inicio de sesion
y se cierre la pantalla principal.
Código Delphi [-]
Application.Initialize;
  Application.MainFormOnTaskbar := True;
  Application.CreateForm(Tfmodulo, fmodulo);
  Application.CreateForm(Tfprincipal, fprincipal);
  fprincipal1:=tfprincipal1.Create(nil);
  Fprincipal1.ShowModal;
  if Fprincipal1.ModalResult= mryes then
      begin
         Application.Run        ;
         Fprincipal1.Close;
         Fprincipal1.Free;

      end;
fprincipal1 es solo la pantalla de logeo, donde si la contraseña y el usuario son correctos me ejecuta la aplicacion. y m muestra la pantalla principal del sistema donde tiene un menu y dos botones
un es para cerrar sesion donde me deshabilita el menu y se me habilita un boton de inicio de sesion. Hasta ahi voy bien. Ahora yo quiero que al hacer clic en el boton de inicio de sesion me aparezca de nuevo la pantalla de logeo pero que a su ves se me cierre la ventana principal del sistema. Osea que vuelva como a comenzar desde un principio.
Responder Con Cita
  #4  
Antiguo 23-10-2014
Avatar de AgustinOrtu
[AgustinOrtu] AgustinOrtu is offline
Miembro Premium
NULL
 
Registrado: ago 2013
Ubicación: Argentina
Posts: 1.858
Poder: 15
AgustinOrtu Es un diamante en brutoAgustinOrtu Es un diamante en brutoAgustinOrtu Es un diamante en brutoAgustinOrtu Es un diamante en bruto
Que tal, te comento como lo trabajo yo:

Al iniciar la aplicacion, se crea el modulo de datos y el form de logeo tal como lo tenes vos

El usuario ingresa usuario y contraseña, si son correctos, hago algo como esto
Código Delphi [-]
...
Application.CreateForm(TFPrincipal, FPrincipal);
FLogin.Hide; // Nunca cierro este form, a menos que quiera cerrar la aplicacion
FPrincipal.ShowModal;
FPrincipal.Free;
...

Luego el boton de cerrar sesion:

Código Delphi [-]
FPrincipal.Close;
FLogin.Show;

Y si quiero cerrar la aplicacion lo que hago es:

Código Delphi [-]
FLogin.Close;

Evidentemente en la configuracion del proyecto el FLogin es el que esta declarado como "Main-Form"

Saludos!
Responder Con Cita
  #5  
Antiguo 23-10-2014
jose.ignacio.ve jose.ignacio.ve is offline
Miembro
 
Registrado: sep 2012
Posts: 79
Poder: 12
jose.ignacio.ve Va por buen camino
muchas gracias me ayudo mucho. ahora me podes sacar unas dudas? que hace el free? el hide y el close. cual es la diferencia. si bien lei muchos post pero no m saco la duda todavia. a que se refiere con destruir el formulario a liberar memoria? y cual es el mejor momento de liberar memoria? y que formularios los pongo en hide o close?
Responder Con Cita
  #6  
Antiguo 23-10-2014
Avatar de Caminante
Caminante Caminante is offline
Miembro
 
Registrado: oct 2010
Ubicación: Lima - Peru
Posts: 338
Poder: 14
Caminante Va camino a la fama
Hola

Lo ideal seria que el formulario principal no sea el de login. Lo que debes hacer es crear el form de login tu mismo y no dejar que se autocree.
Podrias poner por ejemplo:
Código Delphi [-]
var
 login:=Tfrmlogin;
begin
  Application.Initialize;
  login:=tfrmlogin.create(nil);
  try
  if login.showmodal=mrok then
  begin
  Application.CreateForm(TFrmPrincipal, FrmPrincipal);
  Application.Run
  end;
  finally
    login.free
  end;
end.

Saludos
Responder Con Cita
  #7  
Antiguo 24-10-2014
jose.ignacio.ve jose.ignacio.ve is offline
Miembro
 
Registrado: sep 2012
Posts: 79
Poder: 12
jose.ignacio.ve Va por buen camino
Muy bien ya termine. ahora solo necesito saber como hacer que la aplicacion solo se ejecute una vez. osea que si ya la tenes abierta a la aplicacion y le das doble clic al .exe no se abra otra vez?
Responder Con Cita
  #8  
Antiguo 24-10-2014
Avatar de AgustinOrtu
[AgustinOrtu] AgustinOrtu is offline
Miembro Premium
NULL
 
Registrado: ago 2013
Ubicación: Argentina
Posts: 1.858
Poder: 15
AgustinOrtu Es un diamante en brutoAgustinOrtu Es un diamante en brutoAgustinOrtu Es un diamante en brutoAgustinOrtu Es un diamante en bruto
Fijate si esto sirve
http://www.clubdelphi.com/trucos/index.php?id=169
Responder Con Cita
  #9  
Antiguo 30-10-2014
jose.ignacio.ve jose.ignacio.ve is offline
Miembro
 
Registrado: sep 2012
Posts: 79
Poder: 12
jose.ignacio.ve Va por buen camino
hola buenas tardes ya termine la aplicacion! esta todo listo solucione todos los problemas. ahora no puedo hacer que se ejecute en otra maquina.
utilizo Mysql hice un instalador para mi aplicacion que tenga el .exe y la mysqllib.dll instale el mysql en otra maquina pero me aparece un error algo de localhost ya busque por todas partes y n puedo solucionar eso. alguna ayuda.
Responder Con Cita
  #10  
Antiguo 30-10-2014
Avatar de Casimiro Notevi
Casimiro Notevi Casimiro Notevi is offline
Moderador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.038
Poder: 10
Casimiro Notevi Tiene un aura espectacularCasimiro Notevi Tiene un aura espectacular
Cita:
Empezado por jose.ignacio.ve Ver Mensaje
hola buenas tardes ya termine la aplicacion! esta todo listo solucione todos los problemas. ahora no puedo hacer que se ejecute en otra maquina.
utilizo Mysql hice un instalador para mi aplicacion que tenga el .exe y la mysqllib.dll instale el mysql en otra maquina pero me aparece un error algo de localhost ya busque por todas partes y n puedo solucionar eso. alguna ayuda.
Lee esto
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

Temas Similares
Tema Autor Foro Respuestas Último mensaje
ZQuery Problema de Access Violation JerS Conexión con bases de datos 3 15-07-2011 08:43:17
problema con access violation david_uh Varios 6 07-07-2007 22:52:37
Problema de Access Violation en Delphi 7 nlsgarcia API de Windows 5 20-02-2007 02:58:07
Problema de Access Violation johurgi Varios 3 18-07-2006 19:04:58
Problema con Quick report 'Access Violation at address 00575B9B in module' danielcordovahe Varios 3 13-05-2005 00:51:08


La franja horaria es GMT +2. Ahora son las 11:02: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