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

 Firebird Discussion :

Connexion à Firebird 3 impossible depuis Delphi XE7


Sujet :

Firebird

  1. #1
    Membre chevronné

    Homme Profil pro
    Consultant informatique
    Inscrit en
    Avril 2015
    Messages
    450
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Vendée (Pays de la Loire)

    Informations professionnelles :
    Activité : Consultant informatique
    Secteur : Finance

    Informations forums :
    Inscription : Avril 2015
    Messages : 450
    Points : 1 970
    Points
    1 970
    Par défaut Connexion à Firebird 3 impossible depuis Delphi XE7
    Bonjour à tous,

    Disposant d'un MacMini qui est à la plage depuis longtemps, j'ai décidé de le faire bouger. J'ai donc installé tout à l'heure Firebird 3.0.2 64 bits sur la bécane. Tout s'est très bien passé. J'ai pu accéder à la base exemple par isql, après avoir trouvé le répertoire d'installation.
    J'ai ensuite vérifié que je peux bien pinger la machine sur laquelle tourne Delphi XE7 (une VM Windows 10), ça marche dans les deux sens, les pings passent.
    J'étais donc heu-reux à ce stade. Du coup je prends Delphi, je drop un composant TIBConnection, et je renseigne les champs indispensables : driver "Firebird", database 10.0.1.140:employee, username sysdba, password masterkey.
    Ensuite je tente d'activer la connexion, et là, craboum : Connection rejected by remote interface.
    Du coup je saute sur Google, je lis une tonne de trucs sur fdbclient.dll. J'installe les clients 32 et 64 bits sur la machine Delphi. Je préserve la DLL existante dans le répertoire \bin d'embarcadero (une version 2.5) et la remplace par la 32 bits fournie par le client Firebird. Rien à faire, même message.
    Accessoirement, j'ai essayé de déclarer ce nouveau serveur dans IBConsole, l'interface d'administration Interbase. J'obtiens le même message. Toutefois j'ai pu vérifier que la connexion au niveau TCP/IP fonctionne parfaitement :

    Attempting connection to 10.0.1.140
    Socket for connection obtained.

    Connection established to host "10.0.1.140",
    on port 3050.

    TCP/IP Communication Test Passed!

    Alors, si quelqu'un a un début d'idée, je suis preneur. Je m'étais découragé il y a plusieurs mois de jouer avec Firebird, justement pour un problème similaire.
    Merci d'avance...

  2. #2
    Membre éclairé
    Homme Profil pro
    Inscrit en
    Février 2006
    Messages
    562
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51
    Localisation : France, Charente Maritime (Poitou Charente)

    Informations forums :
    Inscription : Février 2006
    Messages : 562
    Points : 859
    Points
    859
    Par défaut
    Bonsoir.

    Votre installation de Firebird est bien passé puisque vous pouvez accéder à la base employee via isql. Votre problème vient surement du coté de Delphi et son driver TIBConnexion qui utilise la librairie gds32.dll pour se connecter à un serveur Firebird ou Interbase. Avez-vous cochez la case Générer la librairie gds32.dll lors de l'installation de Firebird ? Si ce n'est pas le cas, désinstallez Firebird puis refaite l'installation en générant cette dll qui sera placée dans le répertoire c:\windows\system32 (ou c:\windows\syswow64 s'il s'agit de Delphi 64 bits).

  3. #3
    Rédacteur/Modérateur

    Avatar de SergioMaster
    Homme Profil pro
    Développeur informatique retraité
    Inscrit en
    Janvier 2007
    Messages
    15 042
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 67
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur informatique retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Janvier 2007
    Messages : 15 042
    Points : 40 952
    Points
    40 952
    Billets dans le blog
    62
    Par défaut
    Bonjour,

    je suis d'accord avec ddaime quant au diagnostic, un problème de gds32.dll !
    moins en ce qui concerne cette phrase
    (ou c:\windows\syswow64 s'il s'agit de Delphi 64 bits).
    parce que Delphi n'est encore que 32 bits

    sur un OS windows 64 bits
    dans syswow64 on met les Dll 32 bits et dans system32 les dll 64 bits (je sais c'est tordu ! et faut pas se mélanger les pinceaux)
    Toujours dans l'hypothèse d'un OS 64 bits, si le programme compilé avec Delphi est 32 bits alors la bibliothèque utilisée sera celle contenue dans syswow64.

    Citation Envoyé par TJ1985
    Du coup je prends Delphi, je drop un composant TIBConnection,
    Là c'est pas forcément une bonne idée, il vaut mieux utiliser Firedac (car je présume que s'il y a TIBconnection la version de XE7 a aussi ces composants)
    avantage de Firedac (ou à défaut des ZEOSDBO par exemple) ces composants utilisent fbclient.dll de l'installation Firebird par défaut à moins bien sur d'indiquer un chemin précis de bibliothèque

    Citation Envoyé par TJ1985
    Accessoirement, j'ai essayé de déclarer ce nouveau serveur dans IBConsole, l'interface d'administration Interbase.
    Là encore, j’émets des réserves sur l'utilisation de IBConsole comme pour l'utilisation des TIBxxxx. Firebird a beaucoup dérivé depuis la version Interbase 6.5 (tout comme Interbase de son côté) ce qui semblait encore réalisable avec Firebird 2.1 (IBConsole, TIBxxxx) posait déjà quelques problèmes avec la version 2.5 avec la version 3 de Firebird c'est quand même un grand pas.
    Plutôt qu'IBconsole, Flamerobin est léger, multi OS et dédié Firebird

    N.B. Si la VM Windows 10 est sur le Mac, il y a plusieurs utilisateurs de Delphi (dont moi) qui seraient heureux d'avoir une idée de la configuration du mac (modèle,mémoire etc...) et de la méthode utilisée pour faire les installations .
    MVP Embarcadero
    Delphi installés : D3,D7,D2010,XE4,XE7,D10 (Rio, Sidney), D11 (Alexandria), D12 (Athènes)
    SGBD : Firebird 2.5, 3, SQLite
    générateurs États : FastReport, Rave, QuickReport
    OS : Window Vista, Windows 10, Windows 11, Ubuntu, Androïd

  4. #4
    Membre chevronné

    Homme Profil pro
    Consultant informatique
    Inscrit en
    Avril 2015
    Messages
    450
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Vendée (Pays de la Loire)

    Informations professionnelles :
    Activité : Consultant informatique
    Secteur : Finance

    Informations forums :
    Inscription : Avril 2015
    Messages : 450
    Points : 1 970
    Points
    1 970
    Par défaut
    Citation Envoyé par ddaime Voir le message
    Bonsoir.

    Votre installation de Firebird est bien passé puisque vous pouvez accéder à la base employee via isql. Votre problème vient surement du coté de Delphi et son driver TIBConnexion qui utilise la librairie gds32.dll pour se connecter à un serveur Firebird ou Interbase. Avez-vous cochez la case Générer la librairie gds32.dll lors de l'installation de Firebird ? Si ce n'est pas le cas, désinstallez Firebird puis refaite l'installation en générant cette dll qui sera placée dans le répertoire c:\windows\system32 (ou c:\windows\syswow64 s'il s'agit de Delphi 64 bits).
    Grand merci, ça marche.
    Pour cela, j'ai désinstallé les deux Firebird client (32et 64 bits), redémarré ma VM, recherché partout gds32.dll et fbclient.dll, renommé les instances que j'ai trouvées et ré-installé firebird 32 bits. Tout semble parfait, j'accède maintenant à mon serveur.
    Je ne suis toujours pas trop sûr de ce que je dois choisir dans le contexte Delphi, je m'attendais à ce que Delphi lui-même demande la version 64 bits, et le 32 bits pour l'exécutable généré. Mais il semble que le 32 bits suffise pour le développement live, donc...

    En tout cas merci encore. A une autre fois peut-être.

  5. #5
    Membre chevronné

    Homme Profil pro
    Consultant informatique
    Inscrit en
    Avril 2015
    Messages
    450
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Vendée (Pays de la Loire)

    Informations professionnelles :
    Activité : Consultant informatique
    Secteur : Finance

    Informations forums :
    Inscription : Avril 2015
    Messages : 450
    Points : 1 970
    Points
    1 970
    Par défaut
    Bonjour,

    Alors un peu en pagaille :
    Problème résolu, je me connecte, voir le message de victoire qui parle du 32/64 bits. On verra ensuite si tout est là.

    Configuration côté Windows :

      • Configuration de la VM :
      • Parallels 12.2.1-41615
      • Installation Windows 10 Pro Insider Preview en upgrade d'une licence Windows 7 Pro (officielle)
      • 4 Processeurs
      • 4 GB RAM
      • 96 GB HDD fixe
      • Aucune optimisation pour les jeux

    • Système Hôte :
      • iMac 27" mi-2010 (Oui, c'est dans les vieilles marmites... Celui qui veut me le prendre, je le mords.)
      • 2.93 GHz Intel Core i7
      • 12GB RAM
      • SSD Crucial_CT1050MX300SSD1 1TB (pour le moment sans Trim, faudra que j'y pense)



    Un point important : J'ai dû utiliser un réseau bridgé et non partagé au niveau de la VM, ce qui me place sur le même subnet que mes autres machines. Par défaut Parallels créé son propre subnet, à travers l'option "réseau partagé". Je ne trouve pas ces dénominations très logiques, mais bon, au final, c'est comme ça que ça marche. Je n'ai pas d'expérience à ce niveau avec VirtualBox.

    A dispo. J'utilise aussi des VirtualBoxes, ça marche plutôt bien aussi, Parallels n'est pas forcément indispensable.

  6. #6
    Membre éclairé
    Homme Profil pro
    Inscrit en
    Février 2006
    Messages
    562
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51
    Localisation : France, Charente Maritime (Poitou Charente)

    Informations forums :
    Inscription : Février 2006
    Messages : 562
    Points : 859
    Points
    859
    Par défaut
    Bonsoir.

    Merci SergioMaster pour cette précision. Je n'ai pas utilisé Delphi depuis bien longtemps.

  7. #7
    Membre chevronné

    Homme Profil pro
    Consultant informatique
    Inscrit en
    Avril 2015
    Messages
    450
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Vendée (Pays de la Loire)

    Informations professionnelles :
    Activité : Consultant informatique
    Secteur : Finance

    Informations forums :
    Inscription : Avril 2015
    Messages : 450
    Points : 1 970
    Points
    1 970
    Par défaut
    Citation Envoyé par SergioMaster Voir le message
    Là c'est pas forcément une bonne idée, il vaut mieux utiliser Firedac (car je présume que s'il y a TIBconnection la version de XE7 a aussi ces composants)
    avantage de Firedac (ou à défaut des ZEOSDBO par exemple) ces composants utilisent fbclient.dll de l'installation Firebird par défaut à moins bien sur d'indiquer un chemin précis de bibliothèque
    Bonjour SergioMaster,

    Décidément, mon crâne s'épaissit de jour en jour... Bref, si j'ai bien réussi à résoudre mon souci de TIB..., j'arrivais à une solution partiellement fonctionnelle qui ne marchait pas en "live" (une sombre histoire de composants bidirectionnel...) Du coup je relis votre poste, et je tombe sur la petite phrase que j'avais ignorée, car trop pressé et trop vieux. J'ai donc droppé les composants FireDAC qui vont bien, et, miracle, cette fois tout est bien qui finit bien !
    Là aussi j'étais resté bloqué par d'infructueux essais faits il y a pas mal de temps. Je n'avais pas diagnostiqué clairement l'origine du problème, qui était finalement ce même souci d'installation du client Firebird et non d'origine FireDac.
    Bref ! Merci encore, et puisse cette micro-expérience éviter du temps perdu à d'autres candidats.

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

Discussions similaires

  1. Connexion BDD oracle impossible depuis java
    Par pauselol dans le forum JDBC
    Réponses: 5
    Dernier message: 10/06/2012, 14h26
  2. Connexion à Firebird 2.x avec Delphi 6
    Par mballasse dans le forum Connexion aux bases de données
    Réponses: 15
    Dernier message: 20/01/2011, 13h51
  3. COnnexion à FireBird depuis VB6
    Par IADJOFOGUE dans le forum Connexion aux bases de données
    Réponses: 1
    Dernier message: 28/04/2006, 09h57
  4. Connexion Firebird 1.5 depuis Java via JDBC
    Par rprom1 dans le forum Connexion aux bases de données
    Réponses: 2
    Dernier message: 04/04/2006, 11h29
  5. Connexion Firebird en PHP+DELPHI
    Par nicotin dans le forum Connexion aux bases de données
    Réponses: 2
    Dernier message: 18/01/2005, 19h34

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