ODP.NET ड्राइवरों में मूल रूप से दो भाग होते हैं। .NET भाग और मूल OCI भाग। त्रुटि संदेश इंगित करता है कि .NET भाग काम कर रहा है लेकिन मूल भाग को लोड करने में विफल रहता है।
ये समस्याएं संभावित कारण हैं:
-
.NET भाग और मूल भाग के बीच एक संस्करण बेमेल है। ध्यान दें कि
OraOps10.dll
Oracle 10g के अंतर्गत आता है। तो .NET भाग स्पष्ट रूप से संस्करण 10 का है, और यह संस्करण 10 के लिए एक मूल भाग की तलाश में है। -
बिटनेस बेमेल हो सकता है। यदि .NET भाग 64 बिट मोड में चल रहा है, तो यह 64 बिट देशी ओसीआई डीएलएल की तलाश करेगा। 64 बिट सिस्टम पर, कार्य प्रबंधक आपको बता सकता है कि प्रक्रिया 32 या 64 बिट है या नहीं। 32 बिट प्रक्रियाओं को
*32
. से चिह्नित किया जाता है । -
रजिस्ट्री में मूल डीएलएल के लिए सही पथ नहीं हो सकता है। ODP.NET
HKEY_LOCAL_MACHINE\Software\Oracle\ODP.NET\2.xxx.x.x\DllPath
के मान को पुनः प्राप्त करेगा ओसीआई डीएलएल का पता लगाने के लिए। ध्यान दें कि रजिस्ट्री 32 और 64 बिट भाग में विभाजित है। रजिस्ट्री में देखने की प्रक्रिया के आधार पर, इसे अलग-अलग मान मिलेंगे।
यदि आप अपने प्रश्न में सभी उपलब्ध जानकारी जोड़ते हैं तो यह सबसे अच्छा है। क्या यह 64 बिट ऑपरेटिंग सिस्टम है? क्या यह 32 या 64 बिट प्रक्रिया है? Oracle क्लाइंट का कौन सा संस्करण स्थापित किया गया था? Oracle क्लाइंट किस निर्देशिका को स्थापित किया गया था? क्या आप सही रजिस्ट्री प्रविष्टियाँ देख सकते हैं?