Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/290.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 删除应用程序的DLL依赖项_C#_Dependencies_Dotnetzip - Fatal编程技术网

C# 删除应用程序的DLL依赖项

C# 删除应用程序的DLL依赖项,c#,dependencies,dotnetzip,C#,Dependencies,Dotnetzip,在我的应用程序中,我需要压缩和解压一些文件。为此,我使用了dotnetzip库(Ionic.Zip.dll-) 一切正常,但当我获取文件的EXE并尝试从其他文件夹运行它时,它无法运行。我必须将Ionic.Zip.dll保存在应用程序所在的文件夹中。 有什么出路吗?我只想要一个没有任何字符串的EXE文件。。。。 或者除了dotnetzip库还有其他选项吗 将对另一程序集(例如第三方DLL)的引用添加到C#项目时,编译器不会将该程序集的内容添加到EXE中;它只是创建了一个链接,表示程序在运行时需要加

在我的应用程序中,我需要压缩和解压一些文件。为此,我使用了dotnetzip库(Ionic.Zip.dll-)

一切正常,但当我获取文件的EXE并尝试从其他文件夹运行它时,它无法运行。我必须将Ionic.Zip.dll保存在应用程序所在的文件夹中。 有什么出路吗?我只想要一个没有任何字符串的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或其他合并或嵌入机制。