Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   OOP (https://www.clubdelphi.com/foros/forumdisplay.php?f=5)
-   -   Pasarle un objeto a una DLL (https://www.clubdelphi.com/foros/showthread.php?t=24270)

adlfv 13-08-2005 16:31:26

Pasarle un objeto a una DLL
 
Hola a todos.

Tengo una aplicación que funciona con un bd en MySQL. Para el manejo de la BD, tengo un TDataModule en el cual se encuentran todas las tablas, datasources y todo eso.

Me he dado cuenta que puedo dividir la aplicación en modulos, pues los mantenimientos de las tablas los he logrado hacer independientes del resto de la aplicación, con lo cual... los quiero meter en una DLL por si tengo que actualizar o lo que sea, sólo modifico la DLL y ya.

Al llamar a la DLL, tengo un procedimiento (exportado) Inicializar(DataModule: Pointer; Global: Pointer). Ambos parámetros son de tipo TDataModule, y necesito pasarle esos objetos a la DLL, o bien, decirle "donde" estan, para poder acceder a los datos.

He probado como datos normales (enteros, reales...) así con el tipo, y leyendolo en la DLL, y no funciona. También probé como punteros, y tampoco funciona.. Me da error: Access violation at address 05328538 in module 'Mantenimientos.dll'. Read of address 00000236.

Alguien me puede por favor orientar sobre cómo hacer esto.

Muchas gracias de antemano.

Un cordial saludo.

PD: Si pueden ponerme código de ejemplo, o indicarme donde conseguirlo sería mejor...

delphi.com.ar 15-08-2005 23:37:29

Para compartir clases y objetos entre librerías te recomiendo utilizar BPL´s... que tienen arquitectura de DLL pero tienes un interesante juego de funciones para poder importar las clases. Te recomiendo leerte: http://community.borland.com/article...,27178,00.html

Saludos!

adlfv 19-08-2005 19:51:32

Gracias por contestar...

Ahora estoy vuelto un 8 con los paquetes :confused:

Voy intentarlo un poco más y sino voy a poner otro post a ver si alguien me puede ayudar...

lafirma 19-08-2005 20:42:49

Bueno, echale un vistazo a este articulo


La franja horaria es GMT +2. Ahora son las 21:06:37.

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