Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Conexión con bases de datos (https://www.clubdelphi.com/foros/forumdisplay.php?f=2)
-   -   Delphi 2010 DLL con Datamodule y ADO (https://www.clubdelphi.com/foros/showthread.php?t=75739)

FOV2001 15-09-2011 20:50:29

Delphi 2010 DLL con Datamodule y ADO
 
Amigos del foro saludos desde Buenos Aires.

Imagino que esta pregunta es un tanto basica, pero luego de rebuscar, ya no tengo donde recurrir y espero puedan ayudarme.

El contexto es asi:

Una DLL que crea un formulario, y varios Datamodule para comunicarse con diferentes perifiericos.

Ademas, debo guardar datos en una base de datos.

El datamodule que creo, tiene adentro un ADOConnection.

Cuando inicializo ese Datamodule en particular, se friza todo y se RECUELGA.

Les paso el codigo y de ahi en más quedo en sus manos para una solucion.

function CreateDATABASE(): Longint;
begin
try
Application.CreateForm(TMod_Base_Facturas, Mod_Base_Facturas);
Result := 0;
except
Result := -1;
end;
end;

Function DestroyDATABASE() : Longint; // Para Delphi y VB
begin
try
if Assigned(Mod_Base_Facturas) then
begin
FreeAndNil(Mod_Base_Facturas);
Application.ProcessMessages();
end;
Result := 0;
except
Result := -1;
end;
end;

initialization
CreateDataBase;

finalization
DestroyDatabase;

end.

De más está decir que toda ayuda será SUPER AGRADECIDA.

Fernando

Caral 15-09-2011 21:04:42

Hola
No veo donde se crea el datamodule.
No veo tampoco donde se crea el adoconnection.
No veo tampoco donde se conecta el ado con la bd.
Si existe todo esto, que no veo, el problema me da la impresion es que el ado no encuentra la bd.
Saludos

FOV2001 15-09-2011 21:13:09

Cita:

Empezado por Caral (Mensaje 412265)
Hola
No veo donde se crea el datamodule.
No veo tampoco donde se crea el adoconnection.
No veo tampoco donde se conecta el ado con la bd.
Si existe todo esto, que no veo, el problema me da la impresion es que el ado no encuentra la bd.
Saludos

Hola CARAL, gracias GRACIAS por responder.

El Datamodule por gracioso que parezca es justamente TMod_Base_Facturas, y lo creo en el Initialization de la DLL

Asi vengo haciendo con los otros elementos de este proyecto y hasta ahora funcionan. Es posible que eso sea fruto de la casualidad.

El ADOConnection esta adentro del DM llamado TMod_Base_Facturas

No se si eso te aclara algo.

Fernando

oscarac 15-09-2011 21:13:43

Cita:

Empezado por FOV2001 (Mensaje 412264)
De más está decir que toda ayuda será SUPER AGRADECIDA.

Fernando

mmmmmm
se que no aporto nada con este mensaje a la solucion del problema... pero
eso me confunde Agradecida (femenino) y de nombre Fernando? :eek::eek::eek:

FOV2001 15-09-2011 21:19:02

Cita:

Empezado por oscarac (Mensaje 412267)
mmmmmm
se que no aporto nada con este mensaje a la solucion del problema... pero
eso me confunde Agradecida (femenino) y de nombre Fernando?

No se si responderte educadamente o faltarte el respeto.

Por educacion, solo te digo: Por que no lees la frase completa?

TODA AYUDA sera SUPER AGRADECIDA, la AYUDA es la que se agradece, no YO.

Llegas a comprender? o tengo que explicar más?

Fernando

Caral 15-09-2011 21:19:36

Hola
Cita:

Empezado por oscarac (Mensaje 412267)
mmmmmm
se que no aporto nada con este mensaje a la solucion del problema... pero
eso me confunde Agradecida (femenino) y de nombre Fernando? :eek::eek::eek:

Para mi esta bien aplicado el termino:
Cita:

Empezado por FOV2001 (Mensaje 412264)
...
De más está decir que toda ayuda será SUPER AGRADECIDA.
Fernando

Las dos son palabras en femenino.
Marcos nos dira algo mas, pero estoy casi seguro que esta bien empleado el temino.
Saludos.
PD: Ve a tomarte un café y un descanso amigo oscarac, como que lo necesitas..:D;)

oscarac 15-09-2011 21:23:25

Cita:

Empezado por Caral (Mensaje 412270)
Hola

Para mi esta bien aplicado el termino:

Las dos son palabras en femenino.
Marcos nos dira algo mas, pero estoy casi seguro que esta bien empleado el temino.
Saludos.
PD: Ve a tomarte un café y un descanso amigo oscarac, como que lo necesitas..:D;)

Jesus Maria y Jose... no sabes que verguenza acabo de pasar... disculpame Fernando por favor... (aunque mi comentario no fue ofensivo)

es todo por hoy de mi parte..... y tienes razon caral... hoy no hubo café por eso estoy algo distraido, hasta mañana !!! :(

Caral 15-09-2011 21:26:20

Hola
En realidad poco puedo ayudarte, mucho menos con mi experiencia.
Con todo, sigo con la duda de como conectas el adoconnetion a la bd, me imagino que igualmente en tiempo de ejecución, pero no lo puedo saber.
Tranquilo, pronto vendrá alguien que si sepa de esto, paciencia.
Saludos

Caral 15-09-2011 21:27:48

Hola
Vamos amigo, que no es para tanto.
A todos nos ha pasado alguna vez.
Saludos

FOV2001 15-09-2011 21:33:45

Cita:

Empezado por FOV2001 (Mensaje 412266)
Hola CARAL, gracias GRACIAS por responder.

El Datamodule por gracioso que parezca es justamente TMod_Base_Facturas, y lo creo en el Initialization de la DLL

Asi vengo haciendo con los otros elementos de este proyecto y hasta ahora funcionan. Es posible que eso sea fruto de la casualidad.

El ADOConnection esta adentro del DM llamado TMod_Base_Facturas

No se si eso te aclara algo.

Fernando

Caral, no se si sumo algo diciendo que si corro la dll, llamada dinamicamente via LoadLibrary, con el datamodule, sin el ADOConnection, anda todo perfectamente. Basta poner el ADOConnection y se cuelga.

cualquier idea SUMA

Gracias

Caral 15-09-2011 21:37:45

Hola
Me sigue dando la impresión de que el adoconnection no encuentra la BD.
Me imagino que generas el adoconnection, le colocas los parametros de la bd, la ruta, el provider etc y lo activas.
Si todo es correcto, me pregunto:
Cambiaste de dirección la BD ?.
Estas seguro que se conecta bien ?.
No se, solo opino..
Saludos

FOV2001 15-09-2011 22:40:37

Cita:

Empezado por Caral (Mensaje 412275)
Hola
Me sigue dando la impresión de que el adoconnection no encuentra la BD.
Me imagino que generas el adoconnection, le colocas los parametros de la bd, la ruta, el provider etc y lo activas.
Si todo es correcto, me pregunto:
Cambiaste de dirección la BD ?.
Estas seguro que se conecta bien ?.
No se, solo opino..
Saludos

Caral gracias por tu generosidad en brindarme tu tiempo.
El tema es aun mas loco y mas basico.
al ADOCOnnection no le puse ningun parametro. Ni siquiera lo activo, Tampoco lo tengo configurado para autoopen.

NADA, simplemenmte lo tiro dentro del datamodule, verifico que este apagado, compilo y llamo a la dll. FRIZADO como el mejor.

De cualquier forma, voy a chequear que tenga algo configurado, por las dudas, el diablo meta la cola.

Les aviso.

GRACIAS

Fernando

FOV2001 15-09-2011 23:07:04

<RESUELTO> MUY SUCIO pero por lo menos anda.

La creacion del modulo la hago fuera del initilization, publicando una funcion que crea los DATAMODULE con bases de datos.

Fue la unica forma de que dejara de frizarse.

si alguien tiene una forma mas "FORMAL", sera agradecida.

De cualquier modo, gracias por la ayuda.

Fernando


La franja horaria es GMT +2. Ahora son las 05:24:11.

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