无法在目标机器上加载文件或程序集system.data.sqlite
本文关键字:文件 程序集 system sqlite data 加载 目标 目标机 机器 | 更新日期: 2023-09-27 18:12:51
我有一个windows窗体,连接到一个sqlite数据库。
应用程序在我的pc上运行良好,但当我在任何其他pc上运行它时,我得到消息:
could not load file or assembly 'system.data.sqlite, version=1.0.84.0. culture=neutral, publickey token=db937bc2d44ff139' or one of irs dependencies
我尝试将App.xml更改为:
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<startup useLegacyV2RuntimeActivationPolicy="true">
<supportedRuntime version="v4.0" />
</startup>
</configuration>
目标机器安装了。net 4.5,这个问题与。net无关,因为这个消息只出现在使用sqlite的类上。
我试过安装Visual c++ 2010 SP1 Redistributable x86,但这并没有解决问题。但是当我安装了Visual Studio后,它就像魅力一样工作了。没有在客户端机器上安装Visual Studio,我应该如何运行我的应用程序?
SQLite .NET程序集不是。net Framework或Visual c++ 2010 SP1 Redistributable x86的一部分;您应该将它们部署到您的应用程序中。
来自System.Data.SQLite FAQ:
部署程序集的推荐方法是"应用程序本地"(即将它们复制到安装应用程序的目录)
也不要忘记本地互操作dll;您基本上需要这样部署:
- YourApp.exe
- System.Data.SQLite.dll
- x86/SQLite.Interop.dll
- x64/SQLite.Interop.dll