GAC

GAC(Global AssemblyCache)全局程序集缓存是存放一些有很多程序都要用到的公共Assembly,例如System.Data、System.windows.Froms等。

它在任何带有已安装的 CLR 的机器(例如已安装了 CF.NET Pocket PC)上都可用。旨在跨应用程序共享的程序集可以存储在这里,而其必须有一个强名称。注意,安装了 GAC 的程序集必须有匹配的程序集名称和文件名,不包括文件扩展名(因此 MyAssembly 必须与 MyAssembly.dll MyAssembly.exe 配对)。 GAC位于作业系统目录下,如果是windowsXP则可以在C:\Windows\Assembly(这也是基底类别库所在的位置)

程序集安装在GAC中的好处:

(1) 
一个共享的位置意味着基于 RAM 的安装不需要有重复的 DLL(同一版本且同一文件名)耗费宝贵的空间。


(2)
并行版本允许同一 DLL 名称的多个版本对 CF.NET 应用程序可用。在编译时,程序集存储它们所依照生成的程序集版本信息,这意味着他们将永远使用相同的程序集版本运行。因此,即便是此 DLL 的更新的版本可用,程序集也会继续使用旧的 DLL,从而防止了任何类型的向下不兼容。


(3)
其他好处在于在桌面上使用 GAC,但不与压缩框架共享。
CLR 将访问 Cgautil.exe 实用工具来用关于安装了 GAC 程序集的信息更新 GAC。要将您的程序集安装到 GAC 中,首先用一个强名称为其签名,然后在您的应用程序部署过程中包括一个文本文件(扩展名为 .GAC),如 CAB 文件。这个 .GAC 文件需要放在 \Windows 目录中,而且应该用 ANSI UTF-8(不用 Unicode)编码。

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值