Installation FB 2.1 x64 et windows 7
Bonjour,
J'ai installé FB 2.1 46 bits sur un windows 7
Mon application pour savoir où est fbcliennt.dll va voir la clé DefaultInstance dans la base de registre.
Dans le cas présent la clé vaut C:\Program Files\Firebird\Firebird_2_1\
Mon application va donc chercher la dll dans C:\Program Files\Firebird\Firebird_2_1\bin mais elle dit qu'elle ne peut être chargée
J'ai vérifié en invite de commande dos et la dll est bien dans le répertoire ci-dessus.
Sous XP ca fonctionne sans probleme.
Quelqu'un aurait une idée?
Merci
Déploiement sur Windows 64 bits
Bonjour à tous
je vais ici faire part de mon expérience cela pourra peut-etre en aider certains.
Je travaille avec c++Builder XE et les composants FIBPlus sous Windows 7 pro 32 bits .
Mon aplli tournait normalement sous cet environnement avec firebird 32 bits et comme c'est indiqué plus haut , pour utiliser la dll qui va bien (fbclient.dll) je récupérais le chemin de l'instance fireBird dans ma base de registre et tout se passait bien.... A ce propos pour pouvoir utiliser la même procédure j'ai du modifier quelque peu mon code : le parametre KEY_READ a dû être modifié en KEY_READ|KEY_WOW64_64KEYdans le code :
ErrCode = RegOpenKeyExW( HKEY_LOCAL_MACHINE, String("SOFTWARE\\Wov6432Node\\Firebird\\Project\\Firebird Server\\Instances").w_str(),0, KEY_READ|KEY_WOW64_64KEY,&KeyHandle);
J'ai donc décidé sur un autre poste de développer FIREBIRD 64 bits ; donc comme en 32 bits j'ai récupéré le chemin de ma dll fbclient.dll et l'ai renseigné dans mon composant DataBase (en l'occurence ici la propriété LibrayName du TpFIBDataBase) et .... rien à faire pas moyen de se connecter. Pour résoudre le problême j'ai dû mettre dans cette propriété le nom de la bibliothèque (gds32.dll ou fbclient.dll) sans chemin (c'est là que c'est assez vicieux) et installer cette bibliothèque lors du setup d'installation de FireBird dans le dossier system !!!! Hors d'une installation dans ce dossier system pas moyen de me connecter (J'ai essayer de copier le fbclient.dll dans le dossier de l'appli , j'ai également essayer un renommage en gds32;dll dans le dossier de l'appli rien impossible si la bibliothèque n'est pas installé dans le dossier systeme!!!!)
En conclusion maintenant et après de nombreuses tentatives mon aplli 32 bits tourne sur ma machine 64 bits avec fireBird 64 bits installé . J'ai remarqueé qu'il y avait deux bibliothèques crées une dans System32 et l'autre sans SYSWow64 ..
pour moi deux pistes sont à envisager :
1°) Souci avec le composant TpFIBdataBase de FIBPlus et plus précisément sa propriété LibraryName mais je n'y crois pas trop (j'arrivais à utiliser sans souci en 32 bits une bibliothèque non située dans le répertoire systeme)
2°) Autorisation d'accès ou enregistrement particulier de la DLL sous WINDOWS 7