|
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.
|