Definindo os Atributos de Assembly
Atributos de assembly são valores que fornecem informações sobre um assembly. Os atributos são divididos nos seguintes conjuntos de informação:
Atributos de identidade de assembly.
Atributos informativos.
Atributos de manifesto do assembly.
Atributos de strong name.
Atributos de identidade de Assembly
Três atributos, juntamente com um nome forte (se aplicável), determinam a identidade de um assembly: nome, versão e cultura. Esses atributos formam o nome completo do assembly e são necessários quando referenciam o assembly no código. Você pode usar atributos para configurar a versão e a cultura de um assembly. O compilador ou o Assembly Linker (AL.exe) define o valor do nome quando o conjunto é criado, com base no arquivo que contém o manifesto do assembly.
A tabela a seguir descreve os atributos de versão e cultura.
Atributo de identidade de assembly |
Descrição |
---|---|
Campo enumerado indicando a cultura que um assembly suporta. Um assembly pode também especificar independência de cultura, indicando que contém os recursos para a cultura padrão. Observação O ambiente de execução trata qualquer assembly que não tenha o atributo de cultura configurado com null como um assembly satélite.Tais assemblies estão sujeitos às regras de ligação de um assembly satélite.Para obter mais informações sobre políticas, consulte Como o Runtime Localiza Assemblies. |
|
Valor que define os atributos do assembly, como, por exemplo, se o assembly pode ser executado lado a lado. |
|
Valor numérico no formato principais.minor.build.revisão (por exemplo, 2.4.0.0). O Common Language Runtime usa este valor para executar operações de ligação nos assemblies com strong name. Observação Se a AssemblyInformationalVersionAttribute atributo não é aplicado a um assembly, o número de versão especificado pela AssemblyVersionAttribute atributo é usado pelo Application.ProductVersion, Application.UserAppDataPath, e Application.UserAppDataRegistry Propriedades. |
O código de exemplo a seguir mostra como aplicar os atributos de versão e cultura em um assembly.
' Set version number for the assembly.
<Assembly:AssemblyVersionAttribute("4.3.2.1")>
' Set culture as German.
<Assembly:AssemblyCultureAttribute("de")>
// Set version number for the assembly.
[assembly:AssemblyVersionAttribute("4.3.2.1")]
// Set culture as German.
[assembly:AssemblyCultureAttribute("de")]
// Set version number for the assembly.
[assembly:AssemblyVersionAttribute("4.3.2.1")];
// Set culture as German.
[assembly:AssemblyCultureAttribute("de")];
Atributos Informativos
Você pode usar atributos informativos para fornecer informações adicionais da empresa ou do produto para um assembly. A tabela a seguir descreve os atributos informativos que você pode aplicar em um assembly.
Atributos Informativos |
Descrição |
---|---|
Texto que especifica o nome da emprea. |
|
Texto que especifica informações de direitos autorais. |
|
Texto especificando o número da versão de arquivo Win32. Normalmente, é o padrão da versão do assembly. |
|
Texto que especifica informação de versão que não é usada pelo common language runtime, como o número de versão do produto completo. Observação Se esse atributo é aplicado a um assembly, ele especifica a seqüência de caracteres pode ser obtida em tempo de execução usando o Application.ProductVersion propriedade.A seqüência de caracteres também é usada na chave do registro e o caminho fornecido pelo Application.UserAppDataPath e Application.UserAppDataRegistry Propriedades. |
|
Texto que especifica informações do produto. |
|
Texto especificando informações de marca. |
Esses atributos podem aparecer na página de Propriedades do Windows do conjunto de módulos (assembly), ou eles podem ser substituídos usando o opção de compilador /win32res para especificar seus próprios recursos de arquivo Win32.
Atributos do manifesto do assembly
Você pode usar atributos de manifesto do assembly para fornecer informações no manifesto do assembly, incluindo Título, Descrição, o alias padrão e a configuração. A tabela a seguir descreve os atributos de manifesto do assembly.
Atributos do manifesto do assembly |
Descrição |
---|---|
Valor de sequência de caracteres que indica a configuração do conjunto, como comercial ou de depuração. O tempo de execução não usa esse valor. |
|
Valor de sequência de caracteres especificando um alias padrão a ser usado referenciando conjuntos de módulos (assemblies). Esse valor fornece uma nome amigável quando o próprio nome do conjunto de módulos (assembly) não é tão amigável (como um valor GUID). Esse valor também pode ser usado como um formulário curto do nome do conjunto completo. |
|
Valor de sequência de caracteres especificando uma breve descrição que resume a natureza e o objetivo do assembly. |
|
Valor de sequência de caracteres especificando um nome amigável para o assembly. Por exemplo, um conjunto de módulos (assembly) denominado comdlg pode ter o título de Microsoft Common Dialog Control. |
Atributos de nome de alta segurança
Você pode usar atributos de nome de alta segurança para definir um nome e alta segurança para um conjunto de módulos (assembly). A tabela a seguir descreve os atributos de noma de alta segurança.
Atributos de nome de alta segurança |
Descrição |
---|---|
Valor booleano indicando que o atraso da assinatura está sendo usado. |
|
Valor de sequência de caracteres indicando o nome do arquivo que contenha ou a chave pública (se estiver usando atraso de assinatura) ou ambos as chaves públicas e privadas passadas como um parâmetro para o construtor deste atributo. Observe que o nome do arquivo é relativo ao endereço de saída do arquivo (o .exe ou .dll), não o endereço de destino do arquivo. |
|
Indica o contêiner de chave que contém o par de chaves passado como um parâmetro para o construtor deste atributo. |
O exemplo de código a seguir mostra os atributos para aplicar ao usar atraso de assinatura para criar um conjunto de nome de alta segurança com um arquivo chave pública chamado myKey.snk.
<Assembly:AssemblyKeyFileAttribute("myKey.snk")>
<Assembly:AssemblyDelaySignAttribute(True)>
[assembly:AssemblyKeyFileAttribute("myKey.snk")]
[assembly:AssemblyDelaySignAttribute(true)]
[assembly:AssemblyKeyFileAttribute("myKey.snk")];
[assembly:AssemblyDelaySignAttribute(true)];