ILMerge错误:SQLite.Interop.dll [无法从该位置加载程序集]

时间:2014-02-11 12:52:34

标签: c# .net sqlite dll

问题是当我想将我的.exe与这些DLL合并时。

当我尝试合并它们时,会出现错误:合并期间发生异常:

ILMerge.Merge:无法从“D:\ MyProject \ bin \ Release \ SQLite.Interop.dll”位置加载程序集。跳过并处理其余参数。 1 GT;在ILMerging.ILMerge.Merge() 1 GT;在ILMerging.ILMerge.Main(String [] args)

1 个答案:

答案 0 :(得分:1)

SQLite.Interop.dll是native interop asembly是托管程序集。 (您可以尝试使用ILSpyildasm打开SQLite.interop.dll来验证。

ILMerge只能将托管程序集“合并”为一个可执行文件。所以基本上你正在尝试的是不可能的。

您必须创建安装程序(MSI)或创建一个引导程序可执行文件,该文件夹将所有必需文件保存为资源,并将其提取到临时文件夹,然后执行解压缩的exe文件。