InfoQ

InfoQ

新闻

我的书签

登录注册 以永久保存书签。

该内容已经被标记书签!

标记书签错误,请重试!

.NETZ——.NET函数库的压缩和打包工具

作者 Jonathan Allen 译者 朱永光 发布于 2009年9月10日

领域
运维 & 基础架构,
语言 & 开发
主题
.NET ,
部署 ,
编程 ,
包管理器 ,
云计算

从一开始,.NET运行时所提供的正统打包系统就是程序集集合的方式。这虽然比松散的脚本文件或类文件集合的方式好很多,却没有静态连接执行文件或可执行的JARs那样方便。Vasian Cepa的.NETZ为广大的开发人员带来了压缩.NET程序集和打包到单一执行文件的功能。

默认情况下,.NETZ支持用#ZipLib或.NET 2.0的IO.Compression.DeflateStream来进行压缩。如果有必要,可以创建额外的压缩提供器。理论上,新的压缩提供器也能包含加密功能,不过类似的提供器还没有直接内置。

它也存在一些限制。在.NET 2.0项目中,不能支持本地化资源DLL。不像1.0和1.1,.NET 2.0不会触发AssemblyResolve和ResourceResolve事件以动态地解压缩程序集。不过,也有变通的方法的。

这个系统的另外一个限制是,不支持原生DLL或由托管C++创建的DLL。对于后者,是由于“托管C++编译器以一种不被.NET通用程序集载入程序所理解的方式,优化PE文件和IL元数据”。

查看英文原文:.NETZ – Compression and Packing for .NET Libraries

译者 朱永光 是IT自由人和环境保护者,微软最有价值专家(MVP)和MCSD。