Compartilhar via


Classe TypeLibVersionAttribute

 

Publicado: agosto de 2016

Dica

The .NET API Reference documentation has a new home. Visit the .NET API Browser on docs.microsoft.com to see the new experience.

Especifica o número de versão de uma biblioteca de tipos exportada.

Namespace:   System.Runtime.InteropServices
Assembly:  mscorlib (em mscorlib.dll)

Hierarquia de Herança

System.Object
  System.Attribute
    System.Runtime.InteropServices.TypeLibVersionAttribute

Sintaxe

[AttributeUsageAttribute(AttributeTargets.Assembly, Inherited = false)]
[ComVisibleAttribute(true)]
public sealed class TypeLibVersionAttribute : Attribute
[AttributeUsageAttribute(AttributeTargets::Assembly, Inherited = false)]
[ComVisibleAttribute(true)]
public ref class TypeLibVersionAttribute sealed : Attribute
[<Sealed>]
[<AttributeUsageAttribute(AttributeTargets.Assembly, Inherited = false)>]
[<ComVisibleAttribute(true)>]
type TypeLibVersionAttribute = 
    class
        inherit Attribute
    end
<AttributeUsageAttribute(AttributeTargets.Assembly, Inherited := False)>
<ComVisibleAttribute(True)>
Public NotInheritable Class TypeLibVersionAttribute
    Inherits Attribute

Construtores

Nome Descrição
System_CAPS_pubmethod TypeLibVersionAttribute(Int32, Int32)

Inicializa uma nova instância da classe TypeLibVersionAttribute com os números da versão primária e secundária da biblioteca de tipos.

Propriedades

Nome Descrição
System_CAPS_pubproperty MajorVersion

Obtém o número de versão principal da biblioteca de tipos.

System_CAPS_pubproperty MinorVersion

Obtém o número de versão secundária da biblioteca de tipos.

System_CAPS_pubproperty TypeId

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

Métodos

Nome Descrição
System_CAPS_pubmethod Equals(Object)

Esta API dá suporte à infraestrutura produto e não se destina a ser usada diretamente do seu código. Retorna um valor que indica se essa instância é igual a um objeto especificado.(Herdado de Attribute.)

System_CAPS_pubmethod GetHashCode()

Retorna o código hash para essa instância.(Herdado de Attribute.)

System_CAPS_pubmethod GetType()

Obtém o Type da instância atual.(Herdado de Object.)

System_CAPS_pubmethod 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.)

System_CAPS_pubmethod 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.)

System_CAPS_pubmethod ToString()

Retorna uma cadeia de caracteres que representa o objeto atual.(Herdado de Object.)

Implementações Explícitas da Interface

Nome Descrição
System_CAPS_pubinterfaceSystem_CAPS_privmethod _Attribute.GetIDsOfNames(Guid, IntPtr, UInt32, UInt32, IntPtr)

Mapeia um conjunto de nomes para um conjunto correspondente de identificadores de expedição.(Herdado de Attribute.)

System_CAPS_pubinterfaceSystem_CAPS_privmethod _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.)

System_CAPS_pubinterfaceSystem_CAPS_privmethod _Attribute.GetTypeInfoCount(UInt32)

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

System_CAPS_pubinterfaceSystem_CAPS_privmethod _Attribute.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr)

Fornece acesso a propriedades e métodos expostos por um objeto.(Herdado de Attribute.)

Comentários

Você pode aplicar esse atributo para assemblies.

Por padrão, o Tlbexp.exe (Exportador de Biblioteca de Tipos) gera uma versão da biblioteca de tipo dos primeiros dois números de uma versão do assembly. Por exemplo, Tlb.exe exporta o assembly versão 1.2.5000.0 como uma versão de biblioteca de tipo 1.2, eliminando os números de compilação e revisão do assembly. Se esse comportamento é desejável, você pode controlar a geração do número de biblioteca de tipo explicitamente, aplicando o TypeLibVersionAttribute.

É útil controlar a geração de uma versão da biblioteca de tipo explicitamente quando duas versões de assembly produzem a mesma versão de biblioteca de tipo. Por exemplo, a versão do assembly 1.2.0.0 e versão do assembly 1.2.500.0 ambos produzem uma versão de biblioteca de tipo de 1,2, que pode causar problemas quando você desinstala um dos assemblies. Para diferenciar as versões da biblioteca de tipo, você pode forçar o segundo conjunto (versão 1.2.500.0) para produzir uma versão de biblioteca de tipo de 1,25.

Exemplos

O exemplo a seguir mostra como aplicar o TypeLibVersionAttribute para definir explicitamente a versão da biblioteca de tipo para 1,25.

using System;
using System.Reflection;
using System.Runtime.InteropServices;

[assembly: AssemblyVersion("1.2.500.0")]
[assembly: TypeLibVersion(1,25)]
namespace MyNamespace
{
    public class TheClass
    {
        // Insert code.
    }
}
Imports System
Imports System.Reflection
Imports System.Runtime.InteropServices

<Assembly: AssemblyVersion("1.2.500.0")>
<Assembly: TypeLibVersion(1,25)>
Namespace MyNamespace
    Public Class TheClass
        ' Insert code.
    End Class
End Namespace
using namespace System;
using namespace System::Reflection;
using namespace System::Runtime::InteropServices;

[assembly: AssemblyVersion("1.2.500.0")];
[assembly: TypeLibVersion(1,25)];
namespace MyNamespace
{
    public ref class TheClass
    {
        // Insert code.
    };
};

Informações de Versão

.NET Framework
Disponível desde 1.1

Acesso thread-safe

Quaisquer membros estáticos públicos ( Compartilhado no Visual Basic) desse tipo são thread-safe. Não há garantia de que qualquer membro de instância seja thread-safe.

Confira Também

Namespace System.Runtime.InteropServices
Tlbexp.exe (Exportador de Biblioteca de Tipos)

Retornar ao início