5 votes

OCIEnvCreate a échoué avec le code de retour -1 mais le texte du message d'erreur n'était pas disponible avec ODP.net

J'essaie d'étudier le site ORP.net et j'examine cet article sur Déploiement d'ODP.NET avec Oracle Instant Client . J'ai téléchargé et copié toutes les DLL dans le projet comme l'explique l'article, mais à l'étape du test, lorsque l'application est construite, j'obtiens l'erreur suivante :

OCIEnvCreate failed with return code -1 but error message text was not available

J'utilise oraclexe et j'ai un client Oracle. J'ai donné la pleine permission aux utilisateurs authentifiés. Comment puis-je résoudre ce problème ?

6voto

Santiago Points 86

Lorsque vous essayez de vous connecter à une base de données Oracle, vous recevez l'erreur suivante :

OCIEnvCreate a échoué avec le code de retour -1 mais le texte du message d'erreur n'était pas disponible.

Les causes :

  1. Vous utilisez une version non prise en charge du client Oracle (antérieure à 11.2) sous Windows 7.

  2. Des DLL d'une installation précédente du client Oracle ont été laissées sur le système, provoquant un conflit.

Les solutions :

  1. Installez une version prise en charge du client Oracle.

  2. Effectuez une recherche de "OCI.DLL" sur la machine locale. Si vous trouvez des instances de ce fichier dans un endroit autre que votre ordinateur local, vous devez le rechercher. ORACLE_HOME le renommer ou le supprimer. En cas de doute, désinstallez le client Oracle, puis relancez la recherche. Tout ce qui reste est le coupable.

1 votes

Une autre chose à ajouter est qu'après la réinstallation, il faut s'assurer de recycler le pool ASP.net, sinon vous risquez de continuer à recevoir ce message d'erreur. Il m'a fallu 30 minutes et 2 réinstallations avant de réaliser que je devais recycler le pool.

4voto

MichaelS Points 2560

Ce qui a marché pour moi, c'est de mettre ORACLE_HOME a oracle\client\your_version\home1 au lieu de oracle\client\your_version\home1\BIN

1voto

jcsilva87 Points 66

Réinstallation d'Oracle et mise à jour de la ORACLE_HOME avec le nouveau dossier d'installation a fonctionné pour moi. N'oubliez pas de recycler votre pool d'applications avant de réessayer votre application.

0voto

B2K Points 919

J'ai également dû créer des liens de répertoire symboliques pour les applications x86 et x64. Les étapes que j'ai dû suivre sont les suivantes :

  1. Assurez-vous que NET MANAGER peut se connecter à Oracle.
  2. mklink /D C:\Windows\System32\orcl
  3. mklink /D C:\Windows\SysWoW64\orcl
  4. définir la variable d'environnement ORACLE_HOME comme suit C:\windows\system32\orcl
  5. ajouter C:\windows\system32\orcl\bin à votre PATH
  6. Ça n'a fonctionné qu'après avoir redémarré mon ordinateur.

0voto

Charlie Points 1

J'ai également rencontré le même problème en essayant de connecter Power BI à une base de données Oracle.

J'avais 2 versions du client Oracle installées. 11.2 et 10.2. Lorsque j'ai désinstallé l'ancienne version, tout a fonctionné comme sur des roulettes.

Une chose à noter est que dans Power BI, lors de la connexion à la base de données Oracle, il m'a été demandé de fournir le serveur. Mais ce qui est attendu de moi est le nom de cette connexion dans mon fichier tnsnames.ora :)

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X