我再次开发了一个EXE:)
问题是它引用了SQLite dll文件,所以我将文件包含在同一路径上。现在在Windows 8中运行正常,但在Windows 7中它不是
错误是
System.IO.FileLoadException:无法加载文件或程序集'System.Data.SQLite,Version = 1.0.90.0,Culture = neutral,PublicKeyToken = db937bc2d44ff139'或其依赖项之一。应用程序无法启动,因为它的并排配置不正确。有关更多详细信息,请参阅应用程序事件日志或使用命令行sxstrace.exe工具。 (HRESULT异常:0x800736B1) 文件名:'System.Data.SQLite,Version = 1.0.90.0,Culture = neutral,PublicKeyToken = db937bc2d44ff139'---> System.Runtime.InteropServices.COMException(0x800736B1):应用程序无法启动,因为它的并行配置不正确。请参阅应用程序事件日志或使用命令行sxstrace.exe工具获取更多详细信息。
我尽我所能,但它没有在Windows 7上运行
这是一个独立的EXE。没有设置。
修改 这就是应用程序事件日志所说的
“C:\ System.Data.SQLite.dll”的激活上下文生成失败。无法找到依赖程序集Microsoft.VC80.CRT,processorArchitecture =“x86”,publicKeyToken =“1fc8b3b9a1e18e3b”,type =“win32”,version =“8.0.50727.6195”。请使用sxstrace.exe进行详细诊断。
答案 0 :(得分:1)
我认为这就是你提到的原因,SQLite正在搜索64位dll!
尝试下载64位网址并使用exe
打包您可以从这里下载 http://system.data.sqlite.org/index.html/doc/trunk/www/downloads.wiki
答案 1 :(得分:0)
并排配置不正确
这意味着要么:
<强>解决方案:强>
如果您不确定是否可以通过右键单击参考来使用IlSpy进行检查。
答案 2 :(得分:0)
通常,此错误表示缺少依赖程序集。
“C:\ System.Data.SQLite.dll”的激活上下文生成失败。 依赖大会 的 Microsoft.VC80.CRT 下,ProcessorArchitecture用于= “86” 公钥= “1fc8b3b9a1e18e3b”,类型= “Win32的”,版本= “8.0.50727.6195” 无法找到 。请使用sxstrace.exe进行详细诊断。
这个程序集通常称为
Microsoft Visual C ++ 2005 Redistributable Package(x86)
,可以从here下载。
但,往往还有其他原因。今天,对我们来说,它是“Bit9安全”,它不喜欢我们在我们的本地机器上对SQLite.dll程序集进行数字签名,并将签名的程序集上传到我们的服务器应用程序文件夹,其中包含与其他程序集不同的时间戳。应用文件夹。
解决方法是重新编译应用程序,签署所有程序集,上传和覆盖现有的应用程序文件。