2013-01-04 49 views
2

我想解決如何在VS2012 Express中使用ADO.Net Sqlite而沒有運氣。VS2012EXPRESS Ado.Net SQLite缺少DLL問題

事情我可是從begining做:

  1. 啓動新項目並安裝 「System.Data.SQLite(在x86/x64)」 通過爲的NuGet解決方案。
  2. using System.Data.SQLite;添加到指令。
  3. 編寫簡單的代碼,如:

    SQLiteConnection sql_sck =新SQLiteConnection( 「數據源= test.sqlite;版本= 3;新= FALSE;壓縮= TRUE;」);

一切似乎看起來沒問題,VS認出類名並改變它們的顏色。然而,在運行該程序後,在sql_sck ...行中,引發異常 - 關於丟失的DLL?

An unhandled exception of type 'System.DllNotFoundException' occurred in System.Data.SQLite.dll 
Additional information: Could not load DLL 'SQLite.Interop.dll': Could not find specified module. (Exception HRESULT: 0x8007007E) 

任何想法如何使這項工作?有什麼我做錯了/任何步驟失蹤?

回答

2

某處Visual Studio將創建SQLite.Interop.DLL。您需要找到該DLL並將其複製到與應用程序的可執行文件相同的目錄中。

我通常會將Interop DLL添加到我的項目中作爲參考,並將它們標記爲複製到輸出目錄以確保使用項目的其他人不會忘記手動步驟。

+1

完成。和工作。 VS正在將應用程序工作目錄中的分隔文件夾放入分隔的子文件夾中。所以我想我只需要爲每個架構複製精確的dll。謝謝。 –

+0

是的 - 我們必須這麼做 - 我們有X86和X64的子目錄 – debracey