桌面软件(.Net 4.0,在Visual Studio 2010下编译,目标:x86
)我正在开发的是System.Data.SQLite(1.0.86 for x86,来自system.data.sqlite) .org *)这是第一次。
在开发机器上(以及运行System.Data.SQLite-installer的所有其他机器),一切正常。
在所述试验机然而,安装在启动应用程序并显示初始屏幕,显示GUI之前(用Visual Studio安装在一个标准的MSI安装)之后,应用程序创建与所述错误的异常:
System.IO.FileNotFoundException:无法加载文件或程序集“System.Data.SQLite.dll”或其依赖项之一。
上述文件本身位于应用程序目录(正确版本)中,以及所有其他引用的DLL。
我认为这适用于开发机器,因为安装选项“安装图像”。我没有在GAC中安装SQLite。应用程序项目直接引用预构建的System.Data.SQLite.dll,local copy
设置为true
。
我有没有看到任何依赖?
或者它是一个缺少Microsoft Visual C ++运行时库(不在应用程序目录中)?
或者缺少SQLite.Interop.DLL
(应用程序目录中不存在)?
我该怎么办?
答案 0 :(得分:3)
确保安装了最新的Microsoft Visual C ++ 2010 Redistributable Package。 http://www.microsoft.com/en-gb/download/details.aspx?id=5555
为什么呢? sqlite DLL中嵌入了一些非托管代码,它们在运行时直接从程序集运行。这表明我是一个糟糕的图像格式异常,但你永远不知道!