C# 生成强命名程序集并添加到GAC

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

注册步骤如下:

1. 生成强程序集

  1.1 生成密钥对

     (1) 一般在VS的安装目录下 打开开发人员命令提示符。

      

     (2) 管理员权限运行开发人员命令行,输入命令生成密钥,例如: sn -k C:UsersXXXXXXDesktopGACMyDLL.key

     

1.2 将密钥给程序集签名

       将生成的密钥文件放在任意的程序集工程根目录下:

  

  在AssemblyInfo.cs文件中添加一下内容:

  

  编译并生成DLL。

2  通过gacutil 将DLL注册到GAC

 注册有两个方法:

 2.1 使用“开发人员命令提示”注册:

    

2.2 使用cmd命令行:

  这是要先将gacutil.exe及其依赖文件拷贝出来:

    

  以管理员权限运行cmd如下:

  

  至此,MyDLL.dll就已经成功添加到了GAC中了。

3  测试验证

  3.1 在调用工程中,通过Reference -> Browse 添加MyDLL.dll

    

  3.2 调用MyDLL.dll中各种接口,并编译程序。此时,MyDLL.dll也被复制到了同目录下:

     

  3.3 此时删除该目录下的MyDLL.dll,发现CallMyDLL.exe仍能正常调用DLL中的函数。证明MyDLL.dll注册到GAC中是有效的。

 参考引用:

https://blog.csdn.net/u013813838/article/details/52886438

https://blog.csdn.net/qq_35891974/article/details/76692847

原文地址:https://www.cnblogs.com/YQ2014/p/9429444.html