StrongNameKeyPair 类

定义

注意

Strong name signing is not supported and throws PlatformNotSupportedException.

封装对公钥或私钥对的访问,该公钥或私钥对用于为强名称程序集创建签名。

public ref class StrongNameKeyPair : System::Runtime::Serialization::IDeserializationCallback, System::Runtime::Serialization::ISerializable
public ref class StrongNameKeyPair
public class StrongNameKeyPair : System.Runtime.Serialization.IDeserializationCallback, System.Runtime.Serialization.ISerializable
[System.Obsolete("Strong name signing is not supported and throws PlatformNotSupportedException.", DiagnosticId="SYSLIB0017", UrlFormat="https://aka.ms/dotnet-warnings/{0}")]
public class StrongNameKeyPair : System.Runtime.Serialization.IDeserializationCallback, System.Runtime.Serialization.ISerializable
[System.Serializable]
public class StrongNameKeyPair
[System.Serializable]
[System.Runtime.InteropServices.ComVisible(true)]
public class StrongNameKeyPair : System.Runtime.Serialization.IDeserializationCallback, System.Runtime.Serialization.ISerializable
type StrongNameKeyPair = class
    interface IDeserializationCallback
    interface ISerializable
[<System.Obsolete("Strong name signing is not supported and throws PlatformNotSupportedException.", DiagnosticId="SYSLIB0017", UrlFormat="https://aka.ms/dotnet-warnings/{0}")>]
type StrongNameKeyPair = class
    interface IDeserializationCallback
    interface ISerializable
[<System.Serializable>]
type StrongNameKeyPair = class
[<System.Serializable>]
[<System.Runtime.InteropServices.ComVisible(true)>]
type StrongNameKeyPair = class
    interface IDeserializationCallback
    interface ISerializable
[<System.Serializable>]
[<System.Runtime.InteropServices.ComVisible(true)>]
type StrongNameKeyPair = class
    interface ISerializable
    interface IDeserializationCallback
Public Class StrongNameKeyPair
Implements IDeserializationCallback, ISerializable
Public Class StrongNameKeyPair
继承
StrongNameKeyPair
属性
实现

示例

下面的代码示例演示如何使用 -k 开关) 打开公司.keys 文件 (,并在控制台窗口中显示密钥,从而运行 Sn.exe (强名称工具)

using namespace System;
using namespace System::IO;
using namespace System::Reflection;

ref class snkX
{
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
        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 = gcnew StrongNameKeyPair(fs);

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

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

int main()
{
    snkX::Main();
}

// Output will vary by user.
// 
//  00-24-00-00-04-80-00-00-94-69-89-78-BB-F1-F2-71-00-00-00-34-26-
//  69-89-78-BB-F1-F2-71-00-F1-FA-F2-F9-4A-A8-5E-82-55-AB-49-4D-A6-
//  ED-AB-5F-CE-DE-59-49-8D-63-01-B0-E1-BF-43-07-FA-55-D4-36-75-EE-
//  8B-83-32-39-B7-02-DE-3D-81-29-7B-E8-EA-F0-2E-78-94-96-F1-73-79-
//  69-89-78-BB-F1-F2-71-0E-4E-F4-5D-DD-A4-7F-11-54-DF-65-DE-89-23-
//  91-AD-53-E1-C0-DA-9E-0C-88-BE-AA-7B-39-20-9C-9B-55-34-26-3B-1A-
//  53-41-31-00-04-00-00-01-00-01-00-9D-F1-EA-14-4C-88-34-26-3B-1A-
//  2D-D7-A0-AB-F6-7E-B7-24-7F-87-DF-3E-97
using System;
using System.IO;
using System.Reflection;

class snkX
{

    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
        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();
    }
}

// Output will vary by user.
//
//  00-24-00-00-04-80-00-00-94-69-89-78-BB-F1-F2-71-00-00-00-34-26-
//  69-89-78-BB-F1-F2-71-00-F1-FA-F2-F9-4A-A8-5E-82-55-AB-49-4D-A6-
//  ED-AB-5F-CE-DE-59-49-8D-63-01-B0-E1-BF-43-07-FA-55-D4-36-75-EE-
//  8B-83-32-39-B7-02-DE-3D-81-29-7B-E8-EA-F0-2E-78-94-96-F1-73-79-
//  69-89-78-BB-F1-F2-71-0E-4E-F4-5D-DD-A4-7F-11-54-DF-65-DE-89-23-
//  91-AD-53-E1-C0-DA-9E-0C-88-BE-AA-7B-39-20-9C-9B-55-34-26-3B-1A-
//  53-41-31-00-04-00-00-01-00-01-00-9D-F1-EA-14-4C-88-34-26-3B-1A-
//  2D-D7-A0-AB-F6-7E-B7-24-7F-87-DF-3E-97
Imports System.Reflection
Imports System.IO

Module Module1

    Sub 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
        Dim fs As FileStream = File.Open("C:\Company.keys", FileMode.Open)

        ' Construct a StrongNameKeyPair object. This object should obtain 
        ' the public key from the Company.keys file.
        Dim k As Reflection.StrongNameKeyPair = _
            New Reflection.StrongNameKeyPair(fs)

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

        ' Close the file.
        fs.Close()
    End Sub
End Module

' Output will vary by user.
' 
'  00-24-00-00-04-80-00-00-94-69-89-78-BB-F1-F2-71-00-00-00-34-26-
'  69-89-78-BB-F1-F2-71-00-F1-FA-F2-F9-4A-A8-5E-82-55-AB-49-4D-A6-
'  ED-AB-5F-CE-DE-59-49-8D-63-01-B0-E1-BF-43-07-FA-55-D4-36-75-EE-
'  8B-83-32-39-B7-02-DE-3D-81-29-7B-E8-EA-F0-2E-78-94-96-F1-73-79-
'  69-89-78-BB-F1-F2-71-0E-4E-F4-5D-DD-A4-7F-11-54-DF-65-DE-89-23-
'  91-AD-53-E1-C0-DA-9E-0C-88-BE-AA-7B-39-20-9C-9B-55-34-26-3B-1A-
'  53-41-31-00-04-00-00-01-00-01-00-9D-F1-EA-14-4C-88-34-26-3B-1A-
'  2D-D7-A0-AB-F6-7E-B7-24-7F-87-DF-3E-97

构造函数

StrongNameKeyPair(Byte[])

初始化 StrongNameKeyPair 类的新实例,同时从 byte 数组生成密钥对。

StrongNameKeyPair(FileStream)

初始化 StrongNameKeyPair 类的新实例,同时从 FileStream 生成密钥对。

StrongNameKeyPair(SerializationInfo, StreamingContext)

初始化 StrongNameKeyPair 类的新实例,从序列化数据生成密钥对。

StrongNameKeyPair(String)

初始化 StrongNameKeyPair 类的新实例,同时从 String 生成密钥对。

属性

PublicKey

获取密钥对的公钥或公钥标记的公共部分。

方法

Equals(Object)

确定指定对象是否等于当前对象。

(继承自 Object)
GetHashCode()

作为默认哈希函数。

(继承自 Object)
GetType()

获取当前实例的 Type

(继承自 Object)
MemberwiseClone()

创建当前 Object 的浅表副本。

(继承自 Object)
ToString()

返回表示当前对象的字符串。

(继承自 Object)

显式接口实现

IDeserializationCallback.OnDeserialization(Object)

在整个对象图形已经反序列化时运行。

ISerializable.GetObjectData(SerializationInfo, StreamingContext)

用重新实例化当前 SerializationInfo 对象所需的所有数据设置 StrongNameKeyPair 对象。

适用于

另请参阅