我已经使用此命令创建了一个密钥文件:


 sn.exe -k 2048 Build.snk

我想用.net阅读此键。我找不到有关.snk格式的任何文档,所以我想知道是否有C#中的一种方法可以在.snk文件中阅读?

我提出问题的最初原因是将.snk文件用于签署组件以外的其他目的。正如下面的答案之一所述,.snk文件的目的实际上只是用于签署组件。

有帮助吗?

解决方案

在编译时使用强命名键来签署编译器生产的组件 - 因此在运行时阅读它们可能不是您想要的。

要开始,请查找C#项目属性窗口中的“签名”选项卡 - 您可以选择.snk签名。

http://msdn.microsoft.com/en-us/library/xc31ft41(vs.100).aspx

其他提示

在MSDN中找到了提及 这里. 。这是代码:


public static void Main()
{
    // Open a file that contains a public key value. The line below  
    // assumes that the Strong Name tool (SN.exe) was executed from 
    // a command prompt as follows:
    //       SN.exe -k C:\Company.keys
    using (FileStream fs = File.Open("C:\\Company.keys", FileMode.Open))
    {
        // Construct a StrongNameKeyPair object. This object should obtain
        // the public key from the Company.keys file.
        StrongNameKeyPair k = new StrongNameKeyPair(fs);

        // Display the bytes that make up the public key.
        Console.WriteLine(BitConverter.ToString(k.PublicKey));

        // Close the file.
        fs.Close();
    }
}

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top