![]() |
![]() |
| Paypal | FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
|
|
#1
|
|||
|
|||
|
Tengo en todos los Forms y nunca me habia dado problemas...
y en ese caso me daria error cada vez que cierro un form no?? De todas formas he hecho esto, y no se si esta bien del todo... En el Form1 en el evento ONCLOSE Pongo lo siguiente Código:
procedure TForm1.FormClose(Sender: TObject; var Action: TCloseAction); begin DataModule1.destroy; end; end. No se que he tocado mas pq he tocado muchas cosas. ![]() |
|
#2
|
||||
|
||||
|
Además de lo ya explicado por cadetill... te recomiendo no llamar directamente al método (destructor) Destroy de ningun componente. No veo porque destruyes el DataModule1 alli... si form1 es el form principal, y Application es el owner de DataModule1, eso también provocará un fallo, pues un instante después, Application tratará de destruirlo de nuevo.
En conclusión, quitá la llamada a Destroy. Por otro lado, si realmente te corresponde a vos destruir el DataModule, mejor usá su método Free, que llamará a Destroy. Es una recomendación de los diseñadores de la VCL que yo me he acostumbrado a seguir. Hasta luego. ![]()
__________________
Juan Antonio Castillo Hernández (jachguate) Guía de Estilo | Etiqueta CODE | Búsca antes de preguntar | blog de jachguate |
|
#3
|
|||
|
|||
|
Gracias por la aclaracion, con Datamodule1.free tampoco me da el error asi que si es una recomendacion tambien la utilizare.
No puedo evitar el destruir y no entiendo pq ya que si lo quito me da el dichoso error. Muchas gracias |
|
#4
|
||||
|
||||
|
Pues lo único que me queda es recomendarte, en primer lugar, que investigues un poco sobre el tema del owner y la destrucción automática de objetos por parte de este. Luego de haber comprendido como funciona el asunto, que revises minuciosamente tu código, para evitar que el programa sea una caja de pandora que ande dando violaciones de acceso a memoria por alli.
Hasta luego. ![]()
__________________
Juan Antonio Castillo Hernández (jachguate) Guía de Estilo | Etiqueta CODE | Búsca antes de preguntar | blog de jachguate |
|
#5
|
|||
|
|||
|
Hombre el programa tiene bastante para ser el primero, y nunca habia tenido este problema.
Seguire tus indicaciones. Gracias |
![]() |
| Herramientas | Buscar en Tema |
| Desplegado | |
|
|
|