![]() |
Error con AdoQuery y 2 Form
Hola.
He creado una pequeña aplicación para uso propio que tira de MySql para guardar una lista de Archivos de respaldo en DVD. :) Hasta ahora tenía un form principal y un DataModule. En este último un método que es que uso para recoger y guardar datos en la tabla.
El problema viene cuando al crear una nueva form donde obtengo una lista de archivos agrupados por categorías con el núm de elementos:
Aquí va todo correctamente, se muestran las categorías y todo. Pero tras cerrar esta form, cuando hago cualquier nueva consulta desde la form principal da un error de "Access Violation at address..." Esto pasa siempre que invoco al form de categorías. Y pasa al intentar cerrar el AdoQuery para una nueva consulta. ¿ que puede ser ? He mirado todo, que no se quede abierto ningun DataSet, que la form de categorías se libere tras cerrarla y no doy con el problema. |
Hola Cecilio, el error creo que te da por esta parte:
Aquí le pasas un dataset como parametro y cuando haces tu consulta con adq le asignas a ds, supongo que adq es un componente que debe estar en tu formulario o tu dataModule.
Y aquí despues de llamar a GetSql liberas ds, pero como en tu metodo le has asignado adq a ds, ambos estan apuntando a la misma dirección de memoria por lo tanto, si liberas uno se libera también el otro. Y al hacer nuevamente la llamada como no estas creando Adq en ejecución, te da el error del AccessViolation.
Porque no trabajas directamente sobre el DataSet que le mandas por parametro.
Saluditos |
Gracias caro
A simple vista creo que tienes razón, no me he dado cuenta que al liberar uno lo hacía con el otro. Voy a probarlo. Sinceramente Gracias. |
| La franja horaria es GMT +2. Ahora son las 12:02:15. |
Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi