gac是什么意思

发布时间:2024-10-12 16:42:01 来源:整理于互联网

GAC 是全局程序集缓存Global Assembly Cache的缩写。

它是存放各种.net 平台下面需要使用的 DLL 的地方具体目录在 windows/assembly 。

GAC 出现的原因是为了避免像之前在.net 平台之前把公共 DLL 存放到 system32 文件夹下因版本不一致等原因造成的 DLL Hell 问题。

要将一个 DLL 放入 GAC 需要获取强名称签名。可以使用 SDK 的 sn 工具生成 snk 签名文件然后在程序的 assembly.cs 文件中加入相关设置或者通过项目选项页设定 key 。编译解决方案后生成包含签名的.dll 文件。

安装到 GAC 有两种办法一是把 DLL 拖入 windows/assembly 目录注意不是复制粘贴是拖动但在 Win7 下可能会遇到权限问题二是使用 gacutil 若出现拒绝访问的错误需以管理员身份进入命令行操作。

使用 GAC 中的 DLL 时在项目中添加引用编译出来的 DLL 即可。当引用的 DLL 文件存在时会优先引用本地的不存在才引用 GAC 中的。

卸载 GAC 中的 DLL 可以通过在命令行输入“gacutil u 具体的 DLL 名称”来完成。

声明:本文转载自互联网,转载目的在于传递更多信息,并不代表本网赞同其观点和对其真实性负责。文章内容仅供参考。如因作品内容、版权和其他问题需要同本网联系的,请发送邮件联系删除。
来源:整理于互联网
返回
顶部