本快速教程介绍了如何使用 C# 创建自解压 Zip,以 EXE 文件的形式,可以直接执行以在具有 .NET Framework 2.0 或更高版本的系统上提取内容。它提供了开发环境配置详细信息、完成任务所需的命名空间和类的列表以及可运行的 C# 示例代码。当您**使用 C# 创建自解压 ZIP 文件时,可以通过本文中描述的多种方式对其进行自定义。
使用 C# 创建自解压 ZIP 的步骤
- 配置应用环境添加 Aspose.ZIP 用于创建 SFX ZIP
- 为新的 SFX 文件创建文件流
- 实例化一个 Archive 类对象
- 通过使用 CreateEntry 方法提供条目名称和目标文件,在新存档中创建一个条目
- 实例化 SelfExtractorOptions 类对象以自定义输出 EXE
- 使用自定义配置将存档另存为 EXE 文件
这些步骤描述了使用 C#* 在执行任务所需的一系列步骤的帮助下生成*自解压 ZIP 的过程。我们需要创建一个文件流,用于保存存档文件,然后通过向其中添加单个文件条目来创建存档。还探索了在将输出 SFX 文件保存为 EXE 文件之前配置输出 SFX 文件的选项。
使用 C# 创建自解压 ZIP 的代码
using System.IO; | |
using Aspose.Zip; | |
using Aspose.Zip.Saving; | |
namespace CreateSelfExtractingZipUsingCSharp | |
{ | |
class Program | |
{ | |
static void Main(string[] args) // Main function to create self extracting zip using csharp | |
{ | |
// Initialize license | |
Aspose.Zip.License lic = new Aspose.Zip.License(); | |
lic.SetLicense("Aspose.Total.lic"); | |
// Create a file | |
using (FileStream SfxZipFile = File.Open("SelfExtracting.exe", FileMode.Create)) | |
{ | |
// Instantiate an Archive | |
using (var archiveInstance = new Archive()) | |
{ | |
// Create entry for a file | |
archiveInstance.CreateEntry("entry.jpg", "Sample.jpg"); | |
// Create options for SFX | |
var selfExtractorOptions = new SelfExtractorOptions() | |
{ | |
ExtractorTitle = "Test Extractor", | |
CloseWindowOnExtraction = true, | |
TitleIcon = @"MyIcon.ico" | |
}; | |
archiveInstance.Save(SfxZipFile, new ArchiveSaveOptions() { SelfExtractorOptions = selfExtractorOptions }); | |
} | |
} | |
System.Console.WriteLine("Done"); | |
} | |
} | |
} |
此代码通过指导将单个条目添加到存档中来演示如何使用 C#* 生成自解压 ZIP。请注意,您还可以使用 CreateEntries() 方法将完整的文件夹添加到存档中,该方法允许选择要存档的文件夹。在此过程中,如果需要,您还可以使用 DeleteEntry 方法从存档中删除一些文件。
这个简短的教程教我们创建一个 SFX ZIP 文件,但是如果你想创建一个 7z 存档,请参阅 如何在 C# 中创建 7z 存档 上的文章。