搜索

如何生成密钥文件Snk

发布网友 发布时间:2022-04-20 17:26

我来回答

1个回答

热心网友 时间:2022-04-27 13:28

VS2005公钥私钥SN.EXE使用VS2005strongname的原理:先利用SN.exe这个工具生成一个比如SampleKey.snk的文件,这个文件的英文原文叫stringnamekeyfile,然后用加密的算法根据SampleKey.snk生成一个SampleKeyPublic.snk.最后在根据SampleKeyPublic.snk提取一个publickeytoken,publickeytoken是一个16位的数字和字母混合的数(我不敢确定是不是十六进制数):大致流程如下:SampleKey.snk--根据一定的算法-->SampleKeyPublic.snk---->publickeytoken所以我们只要SampleKey.snk和publickeytoken就可以了,SampleKeyPublic.snk就没什么用了.因为SampleKeyPublic.snk的贡献做完了,所以我们不要为"为什么在vs2003不用吊SampleKeyPublic.snk"而不爽.实际操作如下:1.打开SDKCommandPrompt或者VS2005中的VisualStudio2005CommandPrompt.而不是windows的cmd2.输入sn-kSampleKey.snk,得到的文件在命令提示符的当前文件夹下(微软叫文件夹很少叫目录,最正点是folder)3.输入sn-pSampleKey.snkSampleKeyPublic.snk4.输入sn-tSampleKeyPublic.snk得到publickeytoken打开VS2005,找到项目,然后右击"项目名"找到"属性","属性"里面有个"Signing"的选项卡,然后钩上"Signtheassembly",再Chooseastrongnamekeyfile.做完了操作,然后记得保存,编译这样你的DLL才能拖到GAC,GAC就是"全局程序集缓存",这就是为什么你的你的项目的bin文件夹下没有System.Data,你都能引用的原因,因为程序会自动去找GAC,GAC的位置在win2003中是"c:\windows\assembly".如果你的assembly在GAC中,那么你的东西也是蛮吊的。SQlServer2005Samplebug是指在“C:\ProgramFiles\MicrosoftSQLSever\90\Samples\IntegrationService\ProgrammingSamples\ControlFlow\SqlConnectionManagerSample\SqlConnMgrCS”的Sample有问题请参照如下修改:1.SqlConnMgrCS.cs文件中的13行应改成:SqlConnMgrCSUI.SqlConnMgrUICS,SqlConnMgrUICS2.在SqlConnMgrCSUI项目中的SqlConnMgrUIFromCS.cs中的按钮在SQLServer的SSISDesigner中根本点不动所以我们必须到VS2005中帮它触发事件,然后Copy它的代码到相应的事件处理程序中。
声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。
E-MAIL:11247931@qq.com

热门图文

Top