Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   Delphi Anwendung mit Firebird - was deployen? (https://www.delphipraxis.net/193676-anwendung-mit-firebird-deployen.html)

ralfiii 28. Aug 2017 17:12

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

Anwendung mit Firebird - was deployen?
 
Hallo!
Meine Anwendung nutzt Firebird, gegenwärtig in Version 2.5.5
Beim normalen Deployen wird Firebird (wenn nötig) am Kundenrechner mit Standardeinstellungen installiert, dann die Anwendung.
Nun bin ich drüber gestolpert, dass die gds32.dll (die ich ja indirekt zum Zugriff auf Firebird nutze) eine Kopie der fbclient-DLL ist, und nur "aus legacy-Gründen für alte Anwendungen" in's system32-Verzeichnis kopiert wird.

Was ist gute Praxis?
Soll ich
a.) Das so machen wie gehabt
b.) Die fbclient-DLL in system32-Verzeichnis nutzen (wobei ich da natürlich darauf achten muss, dass die auch installiert wird)
c.) mit meiner Anwendung eine eigene Kopie der fbclient-DLL mitdeployen?

Ich frage, weil bei gerade bei einem Kunden Probleme auftraten, der Firebird (von einer Software eines anderen Herstellers genutzt) installiert hatte, aber mit der "/NOGDS32" Option, dh die gds32-DLL war für unsere Anwendung nicht zu finden.

Danke!

mkinzler 28. Aug 2017 17:26

AW: Anwendung mit Firebird - was deployen?
 
fbclient im Anwendungsverzeichnis.

haentschman 28. Aug 2017 17:28

AW: Anwendung mit Firebird - was deployen?
 
Liste der Anhänge anzeigen (Anzahl: 1)
Moin...:P

Persönlich verlasse ich mich nicht darauf wer was installiert...alles wird mitgeliefert. :thumb: Bei meinen Anwendungen gibt es immer, siehe Bild, mehrere Ordner in den Benutzerdaten. Dort liegt die fbclient.dll. Die Anwendung muß nur dort nachschauen... Fertsch. :zwinker:

[meine Meinung]
A: Die Serverinstallation nach Standard.
B: Eher schlecht.
C: Verlasse dich nur auf dich selbst...Mitliefern!

:wink:

hoika 28. Aug 2017 21:58

AW: Anwendung mit Firebird - was deployen?
 
Hallo,
ich werfe mal die embedded Variante von Firebird in die Mitte.

ralfiii 29. Aug 2017 15:15

AW: Anwendung mit Firebird - was deployen?
 
Hm. Ok, danke.
Wenn ich nun die fbclient-DLL mitliefere, muss ich da aufpassen:
*) Was wenn meine DLL aus einer neueren/älteren firebird-version kommt als die am Rechner installierte?
*) Was wenn ich eine 64bit DLL deploye, aber die 32-bit Version von firebird installiert ist? (oder umgekehrt)

...oder gibt's sonst noch Fallstricke?

Danke!
Ralf

mkinzler 29. Aug 2017 15:20

AW: Anwendung mit Firebird - was deployen?
 
Zitat:

Zitat von ralfiii (Beitrag 1379859)
*) Was wenn meine DLL aus einer neueren/älteren firebird-version kommt als die am Rechner installierte?

Neuere ist kein Problem. Bei älteren kommt es darauf an.
Zitat:

*) Was wenn ich eine 64bit DLL deploye, aber die 32-bit Version von firebird installiert ist? (oder umgekehrt)
Muss zu Deinem Programm passen. Mit der 64Bit Version kann man problemlos auf einen 32Bit Server zugreifen und umgekehrt.

ralfiii 29. Aug 2017 15:31

AW: Anwendung mit Firebird - was deployen?
 
Zitat:

Zitat von mkinzler (Beitrag 1379862)
Zitat:

Zitat von ralfiii (Beitrag 1379859)
*) Was wenn meine DLL aus einer neueren/älteren firebird-version kommt als die am Rechner installierte?

Neuere ist kein Problem. Bei älteren kommt es darauf an.

Worauf? Auf das unterstützte Feature-set nehme ich an, oder?

Zitat:

Zitat:

*) Was wenn ich eine 64bit DLL deploye, aber die 32-bit Version von firebird installiert ist? (oder umgekehrt)
Muss zu Deinem Programm passen. Mit der 64Bit Version kann man problemlos auf einen 32Bit Server zugreifen und umgekehrt.
Dh wenn ich eine 32bit-Anwendung ausliefere, deploye ich immer die 32bit-Firebird-DLL, oder je nach Betriebssystem?

haentschman 29. Aug 2017 15:35

AW: Anwendung mit Firebird - was deployen?
 
Zitat:

Dh wenn ich eine 32bit-Anwendung ausliefere, deploye ich immer die 32bit-Firebird-DLL
...so ist es. 8-)

mkinzler 29. Aug 2017 15:40

AW: Anwendung mit Firebird - was deployen?
 
Zitat:

Dh wenn ich eine 32bit-Anwendung ausliefere, deploye ich immer die 32bit-Firebird-DLL, oder je nach Betriebssystem?
Genau. Dll muss passend zum Programm sein.
Zitat:

Worauf? Auf das unterstützte Feature-set nehme ich an, oder?
Wenn keine Funktion aufgerufen wird, welche nicht existiert bzw. welche sich geändert hat.
Allerdings funktioniert das auch nur, wenn die Datenbank nicht mit ausgeliefert wird. Im Normalfall ist es besser den Server zu aktualisieren. Programme für eine ältere Version/ältere Datenbanken funktionieren weiterhin ( zumindest innerhalb der Hauptversion; FB 3 kann momentan keine Datenbanken mit kleinerem ODS öffnen).
Man kann auch eine eigene Instanz auf abw. Port installieren um jeglichen Problemen aus dem Weg zu Gehen.

ralfiii 30. Aug 2017 14:01

AW: Anwendung mit Firebird - was deployen?
 
OK, ich hab das mal getestet. Auf einer nackten WinXP SP3 Maschine (das ist das älteste was wir unterstützen) brauche ich
* fbclient.dll
* msvcr80.dll
* Microsoft.VC80.CRT.manifest
damit eine Berbindung mit einem DB-Server möglich ist.

Laut diesem Doc hier:
https://firebirdsql.org/rlsnotesh/in...readfirst.html
braucht es auch noch die msvcp80.dll, meine Anwendung scheint die nicht zu brauchen.

Was meint ihr dazu?
Danke!


Alle Zeitangaben in WEZ +1. Es ist jetzt 17:15 Uhr.
Seite 1 von 2  1 2      

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