Visual C# .NET 中将程序集安装到全局程序集缓存中

全局程序集缓存

<script type="text/javascript"></script> 要使用 Visual Studio .NET 创建小型类库项目、生成强名称,以及在 GAC 中安装项目的 .dll 文件,请按照下列步骤操作:

  1. 在 Visual Studio .NET 中,创建一个新 Visual C# .NET 类库项目,并将该项目命名为 GACDemo
  2. 必须使用强名称。要生成此加密密钥对,请使用 SN 工具。此工具位于安装 .NET Framework 解决方案开发人员工具包 (SDK) 的 /bin 子目录中。SN 工具易于使用。命令行语句采用以下形式:
    sn -k "[DriveLetter]:/[DirectoryToPlaceKey]/[KeyName].snk"
  3. 在 C:/ 中创建一个名为 GACKey 的目录,以便您可以轻松地找到密钥,并从命令提示符处访问该密钥。

    注意:对于大多数用户,.NET 工具位于 C:/Program Files/Microsoft.NET/FrameworkSDK/Bin 中。键入以下 SN 命令前,可能需要在您的计算机上将与该路径类似的路径复制到 .NET bin 目录中。从命令提示符处键入 cd,右键单击以粘贴该路径,然后按 Enter,快速转至 SN 工具所在的目录。

    键入以下内容:
    sn -k "C:/GACKey/GACkey.snk"
  4. 将生成一个密钥,但是它与项目的程序集尚无关联。要建立此关联,请在 Visual Studio .NET 解决方案资源管理器中双击 AssemblyInfo.cs 文件。此文件具有一个程序集属性列表,默认情况下,在 Visual Studio .NET 中创建项目时将包括这些属性。在代码中修改“AssemblyKeyFile”程序集属性,如下所示:
    [ assembly:AssemblyKeyFile("C://GACKey//GACKey.snk")]
    通过按 Ctrl+Shift+B 来编译项目。您不必具有任何附加代码即可以在 GAC 中安装 .dll 文件。
  5. 您可以通过使用 Gacutil 工具或者通过将 .dll 文件拖至适当的目录来安装 .dll 文件。如果您使用 Gacutil 工具,则可以使用以下命令:
    gacutil -I "[DriveLetter]:/[PathToBinDirectoryInVSProject]/gac.dll"
    如果您要拖动文件,请使用 Microsoft Windows 资源管理器。打开 Windows 资源管理器的两个实例。在一个实例中,找到控制台项目的 .dll 文件输出的位置。在另一实例中,找到 c:/[SystemRoot]/Assembly。

    将您的 .dll 文件拖到“Assembly”文件夹中。

    完整代码列表 (AssemblyInfo.cs)

验证

<script type="text/javascript"></script>

  1. 启动 Windows 资源管理器。
  2. 找到 C:/SystemRoot/ 程序集。
  3. 在已安装的 .dll 文件的列表中,您会看到 GACDemo。
将程序集安装到全局程序集缓存中 (Installing an Assembly into the Global Assembly Cache)
http://msdn2.microsoft.com/en-us/library/dkkx7f79(vs.71).aspx (http://msdn2.microsoft.com/en-us/library/dkkx7f79(vs.71).aspx)
全局程序集缓存 (Global Assembly Cache)
http://msdn2.microsoft.com/en-us/library/yf1d93sz(vs.71).aspx (http://msdn2.microsoft.com/en-us/library/yf1d93sz(vs.71).aspx)
全局程序集缓存工具 (Global Assembly Cache Tool)
http://msdn2.microsoft.com/en-us/library/ex0ss12c(vs.71).aspx (http://msdn2.microsoft.com/en-us/library/ex0ss12c(vs.71).aspx)
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值