IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Bases de données Delphi Discussion :

Firedac Firebird fbclient.dll


Sujet :

Bases de données Delphi

  1. #1
    Membre expert

    Homme Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2007
    Messages
    3 494
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 63
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Novembre 2007
    Messages : 3 494
    Points : 3 129
    Points
    3 129
    Par défaut Firedac Firebird fbclient.dll
    Bonjour,

    Dans l'IDE XE6 (ou +) , l'explorateur de données de Firedac utilise quel dll par défaut client pour se connecter à une base de données ??

    Papy !

  2. #2
    Expert éminent sénior
    Avatar de Paul TOTH
    Homme Profil pro
    Freelance
    Inscrit en
    Novembre 2002
    Messages
    8 964
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 55
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Freelance
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Novembre 2002
    Messages : 8 964
    Points : 28 457
    Points
    28 457
    Par défaut
    la réponse est dans le titre de ta question non ?

    NB: pour des réponses historiques, Firebird propose généralement de créer un GDS32.DLL par copie de FBCLIENT.DLL mais cela peut provoquer des conflits avec Interbase. Si tu n'as pas la bonne DLL le message d'erreur (que je n'ai plus en tête) n'est pas limpide.

  3. #3
    Membre émérite
    Avatar de Thierry Laborde
    Homme Profil pro
    N/A
    Inscrit en
    Avril 2002
    Messages
    1 391
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : N/A

    Informations forums :
    Inscription : Avril 2002
    Messages : 1 391
    Points : 2 529
    Points
    2 529
    Par défaut
    Bonjour,

    Si je ne dis pas de bêtises quand tu définis les paramètres de connexion, sur la fenêtre tu as un onglet 'Info' dans lequel tu vois le log de ce qui se passe lorsqu'il se connecte et autre, et il me semble qu'il indique la DLL à laquelle il se connecte.
    D'ailleurs tu peux définir cela dans les fichiers INI qui se trouvent ici (Paramètres VendorLibWin32 et VendorLibWin64 pour les connexions Firebird) :

    C:\Users\Public\Documents\Embarcadero\Studio\FireDAC

    la doc :

    http://docwiki.embarcadero.com/RADSt...otes_(FireDAC)

  4. #4
    Membre expert

    Homme Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2007
    Messages
    3 494
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 63
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Novembre 2007
    Messages : 3 494
    Points : 3 129
    Points
    3 129
    Par défaut
    Mon souci est décrit sur le forum Firebird.

    http://www.developpez.net/forums/d16...erver-embeded/

    Pour être plus précis côté Delphi, dans mon XE6, impossible de connecter mon TFDConnection à ma base de données distante.

    Dans mon code source, si j'utilise comme VendorHome le dossier ou se trouve ma dll version embeded, ça fonctionne.
    Si j'utilise le répertoire qui contient la version "server", ça ne passe pas.

    J'ai modifié le fichier FDDrivers.ini et j'ai créé une nouvelle section

    [FB21]
    ; FB21 virtual driver will use specified Firebird client library
    BaseDriverID=FB
    VendorLibWin32=C:\Firebird_old\bin\fbclient.dll
    VendorLibWin64=C:\ib\fb21_64\bin\fbclient.dll
    Là, dans l'explorateur de données de l'IDE, si j'utilise FB21, ça fonctionne.
    Donc, il semble que seule la dll version embeded (C:\Firebird_old\bin\fbclient.dll) me permet d'accéder à ma base distante dans l'IDE.

    Et c'est bien lié à Firedac parce que j'accède à mes données avec "SQL Manager lite for Interbase and Firebird" de SQLManager.net

    :-(

    Et j'ai effectivement interbase qui s'est installé en même temps que Delphi.

  5. #5
    Membre émérite
    Avatar de Thierry Laborde
    Homme Profil pro
    N/A
    Inscrit en
    Avril 2002
    Messages
    1 391
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : N/A

    Informations forums :
    Inscription : Avril 2002
    Messages : 1 391
    Points : 2 529
    Points
    2 529
    Par défaut
    Attention que l'IDE est 32 bits seulement. il lui faut donc la Dll 32 bits et pas 64 bits.

  6. #6
    Membre expert

    Homme Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2007
    Messages
    3 494
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 63
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Novembre 2007
    Messages : 3 494
    Points : 3 129
    Points
    3 129
    Par défaut
    Citation Envoyé par Thierry Laborde Voir le message
    Bonjour,

    Si je ne dis pas de bêtises quand tu définis les paramètres de connexion, sur la fenêtre tu as un onglet 'Info' dans lequel tu vois le log de ce qui se passe lorsqu'il se connecte et autre, et il me semble qu'il indique la DLL à laquelle il se connecte.
    D'ailleurs tu peux définir cela dans les fichiers INI qui se trouvent ici (Paramètres VendorLibWin32 et VendorLibWin64 pour les connexions Firebird) :

    C:\Users\Public\Documents\Embarcadero\Studio\FireDAC

    la doc :

    http://docwiki.embarcadero.com/RADSt...otes_(FireDAC)
    Bonjour Thierry,

    Effectivement :

    Brand = Firebird
    Client version = 205069900
    Client DLL name = C:\Windows\fbclient.dll
    ================================
    Informations de session
    ================================
    Echec de la connexion au SGBD.
    [FireDAC][Phys][FB]Unable to complete network request to host "10.0.4.1".
    Failed to establish a connection.
    C'est bien la même dll qui est dans C:\Program Files (x86)\Firebird\Firebird_2_5

    Je supprime C:\Windows\fbclient.dll et je retente la connexion.
    ça fonctionne mais

    Loading driver FB ...
    Brand = Firebird
    Client version = 205029900
    Client DLL name = C:\Firebird_old\bin\fbclient.dll
    Donc, là il prend la dll qui est dans le répertoire que j'avais défini dans le PATH de Windows

    Je modifie le PATH en supprimant ce chemin.

    Maintenant :

    Loading driver FB ...
    Error: [FireDAC][Phys][FB]-314. Impossible de charger la bibliothèque du fournisseur [fbclient.dll or fbembed.dll]. Le fichier spécifié est introuvable.
    Conseil : vérifiez qu'il est dans le PATH ou dans les répertoires EXE de l'application et qu'il a un nombre de bits de x86.
    Echec du chargement du client du SGBD.
    Je modifie le PATH et j'ajoute C:\Program Files (x86)\Firebird\Firebird_2_5

    et maintenant :

    ================================
    Loading driver FB ...
    Brand = Firebird
    Client version = 205069900
    Client DLL name = C:\Program Files (x86)\Firebird\Firebird_2_5\fbclient.dll
    ================================
    Informations de session
    ================================
    Echec de la connexion au SGBD.
    [FireDAC][Phys][FB]Unable to complete network request to host "10.0.4.1".
    Failed to establish a connection.
    :-(

  7. #7
    Membre expert

    Homme Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2007
    Messages
    3 494
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 63
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Novembre 2007
    Messages : 3 494
    Points : 3 129
    Points
    3 129
    Par défaut
    en complément, si je modifie mon PATH pour pointer sur le répertoire de la version embeded:

    Loading driver FB ...
    Brand = Firebird
    Client version = 205029900
    Client DLL name = C:\Firebird_old\bin\fbclient.dll

    Informations de session
    ================================
    Current catalog =
    Current schema =
    Server version = WI-V2.5.6.27020 Firebird 2.5
    WI-V2.5.6.27020 Firebird 2.5/tcp (JEANLUC)/P12
    WI-V2.5.2.26540 Firebird 2.5/tcp (VM-7)/P12
    Donc, la version embeded se connecte bien aux données :-(

  8. #8
    Membre émérite
    Avatar de Thierry Laborde
    Homme Profil pro
    N/A
    Inscrit en
    Avril 2002
    Messages
    1 391
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : N/A

    Informations forums :
    Inscription : Avril 2002
    Messages : 1 391
    Points : 2 529
    Points
    2 529
    Par défaut
    Tu es bien sur un Delphi édition Entreprise ? Et pas sur l'édition Professionnelle ?

  9. #9
    Membre expert

    Homme Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2007
    Messages
    3 494
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 63
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Novembre 2007
    Messages : 3 494
    Points : 3 129
    Points
    3 129
    Par défaut
    Citation Envoyé par Thierry Laborde Voir le message
    Attention que l'IDE est 32 bits seulement. il lui faut donc la Dll 32 bits et pas 64 bits.
    Je n'ai pas de version 64 bits sur ce poste (VM).
    D'ailleurs, Firebird s'est bien installé dans C:\Program Files (x86) :-)

  10. #10
    Membre expert

    Homme Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2007
    Messages
    3 494
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 63
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Novembre 2007
    Messages : 3 494
    Points : 3 129
    Points
    3 129
    Par défaut
    Citation Envoyé par Thierry Laborde Voir le message
    Tu es bien sur un Delphi édition Entreprise ? Et pas sur l'édition Professionnelle ?
    XE6 Entreprise version 20.0.15596.9843

  11. #11
    Membre expert

    Homme Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2007
    Messages
    3 494
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 63
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Novembre 2007
    Messages : 3 494
    Points : 3 129
    Points
    3 129
    Par défaut
    Fait intéressant : Depuis le poste où se trouvent les données , avec Berlin, je tente une connexion dans l'autre sens .

    Loading driver FB ...
    Brand = Firebird
    Client version = 205069900
    Client DLL name = C:\Windows\fbclient.dll
    ================================
    Informations de session
    ================================
    Echec de la connexion au SGBD.
    [FireDAC][Phys][FB]Unable to complete network request to host "10.0.4.56".
    Failed to establish a connection.
    On dirait que la dll fbclient du server ne permet pas de se connecter à un poste distant :-(

    Ou alors j'ai raté une config quelque part

    Bien sûr, si je tente l'accès à mes données locales, ça fonctionne

    User_Name=sysdba
    Password=*****
    Protocol=TCPIP
    Server=10.0.4.1
    Port=3050
    DriverID=FB

    Infos client
    ================================
    Loading driver FB ...
    Brand = Firebird
    Client version = 205069900
    Client DLL name = C:\Windows\fbclient.dll
    ================================
    Informations de session
    ================================
    Current catalog =
    Current schema =
    Server version = WI-V2.5.6.27020 Firebird 2.5
    WI-V2.5.6.27020 Firebird 2.5/tcp (JEANLUC)/P12
    WI-V2.5.6.27020 Firebird 2.5/tcp (JEANLUC)/P12

  12. #12
    Membre émérite
    Avatar de Thierry Laborde
    Homme Profil pro
    N/A
    Inscrit en
    Avril 2002
    Messages
    1 391
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : N/A

    Informations forums :
    Inscription : Avril 2002
    Messages : 1 391
    Points : 2 529
    Points
    2 529
    Par défaut
    là je manque d'idées du coup....

  13. #13
    Membre expert

    Homme Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2007
    Messages
    3 494
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 63
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Novembre 2007
    Messages : 3 494
    Points : 3 129
    Points
    3 129
    Par défaut Rectification
    Je n'avais pas ouvert le port 3051 sur la machine qui pose problème pour l'accès inverse depuis "Berlin".
    Avec la dll fbclient qui se trouve dans Windows et qui est donc une copie de celle du server, l'accès est maintenant possible.

    J'ai vérifié le pare-feu sur l'autre machine et le port ouvert correspond bien à celui utilisé par FB.

    Mais ..... si j'ajoute le 3051 au 3050 dans le pare-feu, ça fonctionne en modifiant le port dans les paramètres de connexion. :-(

    J'ai oublié que le 3050 est déjà pris par interbase ici aussi.

    Donc, problème réglé ! un grand merci à vous deux !

    Mais il me reste un petit détail : Dans l'inspecteur d'objet je peux mettre Port=3051 pour params du TFDConnection.
    Dans l'éditeur de connexion par contre, dans XE6, pas de ligne pour le port contrairement à la version Berlin.

    Si j'écris 10.0.4.1:3051 pour le server, je ramasse une erreur de base de données non disponible.
    Quelle est la syntaxe pour définir le port ici ?

  14. #14
    Membre expert

    Homme Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2007
    Messages
    3 494
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 63
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Novembre 2007
    Messages : 3 494
    Points : 3 129
    Points
    3 129
    Par défaut trouvé tout seul


    un / à la place du :


    encore merci et bonne fêtes de fin d'année

  15. #15
    Membre émérite
    Avatar de Thierry Laborde
    Homme Profil pro
    N/A
    Inscrit en
    Avril 2002
    Messages
    1 391
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : N/A

    Informations forums :
    Inscription : Avril 2002
    Messages : 1 391
    Points : 2 529
    Points
    2 529
    Par défaut
    Au moins 2016 ce termine bien, vu que le problème est résolu.
    Bonnes fêtes de fin d'année.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 8
    Dernier message: 13/02/2009, 09h11
  2. fbclient.dll ou gds.dll
    Par looping dans le forum Firebird
    Réponses: 5
    Dernier message: 30/05/2008, 10h55
  3. [Lazarus] fbclient.dll introuvable
    Par talapoga dans le forum Lazarus
    Réponses: 6
    Dernier message: 08/01/2008, 21h41
  4. gds32.dll ou fbclient.dll
    Par lio33 dans le forum Installation
    Réponses: 6
    Dernier message: 13/01/2006, 18h49

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo