Compartilhar via


ProvideObjectAttribute Classe

Definição

Informa ao Visual Studio que o VSPackage fornece um objeto que pode ser criado a partir da ILocalRegistryinterface . Essa classe não pode ser herdada.

public ref class ProvideObjectAttribute sealed : Microsoft::VisualStudio::Shell::RegistrationAttribute
public ref class ProvideObjectAttribute sealed : Microsoft::VisualStudio::Shell::RegistrationAttribute
[System.AttributeUsage(System.AttributeTargets.Class, AllowMultiple=true, Inherited=true)]
public sealed class ProvideObjectAttribute : Microsoft.VisualStudio.Shell.RegistrationAttribute
[<System.AttributeUsage(System.AttributeTargets.Class, AllowMultiple=true, Inherited=true)>]
type ProvideObjectAttribute = class
    inherit RegistrationAttribute
Public NotInheritable Class ProvideObjectAttribute
Inherits RegistrationAttribute
Herança
ProvideObjectAttribute
Atributos

Exemplos

Você pode encontrar implementações da ProvideObjectAttribute classe nos exemplos gerenciados. O local padrão para esse e todos os outros atributos usados para registro automático é adjacente à implementação da Microsoft.VisualStudio.Package classe em VsPkg.cs, VsPkg.vb ou VsPkg.cpp, dependendo do idioma usado no exemplo.

Comentários

Quando chamar

Aplique o ProvideObjectAttribute atributo à classe Microsoft.VisualStudio.Packagederivada de se ele fornecer um objeto que pode ser criado a partir da ILocalRegistryinterface .

Uso básico

A ProvideObjectAttribute classe informa ao Visual Studio que fornece um objeto que pode ser criado a partir da ILocalRegistryinterface . Sempre use esse atributo em vez de registrar objetos globalmente na seção HKEY_CLASSES_ROOT\CLSID do Registro. Use o ProvideObjectAttributepara modificar uma Microsoft.VisualStudio.Packageclasse derivada de ou uma classe que implementa IVsPackage.

Essa classe de atributo só é usada para fornecer dados para ferramentas de registro externas, como regpkg.exe. Ele não tem nenhum efeito sobre o comportamento em tempo de execução do VSPackage. Para obter mais informações, consulte Registrando VSPackages.

Observação

O C# acrescenta automaticamente a palavra "Atributo" ao nome de qualquer classe de atributo. No código C#, consulte esse atributo como ProvideObject.

Entradas do Registro

  • As seguintes entradas do Registro são criadas pela ProvideObjectAttribute classe :

  • <VSROOT>\CLSID\{ObjectGuid}

  • <VSROOT>\CLSID\{ObjectGuid}\@=ObjectType.FullName

  • <VSROOT>\CLSID\{ObjectGuid}\InprocServer32=mscoree.dll

  • <VSROOT>\CLSID\{ObjectGuid}\Class=ObjectType.FullName

  • <VSROOT>\CLSID\{ObjectGuid}\Assembly=ObjectType.Assembly.FullName

  • <VSROOT>\CLSID\{ObjectGuid}\ThreadingModel=Both

  • <VSROOT>\CLSID\{PackageGuid}\CodeBase=context. Codebase

Construtores

ProvideObjectAttribute(Type)

Esse construtor cria um novo ProvideObjectAttribute objeto com o tipo de objeto fornecido.

Propriedades

ObjectType

A propriedade ObjectType retorna o tipo de objeto definido no construtor.

RegisterUsing

Selecione entre especificar a entrada codebase ou a entrada Assembly no registro. Isso pode ser substituído durante o registro

TypeId

Substitua a propriedade TypeID para permitir que as classes derivadas de RegistrationAttribute funcionem com System.ComponentModel.TypeDescriptor.GetAttributes(...). Um atributo derivado deste terá que substituir essa propriedade somente se precisar de um controle melhor nas instâncias que podem ser aplicadas a uma classe.

(Herdado de RegistrationAttribute)

Métodos

GetPackageRegKeyPath(Guid)

Obtém o caminho do Registro (em relação à raiz do Registro do aplicativo) do VSPackage.

(Herdado de RegistrationAttribute)
Register(RegistrationAttribute+RegistrationContext)

Fornece informações de registro sobre um VSPackage quando chamado por uma ferramenta de registro externo, como regpkg.exe. Para obter mais informações, consulte Registrando VSPackages.

Unregister(RegistrationAttribute+RegistrationContext)

Cancela o registro desse atributo.

Aplica-se a