如何将程序集(dll)安装到全局程序集缓存(GAC)中

针对一些类库项目或用户控件项目(一般来说,这类项目最后编译生成的是一个或多个dll文件),在程序开发完成后,有时需要将开发的程序集(dll文件)安装部署到GAC(全局程序集缓存)中,以便其他的程序也可以调用。

    一般来说,将程序集(dll)安装到GAC中有以下两种方法:

1.  手动将要安装部署的dll文件拖至C:/windows/assembly文件夹下。
2.  使用gacutil.exe工具安装。gacutil -i "要注册的dll文件全路径"。
    如在命令行输入: gacutil -i D:/myDLLDemo/IvanDemo.dll

但是,在进行上述安装过程之前,我们必须保证此项目具有强名称才可以。

    给项目添加强名称需要以下三步:

1. 在项目调试完成后,使用sn.exe工具生成一个密钥。sn -k "生成的密钥的全路径"。
    如在命令行输入: sn -k D:/myKey.snk
2. 将密钥与项目的程序集进行关联: 项目属性-->签名-->为程序集签名-->选择强名称密钥文件。
    此外, 还有另外一种方法,就是在项目的AssemblyInfo.cs文件中,修改"AssemblyKeyFile"的属性。
    如: [assembly:AssemblyKeyFile("D://myKey.snk")]
3. 重新生成项目集。

BTW: gacutil.exe, sn.exe等工具一般在VS.Net2005/SDK/v2.0/Bin目录下。


本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/fancyivan/archive/2008/08/27/2837826.aspx

你可能感兴趣的:(如何将程序集(dll)安装到全局程序集缓存(GAC)中)