15

私の C#/SQLite は、SQLite DLL を (1.0.82.0 から 1.0.84.0 に) 更新することを決定するまで正常に動作していました。今、私はこのクラッシュを取得します:

DLL 'SQLite.Interop.dll' に 'sqlite3_changes_interop' という名前のエントリ ポイントが見つかりません

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;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()

コードは変更されていないので、コードの問題ではないと思います (とにかく、これが発生する行です)。

ダウンロードした新しいバージョンに何か問題がありますか? http://system.data.sqlite.org/index.html/doc/trunk/www/downloads.wikiの段落でダウンロードsqlite-netFx40-static-binary-Win32-2010-1.0.84.0.zipしましたPrecompiled Statically-Linked Binaries for 32-bit Windows (.NET Framework 4.0)

編集: 以前の DLL に戻しましたが、問題は依然として発生します。おそらく、Visual C# にクリーンアップされないキャッシュがどこかにあるためです。

4

3 に答える 3

0

ソース管理はありますか? そのため、作業状態でファイルをロールバックできます。

ソリューションをクリーンアップしてビルドし、SQLite.Interop.DLL を新しいものへのコピーとして設定します。それがbinファイルにあることを確認してください。

よろしく

于 2013-01-28T02:35:01.983 に答える