Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   IBDAC: Query in DLL verwenden (https://www.delphipraxis.net/162423-ibdac-query-dll-verwenden.html)

hoika 22. Aug 2011 16:41

Datenbank: Firebird • Version: 2.0 • Zugriff über: IBDAC

IBDAC: Query in DLL verwenden
 
Hallo #,

ich rufe eine DLL-Funktion auf und übergebe ihr eine "connected" TIBCQuery.
Klappt solange ich die Query nicht ändere.
Mache ich das knallt es (Access Violation wegen WideStrings).
FastMM4 sagt noch, dass ich einen String freigeben will,
der von einer anderen FastMM4-Instance erzeugt wurde.

Zweck der Sache ist es, das Connect in der DLL selbst zu vermeiden.

Bei der BDE konnte man das Handle der Verbindung (TDataBase) übergeben,

Wie bekomme ich das mit IBDAC hin ?


Danke

Bernhard Geyer 22. Aug 2011 16:44

AW: IBDAC: Query in DLL verwenden
 
Verwende gemeinsame Laufzeitpackages.

hoika 22. Aug 2011 16:51

AW: IBDAC: Query in DLL verwenden
 
Hallo,

hm, hm ?
Dann muss ich ja die App komplett umbauen.
Kann ich nicht irgendein HandleXY übergeben ?


Heiko

Bernhard Geyer 22. Aug 2011 16:58

AW: IBDAC: Query in DLL verwenden
 
Sollte es nur Strings sein so müsste man FastMM so einsetzen können das dies gemeinsam verwaltet werden.

hoika 22. Aug 2011 18:37

AW: IBDAC: Query in DLL verwenden
 
Hallo,

das Dumme ist, es handelt sich schon um das einfache
Delphi-Quellcode:
SQL.Close;
SQL.Add('');
SQL.ParamByName;
Heiko

mkinzler 22. Aug 2011 18:52

AW: IBDAC: Query in DLL verwenden
 
Schon mal andersrum versucht. Dll übermittelt nur die Abfrage ans Hauptprogramm

hoika 22. Aug 2011 19:25

AW: IBDAC: Query in DLL verwenden
 
Hallo,

geht leider nicht.
Es handelt sich um eine Art Plugin mit Standard-Schnittstelle,
wie das Plugin an die Daten kommt ist dem Hauptprogramm egal.

Das eigentliche Problem ist ja, dass ich verhindern will,
dass bei jedem Aufruf eine Connection erzeugen und das Connect machen muss.

Ich werde mal ausprobieren, ob die DLL eine eigene Connection haben kann,
die beim ersten Methodenaufruf erzeugt wird und das Connect macht.

Bei der BDE war das noch einfacher.


Danke


Heiko


Alle Zeitangaben in WEZ +1. Es ist jetzt 19:01 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz