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 02-02-2007
cesar_picazo cesar_picazo is offline
Miembro
 
Registrado: ene 2004
Posts: 65
Poder: 21
cesar_picazo Va por buen camino
Como cerrar una aplicacion sin mensajes de error

Utilizo delphi 6

Buenas tardes hace algunos dias le agregue a mi aplicacion una libreria

utilizando
DLLHandlecat:= LoadLibrary('libre100.DLL');

al terminar la aplicacion
FreeLibrary(DLLHandlecat);

de esta forma cargue como 4 librerias diferentes, al cerrar la aplicacion con

Applitacion.terminate;

Me envia un mensaje de error, el cual no se como eliminarlo al cerrar la aplicacion, access violation at 0x40004af0: read of address 0x02a36e1c' Process Stopped. Use Step or Run to continue.

Al terminar la aplicacion me envia este mensaje y si lo compilo desde delphi me envia a Delphi con un cuadro Gris que dice CPU y presiono F8 y me envia NTdll.ntdllraiseException y se cicla en este mensaje.

Agradeceria si alguien me puede ayudar.

Nota: si no cargo las dlls con loadlibrary no me envia este mensaje de error.
Responder Con Cita
  #2  
Antiguo 02-02-2007
Avatar de dec
dec dec is offline
Moderador
 
Registrado: dic 2004
Ubicación: Alcobendas, Madrid, España
Posts: 13.107
Poder: 34
dec Tiene un aura espectaculardec Tiene un aura espectacular
Hola,

En mi opinión el tema no debe enfocarse en cómo cerrar (forzar el cierre) de una aplicación sin que esto produzca errores, sino en solucionar los errores que se producen al tratar de cerrar la aplicación. Debería ser un poco más explícito en lo que hacen las librerías que usas, en cuál es su cometido y cómo estás utilizándolas.

Las "violaciones de acceso" suelen darse (pero no estoy cien por cien seguro de que sea así siempre) por que se trata de acceder a un segmento de memoria inválido. Por ejemplo, si tratas de cambiar la propiedad "Caption" de un "botón" que no ha sido creado aún o que ya fue destruído... te encontrarías con una "violación de acceso".
__________________
David Esperalta
www.decsoftutils.com
Responder Con Cita
  #3  
Antiguo 02-02-2007
Avatar de Lepe
[Lepe] Lepe is offline
Miembro Premium
 
Registrado: may 2003
Posts: 7.424
Poder: 28
Lepe Va por buen camino
Lee la ayuda de LoadLibrary y FreeLibrary, allí te dirán las excepciones que saltaran o como interceptarlas... por ejemplo:
Código Delphi [-]
DLLHandlecat:= LoadLibrary('libre100.DLL');
if DLLHndlecat = 0 then
  // NO  se ha cargado correctamente.

Ya que da fallo en esa parte, deberías poner atención a esas rutinas. Incluso antes de llamar a Application.Terminate (que es una interrupción abrupta de tu programa), ordena liberar las bibliotecas.

Saludos
__________________
Si usted entendió mi comentario, contácteme y gustosamente,
se lo volveré a explicar hasta que no lo entienda, Gracias.
Responder Con Cita
  #4  
Antiguo 05-02-2007
Pandre Pandre is offline
Miembro
 
Registrado: may 2003
Ubicación: San Bartolomé de la Torre, Huelva (España)
Posts: 35
Poder: 0
Pandre Va por buen camino
Buenasss

podrías manejar el cierre de las librerías en la sección finalization de la unidad principal, por ejemplo:

Código Delphi [-]
·
·
·
initialization

finalization
  
  // poner aquí la liberación de las librerías

end.

De esa manera al cierre de la aplicación por el metodo que sea (siempre que no sea matando el proceso), se ejecutará la liberación de las librerías.

Saludos
__________________
Un cordial saludo.

~~~~~~~~~~~~~~~~~~
José A. Gómez Martín
pandre@arsystel.com
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
Error al cerrar mi aplicación busraglu Conexión con bases de datos 2 29-01-2007 21:55:09
Mensaje de Error al Cerrar Aplicacion pikachuy SQL 2 09-05-2006 15:26:50
Error al cerrar mi aplicación Albano OOP 1 08-12-2005 20:42:32
Error al cerrar la aplicación en RTL90.bpl Jesús Pena Varios 0 24-11-2005 11:27:08
Error al cerrar la aplicacion!! Waldo API de Windows 2 22-11-2003 00:39:12


La franja horaria es GMT +2. Ahora son las 22:35:18.


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