1,新建一个类库项目

wKiom1SHBpDgVY2UAABRk3swQzE643.jpg

2,创建强命(要共享程序集  ,需要一个强命  )

①命令模式创建

        <1,打开vs命令窗口

        wKioL1SHB-_DWuJeAAEa4_iXlLM147.jpg

        <2,使用命令:

        sn -k asd.snk

 

②vs创建

        <1,右击项目--属性

        <2,

        wKioL1SHCHWS6oS-AAGWBHiQcZc832.jpg

 

3,安装共享程序集到GAC(全局程序集缓存)

        安装命令:gacutil -i  完整路劲+程序集名称

 

4,使用共享程序集

        右击项目引用---添加引用----浏览找到程序集(路劲见下面的‘注意’)

 

*当引用程序集之后会发现,在该项目的文件夹里找不到引用的DLL,这就是引用了共享程序集(如果引用的是私有程序集的话,该私有程序集会存在该项目中)

 

附:

-------------gacutil 工具命令 

安装:gacutil -i 完整路劲+程序集名称
强制安装:gacutil -if 完整路劲+程序集名称
查看:gacutil -l 程序集名称
卸载:gacutil -u 程序集名称

 

-------------sn工具命令

查看公钥和公钥标记:
sn -Tp C:\Windows\Microsoft.NET\assembly\GAC_MSIL\ZD.Dome\v4.0_1.0.0.0__136baf7bfe28ec97\ZD.Dome.dll

 

注意:
现在我们打开“C:\Windows\assembly”的时候,我们并没有找到刚MyLibrary.dll。原来在.NET 4中,GAC 被分在2个地方。.NET 1.0 到.NET 3.5的基础类库 就放到“C:\Windows\assembly”这里。而且.NET 4 编译下的程序集,是放到“C:\Windows\Microsoft.NET\assembly\GAC_MSIL\”中。。