Oracle DataAccess - 找不到入口点

时间:2015-12-22 13:11:09

标签: .net oracle dll oracle11g oracle12c

我正在使用oracle数据库开发一个winforms应用程序。

一切正常,直到我不得不重新安装oracle 11g。我能够连接到数据库并运行我的应用程序。

现在我收到以下错误:

  

无法在动态链接库oraons.dll中找到过程入口点ons_subscriber_cancelcallback。

我还为另一个应用程序安装了12c版本。 我的环境变量路径是这样的:

  

C:\甲骨文\11克\产品\ 11.2.0 \的Client_1; C:\甲骨文\11克\产品\ 11.2.0 \的Client_1 \ BIN; C:\甲骨文\ 12C \产品\ 12.1.0 \的Client_1; C:\甲骨文\ 12C \产品\ 12.1.0 \的Client_1 \ BIN;

在我的项目中,我使用的是复制到包含我的.exe文件的文件夹的Oracle.DataAccess.dll版本4.112.3.0。

新的oracle安装在odp.net文件夹中没有此dll文件。这可能是问题吗?我对此感到困惑,因为在我的项目中,我引用了包含.exe文件的项目文件夹中的dll文件。所以,根据我的理解,我相信没关系。

但是现在,我迷路了。我已经阅读了大量的论坛/博客,说道路可能是错误的或Oracle.DataAccess.dll参考,但我的还可以。

有人可以帮我解决这个问题吗?

1 个答案:

答案 0 :(得分:0)

*.csproj中, *.vbproj编辑您对ODP.NET的引用,如下所示:

    <Reference Include="Oracle.DataAccess">
      <SpecificVersion>False</SpecificVersion>
      <Private>False</Private>
    </Reference>

不需要Version=...processorArchitecture=...等属性。您的应用程序将加载正确的Oracle.DataAccess.dll,具体取决于所选的体系结构和目标.NET框架。