问题是当我想将我的.exe与这些DLL合并时。
当我尝试合并它们时,会出现错误:合并期间发生异常:
ILMerge.Merge:无法从“D:\ MyProject \ bin \ Release \ SQLite.Interop.dll”位置加载程序集。跳过并处理其余参数。 1 GT;在ILMerging.ILMerge.Merge() 1 GT;在ILMerging.ILMerge.Main(String [] args)
答案 0 :(得分:1)
SQLite.Interop.dll是native interop asembly,不是托管程序集。 (您可以尝试使用ILSpy或ildasm打开SQLite.interop.dll来验证。
ILMerge只能将托管程序集“合并”为一个可执行文件。所以基本上你正在尝试的是不可能的。
您必须创建安装程序(MSI)或创建一个引导程序可执行文件,该文件夹将所有必需文件保存为资源,并将其提取到临时文件夹,然后执行解压缩的exe文件。