如何:将程序集安装到全局程序集缓存

注意

本文特定于 .NET Framework。 它不适用于 .NET 的较新版本实现,包括 .NET 6 及更高版本。

全局程序集缓存 (GAC) 存储由多个应用程序共享的程序集。 使用以下任一组件将程序集安装到全局程序集缓存中:

重要

可以只将强名称程序集安装到全局程序集缓存中。 有关如何创建强名称程序集的信息,请参阅如何:使用强名称为程序集签名

Windows Installer

建议使用 Windows Installer(即 Windows 安装引擎)将程序集添加到全局程序集缓存。 Windows Installer 可提供全局程序集缓存中程序集的引用计数,还具有其他优点。 若要创建 Windows Installer 的安装程序包,请使用适用于 Visual Studio 2017 的 WiX 工具集扩展

全局程序集缓存工具

可以使用 .NET 全局程序集实用程序 (gacutil.exe) 将程序集添加到全局程序集缓存,并查看全局程序集缓存的内容。

备注

Gacutil.exe 仅用于开发目的。 请勿用于将生产程序集安装到全局程序集缓存。

使用 gacutil.exe 在 GAC 中安装程序集的语法如下:

gacutil -i <assembly name>

在此命令中,<assembly name> 是要在全局程序集缓存中安装的程序集的名称。

如果 gacutil.exe 不在系统路径中,请使用 Visual Studio 开发人员命令提示或 Visual Studio 开发人员 PowerShell

下面的示例将文件名为 hello.dll 的程序集安装到全局程序集缓存。

gacutil -i hello.dll

备注

在 .NET Framework 的早期版本中,可以使用 Shfusion.dll Windows shell 扩展,通过将程序集拖到“文件资源管理器”来安装这些程序集。 从 .NET Framework 4 开始,Shfusion.dll 已过时。

请参阅