Ver Mensaje Individual
  #4  
Antiguo 05-10-2006
Ivano Ivano is offline
Registrado
 
Registrado: mar 2005
Posts: 4
Reputación: 0
Ivano Va por buen camino
Por fin conseguí que funcionase pese a que no utilicé el componente que aparentemente tenía buena pinta, pos bién lo que hice no fue más que pasarle el objeto TDatabase a la segunda aplicación via parametro como un pointer(la segunda aplicación es una DLL).

Definición Aplicación A:

TFuncionCall = function(P: Pointer) ;
funcCall: TFuncionCall;

Llamada de Aplicación A -> Aplicación B:

@funcCall := GetProcAddress(HandleDLL, 'FuncionCall');
result := funcCall(DataModule1.DB1);

al llegar a esta segunda aplicación (Aplicación B) realizo los siguientes pasos:

DataModule2.DB2 := P;
if DataModule2.DB2.InTransaction then
begin
-----
end;

El resultante son dos aplicaciones con un componente TDatabase cada uno apuntando a la misma conexión. De esta forma puedes consultar el estado de la conexión desde las dos aplicaciones y el numero de licencias conectadas al motor es solo uno.

Gracias y hasta otra.
Responder Con Cita