Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Otros entornos y lenguajes > C++ Builder
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 10-07-2008
Luzma Luzma is offline
Miembro
 
Registrado: abr 2006
Posts: 26
Poder: 0
Luzma Va por buen camino
Usar TDataModule de un .exe en un DLL

Hola a todos.

Estoy creando una aplicación que calcula algunas estadísticas de los alumnos de una escuela. Todo funciona de maravilla pero una escuela quiere que el programa tenga funciones adicionales que no están contempladas en el proyecto original.

Para hacer esto y después no complicarme la vida he decidido meter todas estas nuevas funciones en un DLL pero tengo un problema así que necesito algunas ideas y sugerencias.

En el .exe hay un DataModule que se encarga de establecer la conexión con la base de datos (Firebird) y me gustaría que esa misma conexión que se establece en el .exe se utilice en la DLL para no tener que volver a conectarme.

He intentado lo siguiente:

[exe]
---DataModule.h
---DataModule.cpp
[dll]
---form1.cpp
---form1.h

En form1.cpp (es la ventana que se encarga de mostrar los resultados) he incluido:

Código:
#include "..\exe\DataModule.h"
y con eso puedo enlazar los querys que se encuentran en form1 con la base de datos del DataModule pero no puedo utilizar las funciones que se encuentran en el DataModule porque me aparece un error (Unresolver external...)

Seguramente eso del #include no sea la manera correcta para enlazar el DataModule pero no se me ocurrió otra.

¿Alguna idea de cómo hacer el enlace y poder utilizar las funciones del DataModule en el dll?

Muchas gracias por su ayuda y un saludo para todos.
Responder Con Cita
  #2  
Antiguo 10-07-2008
Avatar de ContraVeneno
ContraVeneno ContraVeneno is offline
Miembro
 
Registrado: may 2005
Ubicación: Torreón, México
Posts: 4.738
Poder: 23
ContraVeneno Va por buen camino
En este enlace, viene explicado como cargar paquetes de manera dinámica (BPL), es un ejemplo en Delphi, pero seguro lo puedes utilizar en builder (en lugar de archivos DCP, serían archivos DCI).

En esa página en la parte de "Ejemplos prácticos" (Practical examples) puedes ver que el tercer ejemplo hace exactamente eso que tu quieres. Un DataModule que puedas usar tanto en la aplicación como en un dll. Al final, puedes descargar el código del ejemplo que explica.

Esto hace que cuando tu crees el DataModule desde la aplicación, con la conexión y configuración que tu digas, ya estará listo para la DLL (o BPL).
__________________


Última edición por ContraVeneno fecha: 10-07-2008 a las 23:52:49.
Responder Con Cita
  #3  
Antiguo 14-07-2008
Luzma Luzma is offline
Miembro
 
Registrado: abr 2006
Posts: 26
Poder: 0
Luzma Va por buen camino
Muchas gracias, voy a probarlo.
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
Acceso a TTable directo en Quickreport o en TDataModule csalonica OOP 0 17-06-2008 16:56:41
Problema de Tdatamodule y Packges Efren2006 OOP 0 04-06-2008 17:35:47
Usar un TDataModule compartido entre un ejecutable y una dll Luzma Conexión con bases de datos 1 18-07-2007 01:37:25
Obtener todos los datasets de un tdatamodule jlrbotella Conexión con bases de datos 3 18-05-2007 08:59:25
Com usar TDataModule? omar_e_rc Varios 1 19-05-2005 22:28:55


La franja horaria es GMT +2. Ahora son las 11:33:57.


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