Je vais vous donner les réponses de ce Je viens de passer sur Windows Server 2008 R2 qui est un système d'exploitation 64 bits. La suite d'applications de bibliothèques qui m'a été donnée a été développée en utilisant .net 3.5 x86 avec les anciennes bibliothèques DLL et j'étais bloqué parce que j'avais installé les nouveaux clients x64 d'Oracle. Ce que j'ai trouvé était le suivant: Installez le dernier client x64 d'Oracle pour Windows Server 2008. Je crois que ce serait le client 2.7.0. Lorsque vous sélectionnez l'installation, assurez-vous de personnaliser et de sélectionner les bibliothèques .NET. Configurez vos fichiers tnsnames et testez votre réponse par rapport à votre source de données.
Ensuite, si vous exécutez une application 32 bits, installez la même version du client pour 32 bits. Suivez également la même procédure d'installation et sélectionnez la même maison.Lorsque vous avez terminé, vous constaterez que vous avez une application/un produit unique avec deux répertoires clients (Client1 et Client2). Si vous accédez au répertoire windows/assemblies, vous trouverez une référence à Oracle.DataAccess.dll (x2) avec un pour x86 et un pour AMD64. Maintenant, selon que vous avez des développeurs ou que vous développez sur la machine vous-même, vous pouvez être correct ici, cependant, s'ils utilisent des pilotes plus anciens, alors vous devez effectuer une dernière étape. Accédez au répertoire app \ nom \ produit \ version \ client_1 \ odp.net \ policy \ publisher \ 2.x de l'application. Inclus ici sont deux fichiers de politique. utilisez gacutil/i pour installer Policy.2.111.Oracle.DataAccess.dll dans le GAC. Cela redirigera les appels Oracle ODP hérités vers les versions les plus récentes. Donc, si quelqu'un a développé avec le client 10g, il va maintenant travailler avec le client 11.
Si vous avez besoin de plus de détails ou si vous avez besoin d'autres réponses, comme le basculement du mode 32 bits sur vos assemblages .net, envoyez-moi un e-mail.
J Banks [email protected]
Bonne chance.
J'ai défini Activer les applications 32 bits sur true, mais sans succès. Je reçois le même message d'erreur. Que puis-je faire d'autre? – Zoliqa
voir ma modification à la réponse –
Salut Leybaert, Que voulez-vous dire par "assurez-vous que votre répertoire Oracle (le répertoire contenant toutes les DLL Oracle) est dans le chemin de votre système"? J'ai installé ODAC 1020221 qui a installé les dlls dans le répertoire suivant: e: \ oracle \ product \ 10.2.0 \ client_1 \ ODP.NET \ bin \. La chose étrange est que les dll ne sont pas enregistrés dans le GAC par cette installation, donc j'ai référencé explicitement la DLL du projet par son chemin absolu. Quoi qu'il en soit, je reçois le même message d'erreur que j'ai mentionné dans mon post précédent. Qu'est-ce que je fais de mal? – Zoliqa