Partilhar via


AssemblyKeyFileAttribute Classe

Definição

Especifica o nome de um arquivo que contém o par de chaves usado para gerar um nome forte.

public ref class AssemblyKeyFileAttribute sealed : Attribute
[System.AttributeUsage(System.AttributeTargets.Assembly, Inherited=false)]
public sealed class AssemblyKeyFileAttribute : Attribute
[System.AttributeUsage(System.AttributeTargets.Assembly, AllowMultiple=false)]
public sealed class AssemblyKeyFileAttribute : Attribute
[System.AttributeUsage(System.AttributeTargets.Assembly, Inherited=false)]
[System.Runtime.InteropServices.ComVisible(true)]
public sealed class AssemblyKeyFileAttribute : Attribute
[<System.AttributeUsage(System.AttributeTargets.Assembly, Inherited=false)>]
type AssemblyKeyFileAttribute = class
    inherit Attribute
[<System.AttributeUsage(System.AttributeTargets.Assembly, AllowMultiple=false)>]
type AssemblyKeyFileAttribute = class
    inherit Attribute
[<System.AttributeUsage(System.AttributeTargets.Assembly, Inherited=false)>]
[<System.Runtime.InteropServices.ComVisible(true)>]
type AssemblyKeyFileAttribute = class
    inherit Attribute
Public NotInheritable Class AssemblyKeyFileAttribute
Inherits Attribute
Herança
AssemblyKeyFileAttribute
Atributos

Exemplos

O exemplo de código a seguir mostra o uso do AssemblyDelaySignAttribute atributo com o AssemblyKeyFileAttribute. Para compilar este exemplo, você deve criar um arquivo de chave de nome forte chamado TestPublicKey.snk usando o Sn.exe (Strong Name Tool):

sn -k TestPublicKey.snk   

Compile o exemplo como um .dll. Se você compilar a partir da linha de comando, use a opção /t:library para C# ou Visual Basic ou a opção /LD de vinculador para Visual C++.

using namespace System;
using namespace System::Reflection;

[assembly:AssemblyKeyFileAttribute("TestPublicKey.snk")];
[assembly:AssemblyDelaySignAttribute(true)];

namespace DelaySign
{
    public ref class Test { };
}
using System;
using System.Reflection;

[assembly:AssemblyKeyFileAttribute("TestPublicKey.snk")]
[assembly:AssemblyDelaySignAttribute(true)]

namespace DelaySign
{
    public class Test { }
}
Imports System.Reflection

<assembly:AssemblyDelaySignAttribute(true)>
<assembly:AssemblyKeyFileAttribute("TestPublicKey.snk")>

Namespace DelaySign

    Public class Test
    End Class

End Namespace

Comentários

Ao criar um assembly de nome forte, o autor deve fornecer esse atributo ou AssemblyKeyNameAttribute. Se AssemblyDelaySignAttribute também tiver sido especificado, é provável que esse arquivo contenha apenas a chave pública.

Um exemplo da sintaxe é [assembly:AssemblyKeyFileAttribute("myKey.snk")].

Cuidado

Como o caminho e o nome do arquivo persistem, verifique se a cadeia de caracteres com AssemblyKeyFileAttribute a qual você usa não contém informações confidenciais.

Construtores

AssemblyKeyFileAttribute(String)

Inicializa uma nova instância da classe AssemblyKeyFileAttribute com o nome do arquivo que contém o par de chaves para gerar um nome forte para o assembly que está sendo atribuído.

Propriedades

KeyFile

Obtém o nome do arquivo que contém o par de chaves usado para gerar um nome forte para o assembly atribuído.

TypeId

Quando implementado em uma classe derivada, obtém um identificador exclusivo para este Attribute.

(Herdado de Attribute)

Métodos

Equals(Object)

Retorna um valor que indica se essa instância é igual a um objeto especificado.

(Herdado de Attribute)
GetHashCode()

Retorna o código hash para a instância.

(Herdado de Attribute)
GetType()

Obtém o Type da instância atual.

(Herdado de Object)
IsDefaultAttribute()

Quando substituído em uma classe derivada, indica se o valor dessa instância é o valor padrão para a classe derivada.

(Herdado de Attribute)
Match(Object)

Quando substituído em uma classe derivada, retorna um valor que indica se essa instância é igual a um objeto especificado.

(Herdado de Attribute)
MemberwiseClone()

Cria uma cópia superficial do Object atual.

(Herdado de Object)
ToString()

Retorna uma cadeia de caracteres que representa o objeto atual.

(Herdado de Object)

Implantações explícitas de interface

_Attribute.GetIDsOfNames(Guid, IntPtr, UInt32, UInt32, IntPtr)

Mapeia um conjunto de nomes para um conjunto correspondente de identificadores de expedição.

(Herdado de Attribute)
_Attribute.GetTypeInfo(UInt32, UInt32, IntPtr)

Recupera as informações de tipo para um objeto, que pode ser usado para obter as informações de tipo para uma interface.

(Herdado de Attribute)
_Attribute.GetTypeInfoCount(UInt32)

Retorna o número de interfaces de informações do tipo que um objeto fornece (0 ou 1).

(Herdado de Attribute)
_Attribute.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr)

Fornece acesso a propriedades e métodos expostos por um objeto.

(Herdado de Attribute)

Aplica-se a

Confira também