-
OleDB & .dll
Bonjour,
Je vous explique rapidement le contexte : J'ai développé une application qui permet la mise en place de dossier "en écoute". Dès lors qu'un nouveau fichier de donnée arrive sur un de ces dossiers, le programme lance un sous-programme (module) avec en paramètre le fichier afin que le module traite ce fichier de donnée.
Pour développer un module, j'ai crée un template qui me permet de ne jamais repartir de 0. Dans ce module, j'ai une fenêtre de "debug" (qui me permet de sélectionner mon fichier de donnée, et d'exécuter le code nécessaire au traitement du fichier.
Lorsque je souhaite déployer mon module, je le compile en bibliothèque de classe, et depuis mon application d'interface, je déclare mon nouveau module avec les points d'entrées (la classe a appelé pour que le fichier soit traité).
A savoir que ce module est chargé dynamiquement.
Aujourd'hui, mon souci est bien particulier. En mode "debug" (appli. Win Forms), ma connexion SQL vers Oracle s'effectue bien en OleDB avec le pilote OleDB Oracle (OleDB.Oracle). Que ce soit sur mon poste de développeur, ou sur le serveur qui héberge l'application, ce module se connecte bien à la base de donnée.
Dès lors que je le passe en .dll, la connexion ne s'effectue plus ...
J'obtiens le message "Le fournisseur OleDB.Oracle n'est pas inscrit sur l'ordinateur local"
A savoir que les drivers "OleDB.Oracle" et "OleDB.Oracle.1" marchent tous les deux sur le serveur quand je lance mon module en WinForms. (.exe)
Merci de vos lumières !
-
Bonjour à tou(te)s !
Et bien après quelques jours de week-end, et un cerveau reposé, j'ai trouvé réponsé à mon problème :)
Première bataille de recherche : un petit article traitant des diversités des drivers OleDB/ODBC entre le monde 32bits & 64 bits. Ca se passe la
Ensuite, je remarque que mon application en ".exe" tourne en 64 bits. Mais que mon service qui va appelé mon module tourne en 32.
Recompilation du projet en 64 bits.
Mon module tourne impec' :)