摘要: .Net使用Name、Version、Culture、PublicToken四个属性来唯一标识一个程序集,而不同产品前三个属性(Name、Version和Culture)完全相同的情况是有可能发生的,如此一来,这唯一标识程序集的重任就落到PublicToken的头上了。强命名的程序集正是使用RSA来保证PublicToken的唯一性,因为在理论上,非对称算法RSA生成的公钥/私钥对不会重复。.Net正是通过在编译项目时将指定的公钥/私钥对写入程序集来保证其唯一性。Windows 中常常出现“DLL hell”问题的原因就是因为在进行软件升级或安装时,程序集不能唯一的标识而当前的程序集文件会替代 阅读全文
posted @ 2012-02-05 21:55 challengesoflife 阅读(317) 评论(0) 推荐(0) 编辑