![]() |
Datenbank: Firebird • Version: 2.0 • Zugriff über: ZeosLib
Datenbankverbindung an ddl übergeben
Hallo Leute,
ich versuche mal mein Problem zu erklären. Ich habe eine Software zur Mitgiederverwaltung geschrieben, diese verwendet dll als Plugins. Die dll enthalten alle Formulardaten. Das Plugin wird dann beim Login geladen. Mein Problem ist jetzt das ein Plugin auch Daten aus der Datenbank mit einer Query verarbeiten soll. Die Datenbankverbindung (ZConnection) ist allerdings im Hauptprogramm auf dem MainFormular. Wie kann ich die Datenbankverbindung an die dll übergeben um damit arbeiten zu können? Grüße Sebastian |
Re: Datenbankverbindung an ddl übergeben
Hallo,
gar nicht, jedes Plugin benutzt seine eigene ZConnection. So mache ich das. Das bissel Zeit für den 2. Connect ist mir lieber, als ewig Speicherfehler zu suchen (die bei DLL-Übergabe passieren könnten). Wenn du das wirklich willst, wie genau liegt das Problem? Übergib die ZConnection als Parameter an die aufzurufende DLL-Funktion. Vorher ein ZConnection.Commit machen. Ich rate aber wie schon gesagt davon ab. Heiko |
Re: Datenbankverbindung an ddl übergeben
Hallo,
ich würde das ungern über eine 2. ZConnection machen. Wie muss ich die ZConnection dann an die DLL übergeben? Auch wenn es Gefahren und Speicherfehler birgt. Grüße Sebastian |
Re: Datenbankverbindung an ddl übergeben
Hallo,
wie sieht denn dein DLL-Aufruf aus ? Ich mach das so
Delphi-Quellcode:
Client
procedure ExecuteForm1(theConnection: TZConnection); begin LoadLibrary GetProcAddress ... Dll_Methode(theConnection); end; DLL procedure Dll_Methode(theConnection: TZConnection); export; var Form: TFormX; begin // create Form.ZConnection:= theConnection; end; Ein kleiner Tip, es nicht zu machen ;) ![]() #Update# ![]() Heiko |
Re: Datenbankverbindung an ddl übergeben
Zitat:
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 11:14 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz