{"未能加載文件或程序集「System.Data.SQLite, Version=1.0.97.0, Culture=neutral, PublicKeyToken=db937bc2d44ff139」或它的某一個依賴項。試圖加載格式不正確的程序。"}spa
出現狀況:調試
原來程序編譯時用的是vs2008在win 7 32系統環境下編譯的。日誌
把程序源碼copy到win 8 64位 在vs2013下調試時出現以下錯誤。orm
未處理System.BadImageFormatException
Message=未能加載文件或程序集「System.Data.SQLite, Version=1.0.97.0, Culture=neutral, PublicKeyToken=db937bc2d44ff139」或它的某一個依賴項。試圖加載格式不正確的程序。
Source=Model
FileName=System.Data.SQLite, Version=1.0.97.0, Culture=neutral, PublicKeyToken=db937bc2d44ff139
FusionLog==== 預綁定狀態信息 ===
日誌: DisplayName = System.Data.SQLite, Version=1.0.97.0, Culture=neutral, PublicKeyToken=db937bc2d44ff139
(Fully-specified)
日誌: 初始 PrivatePath = NULL
調用程序集: Model, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null。
===
日誌: 此綁定從 default 加載上下文開始。
日誌: 正在使用應用程序配置文件: C:\Users\文件路徑\bin\Debug\項目名稱.vshost.exe.Config
日誌: 使用 C:\Windows\Microsoft.NET\Framework64\v2.0.50727\config\machine.config 的計算機配置文件。
日誌: 策略後引用: System.Data.SQLite, Version=1.0.97.0, Culture=neutral, PublicKeyToken=db937bc2d44ff139
日誌: 試圖下載新的 URL file:///C:/文件路徑/bin/Debug/System.Data.SQLite.DLL。
錯誤: 未能完成程序集的安裝(hr = 0x8007000b)。探測終止。ci
StackTrace:
在 Model.SysOperator.GetSysOperatorByCondition(String condition)
在 Model.SysOperator.UserLogin(String EmpAcct, String EmpPwd, String StoreId) 位置 c:\Users\\Model\SysOperator.cs:行號 104
在 TradingSystem.LoginForm.UserLogin(String username, String password, String storeId, HtmlElement txtUserName, HtmlElement txtPwd) 位置 c:\LoginForm.cs:行號 82
在 LoginForm.<>c__DisplayClass1.<btnLogin_Click>b__0() 位置 c:\LoginForm.cs:行號 73
在 System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state)
在 System.Threading.ThreadHelper.ThreadStart()
InnerException: 源碼
緣由:it
SQLite下載的平臺類型不對!!調試出錯用的是 64 位WIN8 系統 ,而SQLite下載的是X86 32位的!
io
解決方案:編譯
在VS2013中的「項目「裏的「屬性」裏的「生成」-》目標平臺設置爲x86 配置