问题描述
我的C#/ SQLite工作正常,直到我决定更新SQLite DLL(从1.0.82.0到1.0.84.0)。现在我得到这个崩溃:
My C#/SQLite was working fine until I decided to update the SQLite DLLs (from 1.0.82.0 to 1.0.84.0). Now I get this crash:
A first chance exception of type 'System.EntryPointNotFoundException' occurred in System.Data.SQLite.dll
System.Transactions Critical: 0 : <TraceRecord xmlns="http://schemas.microsoft.com/2004/10/E2ETraceEvent/TraceRecord" Severity="Critical"><TraceIdentifier>http://msdn.microsoft.com/TraceCodes/System/ActivityTracing/2004/07/Reliability/Exception/Unhandled</TraceIdentifier><Description>Unhandled exception</Description><AppDomain>SparkleShare.vshost.exe</AppDomain><Exception><ExceptionType>System.EntryPointNotFoundException, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</ExceptionType><Message>Unable to find an entry point named 'sqlite3_changes_interop' in DLL 'SQLite.Interop.dll'.</Message><StackTrace> at System.Data.SQLite.UnsafeNativeMethods.sqlite3_changes_interop(IntPtr db)
at System.Data.SQLite.SQLite3.get_Changes()
at System.Data.SQLite.SQLiteStatement.TryGetChanges(Int32&amp; changes)
at System.Data.SQLite.SQLiteDataReader.NextResult()
at System.Data.SQLite.SQLiteDataReader..ctor(SQLiteCommand cmd, CommandBehavior behave)
at System.Data.SQLite.SQLiteCommand.ExecuteReader(CommandBehavior behavior)
at System.Data.SQLite.SQLiteCommand.ExecuteNonQuery()
代码没有改变,所以我不认为这是一个代码问题(发生的地方,无论如何)。
The code has not changed, so I don't think it is a code problem (here is the line where it happens, anyway).
新版本I有什么问题吗下载?我在$ code> sqlite-netFx40-static-binary-Win32-2010-1.0.84.0.zip 在$ code预编译静态链接二进制文件32位Windows (.NET Framework 4.0)段落在
Is there something wrong with the new version I downloaded? I downloaded sqlite-netFx40-static-binary-Win32-2010-1.0.84.0.zip
at the Precompiled Statically-Linked Binaries for 32-bit Windows (.NET Framework 4.0)
paragraph at http://system.data.sqlite.org/index.html/doc/trunk/www/downloads.wiki
编辑:我恢复了回到以前的DLL,但问题仍然发生,也许是因为Visual C#有一些缓存在某处没有被清理。
I reverted back to the previous DLLs, but the problem still happens, maybe because Visual C# has some cache somewhere that does not get cleaned.
推荐答案
确保项目x64和x86文件夹中的SQLite.Interop.dll已更新到版本1.0.84.0。
Make sure that the SQLite.Interop.dll in both the x64 and the x86 folders of your project have been updated to version 1.0.84.0.
这篇关于SQLite更新后:无法在DLL'SQLite.Interop.dll'中找到名为'sqlite3_changes_interop'的入口点的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!