首页 > 程序集强命名与GAC

程序集强命名与GAC

1、新建项目Other,在其中创建如下类:

using System;

using System.Collections.Generic;

using System.Text;

namespace Other.全局应用缓存

{

    public class GAC

     {

         public string CallGAC()

         {

             return "GAC end";

         }

     }

}

2、强命名程序集:

在项目Other上,击右键,签名,为程序集签名,新建或者浏览密钥文件

也可以在SDK 命令提示中创建密钥,sn -k D:CompanyA.keys,在此引用。vs2003:[assembly: AssemblyKeyFile

("D:CompanyA.keys")]

编译,此时Other.dll已经是强命名程序集

3、共享程序集Other.dll:

将程序集(如:E:个人文件夹Code企业级应用解决方案OtherinDebugOther.dll)直接拖入全局应用程序缓存(如:

C:WINDOWSassembly)

也可是在SDK 命令提示中完成,如:GACUtil /i E:个人文件夹Code企业级应用解决方案OtherinDebugOther.dll

4、调用共享程序集Other.dll

新建Web项目MyWebProject,添加引用刚才创建的程序集Other.dll,比如:E:个人文件夹Code企业级应用解决方案

OtherinDebugOther.dll,此时MyWebProject的web.config中有了:



  

   

    


调用代码如下:

public partial class _Default : System.Web.UI.Page

{

     protected void Page_Load(object sender, EventArgs e)

     {

     }

     protected void Button1_Click(object sender, EventArgs e)

     {

         //使用反射,不需要引用

         System.Reflection.Assembly assembly = System.Reflection.Assembly.Load("Other, Version=1.0.0.0, Culture=neutral, PublicKeyToken=43FC64574884C304");

         this.Response.Write("利用反射,从GAC中载入程序集" + assembly.GlobalAssemblyCache);

     }

     protected void Button2_Click(object sender, EventArgs e)

     {

         //必须引用,网站MyWebProject部署之后,可以删除调E:个人文件夹Code企业级应用解决方案

OtherinDebugOther.dll

         Other.全局应用缓存.GAC gac = new Other.全局应用缓存.GAC();

         string result = gac.CallGAC();

         this.Response.Write(result);

     }

}

更多相关:

  • 最近公司要做一个企业微信的小程序,方便企业内的成员来登录,以便一些公司内的业务,只限于公司内的成员来操作,因为有微信小程序的开发经验,所以先当作微信小程序来开发了!首先来讲一下这个企业微信小程序与微信小程序登录的不同,下面是微信小程序登录的流程:小程序内需要调用wx.login(),获取临时登录凭证code,并回传到开发者服务器,然后...

  • sys.argv[]说白了就是一个从程序外部获取参数的桥梁,这个“外部”很关键,因为我们从外部取得的参数可以是多个,所以获得的是一个列表(list),也就是说sys.argv其实可以看作是一个列表,所以才能用[]提取其中的元素。其第一个元素是程序本身,随后才依次是外部给予的参数。下面我们通过一个极简单的test.py程序的运行结果来说...

  •   标题:创意虾-程序纹理Blender大师班 信息: 什么是程序纹理? 程序纹理将简单的数学转换为无限的真实感着色器,具有无限的多样性和分辨率。 超越看起来像一团像素特写的图像纹理,运用程序纹理的力量,清晰的细节和没有重复的模式。 你是不是在玩节点滑块,得到了一些有趣的结果,但不确定引擎盖下到底发生了什么?掌握了节...

  • gprof用于分析函数调用耗时,可用gprof分析最耗时的函数,以便优化程序。 gcc链接时也一定要加-pg参数,以使程序运行结束后生成gmon.out文件,供gprof分析。 gprof默认不支持多线程程序,默认不支持共享库程序。 gcc 编译程序时添加编译选项-pg 运行程序,程序退出时生成 gmon.outgprof ./...

  • 一.虚拟机、linux简介 简单介绍一下虚拟机还有就是各种操作系统,比如centos,Ubuntu 操作系统:linux(centos、Ubuntu、redhat),Android,Windows(xp、win8、win10) 进程,多个程序,分时技术,并行技术 一次打开多个程序,我们在只有一个cpu,如何让这些程序进...