Chinaunix首页 | 论坛 | 博客
  • 博客访问: 268806
  • 博文数量: 42
  • 博客积分: 2785
  • 博客等级: 少校
  • 技术积分: 893
  • 用 户 组: 普通用户
  • 注册时间: 2006-11-15 12:21
个人简介

一句话介绍

文章分类

全部博文(42)

文章存档

2013年(1)

2012年(1)

2011年(11)

2010年(10)

2009年(6)

2008年(13)

分类: 系统运维

2008-04-22 13:31:52

snk文件在.net里面被用作存放密或密钥对的存文件,生成密钥对snk文件可以用.net中的sn.exe命令,如“sn   -k   keyPair.snk”   
    
  snk
本身只是用来存放非
称密的,但在各个需要用到加密、名的地方都可以使用:   
  1
) 用snk文件生成
命名程序集,这样一个assembly才可以被full-trust属性,也可以被添加到GAC中。在VS.NET中生成 strong-named   assembly,只需要在AssemblyInfo.cs里面添加一下代编译即可:   
  [assembly:   AssemblyDelaySign(false)]   
  [assembly:   AssemblyKeyFile("..\\..\\keyPair.snk")]   
  [assembly:   AssemblyKeyName("")]   

命名程序集的:目前Windows中出DLL Hell问题(两个不同的公司可能开发处具有相同名称的程序集,如果将相同名称的程序集放置到同一个目下,会出程序集覆盖象,最后安装的程序集会覆盖前面的程序集,从而可能用序不能正常运行)。由此看来,靠名称来区分程序 集是不足的。CLR采取了命名程序集的方式来唯一的表示程序集。命名程序集包含四个标识:名称,版本号,言文化标识和一个共有/私有密钥对。两 程序集/部署方式:.Net支持两程序集:弱命名程序集和命名程序集(注:.Net框架中没有弱命名程序集,只是了和命名程序集相对应而 已)。弱命名程序集和命名程序集在构上是相同的。他都采用PE文件格式,包含PECLR,元数据和清表。区在于:命名程序集有一 个布者的公/钥签,他用于唯一的标识程序集的布者。通/钥对,我可以程序集行唯一的标识,安全策略和版本策略。


AssemblyInfo.cs主要用来定生成的有程序集的常信息dll文件的一些参数
看以下具体明:
//
备注
[assembly:AssemblyDescription("
用最强的抢劫类写成!")]
//
产品名称
[assembly:AssemblyProduct("
无为搜索")]
//
公司
[assembly:AssemblyCompany("
无为网络")]
//合法商标
[assembly:AssemblyTrademark("无为")];
//内部名称
[assembly:AssemblyCulture("")]
//
设计者
[assembly:AssemblyDescription("
无为类库")]
//版权

[assembly:AssemblyCopyright("")]
//配置文件
[assembly:AssemblyConfiguration("Configuration")]
//产品版品: 可指定,如下
// 程序集的版本信息由下列 4 个值组成:
//
//      主版本
//      次版本
//      内部版本号
//      修订号
//
// 您可以指定所有这些值,也可以使用“修订号”和“内部版本号”的默认值,方法是按
// 如下所示使用 '*':
[assembly:AssemblyVersion("1.0.*")]

生成dll文件以后再点击右键看看它的属性,你就为在里面看到熟悉的内容了

阅读(529) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~