C# 删除应用程序的DLL依赖项
在我的应用程序中,我需要压缩和解压一些文件。为此,我使用了dotnetzip库(Ionic.Zip.dll-) 一切正常,但当我获取文件的EXE并尝试从其他文件夹运行它时,它无法运行。我必须将Ionic.Zip.dll保存在应用程序所在的文件夹中。 有什么出路吗?我只想要一个没有任何字符串的EXE文件。。。。C# 删除应用程序的DLL依赖项,c#,dependencies,dotnetzip,C#,Dependencies,Dotnetzip,在我的应用程序中,我需要压缩和解压一些文件。为此,我使用了dotnetzip库(Ionic.Zip.dll-) 一切正常,但当我获取文件的EXE并尝试从其他文件夹运行它时,它无法运行。我必须将Ionic.Zip.dll保存在应用程序所在的文件夹中。 有什么出路吗?我只想要一个没有任何字符串的EXE文件。。。。 或者除了dotnetzip库还有其他选项吗 将对另一程序集(例如第三方DLL)的引用添加到C#项目时,编译器不会将该程序集的内容添加到EXE中;它只是创建了一个链接,表示程序在运行时需要加
或者除了dotnetzip库还有其他选项吗 将对另一程序集(例如第三方DLL)的引用添加到C#项目时,编译器不会将该程序集的内容添加到EXE中;它只是创建了一个链接,表示程序在运行时需要加载该DLL。将.NET程序作为EXE文件加上所需的DLL文件分发是很正常的
但如果您愿意,可以将它们合并到一个EXE文件中。有几种不同的工具可以将多个.NET程序集合并为一个。查看或。如果它是一个开源项目,您可以只在项目中包含源代码,而不添加对“dll”的引用 你可以使用.net,看看或者你是否可以使用你给出的gzip格式。使用此选项,您将从项目中删除依赖项。看看这个没有外部依赖项的纯C#库:
它可以包含在您的应用程序中,并直接编译到单个EXE中—不需要外部ZIP库。只有直接解决问题的答案—但不能解释问题所在(:@Murph:尝试解释此解决方案适用于任何有此问题的应用程序…因此我编辑了帖子的标题…太好了!!非常感谢!!现在我不必提供DLL…但我想,gzip和普通Zip文件是不同的。@swand-Purankar-打包命名空间方法使用Zip格式。请看一看真的,这是我的这是可能的,但最好使用ILMerge或其他合并或嵌入机制。