System.EntryPointNotFoundException:无法找到名为“AsaConnection_CloseDataRead”的入口点

时间:2013-02-09 16:13:40

标签: ado.net sqlanywhere

我的应用程序使用SQL Anywhere ADO .NET数据提供程序。本周早些时候我已将我的应用程序升级为使用SQL Anywhere 12.0.1 EBF 3840,但我不得不在周五将其回滚到EBF 3817。我的程序启动时出现以下错误:

System.EntryPointNotFoundException: Unable to find an entry point named 'AsaConnection_CloseDataReaders' in DLL 'dbdata12.dll'.

我已经完成了搜索,我找到了this documentation page有关dbdata12.dll的信息。我已经在我的机器上搜索了C:驱动器,但我无法在其上找到dbdata12.dll。显然,该程序也没有打开包装。

如何解决此问题?

1 个答案:

答案 0 :(得分:1)

在这里的另一位开发者的帮助下,我已经解决了这个问题。

问题是卸载程序不会从GAC中删除所有3840 DLL。具体来说,我找到了iAnywhere.Data.SQLAnywhere.V4.0.dll和policy.12.0.iAnywhere.Data.SQLAnywhere.V4.0.dll和policy.12.0.iAnywhere.Data.SQLAnywhere.V4.5.dll的副本EBF 3840的C:\ Windows \ Microsoft.NET \ assembly \ GAC_MSIL文件夹,即使我从我的机器上卸载了两次SQL Anywhere。

删除这些DLL后,问题就停止了。