我想在另一臺計算機上運行C#程序,並且由於我遇到了一些運行該程序的麻煩,我將所有內容都放入了try-statement中的「window.initialized」事件。「無法加載文件或組裝」「找不到指定的文件」例外
當我在另一臺計算機上運行該程序時,我收到一個異常,說「System.Data.SQLite.dll」找不到,即使它坐在正在執行的.exe文件的調試文件夾中也位於。這感覺很奇怪,我不知道如何解決它。
有人有想法嗎?
我想在另一臺計算機上運行C#程序,並且由於我遇到了一些運行該程序的麻煩,我將所有內容都放入了try-statement中的「window.initialized」事件。「無法加載文件或組裝」「找不到指定的文件」例外
當我在另一臺計算機上運行該程序時,我收到一個異常,說「System.Data.SQLite.dll」找不到,即使它坐在正在執行的.exe文件的調試文件夾中也位於。這感覺很奇怪,我不知道如何解決它。
有人有想法嗎?
這裏有三點我知道導致此問題:
a)按照你的意見說,裝配基準點到另一個版本比在程序目錄中的文件之一。
b)該應用程序針對的是與組件不同的平臺(即x86與x64)。我不確定,但是當一個程序集針對「任何CPU」而另一個針對特定平臺(x86或x64)構建時,它可能會導致應用程序在一臺機器上而不在另一臺機器上工作。
c)引用程序集的目標是.NET框架版本,它與應用程序本身不同,它在開發機器上可用,但不在另一臺機器上。這將導致程序集綁定異常。要進行檢查,看看屬性窗口中選擇相關的組裝後:
不知道是否還有更多,但我希望它能幫助。
我的機器和我正在測試該程序的那臺機器運行x64,並且因爲它對我來說不可能。但我會嘗試安裝程序集正在使用的NET版本,並返回結果。 – Tokfrans
該文件夾中的版本是否與您的應用程序編譯的版本相同? – ChrisBint
調試文件夾?你的意思是你從另一臺計算機上的視覺工作室運行? –
@ChrisBint是的,它是相同的版本。 – Tokfrans