Compartir a través de


ProvideObjectAttribute Clase

Definición

Informa a Visual Studio de que VSPackage proporciona un objeto que se puede crear a partir de la ILocalRegistryinterfaz. Esta clase no puede heredarse.

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
Herencia
ProvideObjectAttribute
Atributos

Ejemplos

Puede encontrar implementaciones de la ProvideObjectAttribute clase en los ejemplos administrados. La ubicación estándar para este y todos los demás atributos usados para el registro automático son adyacentes a la implementación de la Microsoft.VisualStudio.Package clase en VsPkg.cs, VsPkg.vb o VsPkg.cpp, en función del idioma usado en el ejemplo.

Comentarios

Cuándo llamar

Aplique el atributo a la ProvideObjectAttributeMicrosoft.VisualStudio.Packageclase derivada si proporciona un objeto que se puede crear a partir de la ILocalRegistryinterfaz .

Uso básico

La ProvideObjectAttribute clase informa a Visual Studio de que proporciona un objeto que se puede crear a partir de la ILocalRegistryinterfaz . Use siempre este atributo en lugar de registrar objetos globalmente en la sección HKEY_CLASSES_ROOT\CLSID del Registro. Use , ProvideObjectAttributepara modificar una Microsoft.VisualStudio.Packageclase derivada de o una clase que implemente IVsPackage.

Esta clase de atributo solo se usa para proporcionar datos para herramientas de registro externas como regpkg.exe. No tiene ningún efecto en el comportamiento en tiempo de ejecución de VSPackage. Para obtener más información, consulte Registro de VSPackages.

Nota

C# anexa automáticamente la palabra "Attribute" al nombre de cualquier clase de atributo. En el código de C#, consulte este atributo como ProvideObject.

Entradas del Registro

  • La clase crea las siguientes entradas del ProvideObjectAttribute Registro:

  • <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

Constructores

ProvideObjectAttribute(Type)

Este constructor crea un nuevo objeto ProvideObjectAttribute con el tipo de objeto especificado.

Propiedades

ObjectType

La propiedad ObjectType devuelve el tipo de objeto establecido en el constructor.

RegisterUsing

Seleccione entre especificar la entrada Codebase o la entrada Assembly en el Registro. Esto se puede invalidar durante el registro.

TypeId

Invalide la propiedad TypeID para permitir que las clases derivadas RegistrationAttribute funcionen con System.ComponentModel.TypeDescriptor.GetAttributes(...). Un atributo derivado de este tendrá que invalidar esta propiedad solo si necesita un mejor control en las instancias que se pueden aplicar a una clase.

(Heredado de RegistrationAttribute)

Métodos

GetPackageRegKeyPath(Guid)

Obtiene la ruta del Registro (en relación con la raíz del Registro de la aplicación) del Paquete VSPackage.

(Heredado de RegistrationAttribute)
Register(RegistrationAttribute+RegistrationContext)

Proporciona información de registro sobre un VSPackage cuando lo llama una herramienta externa de registro como regpkg.exe. Para obtener más información, consulte Registro de VSPackages.

Unregister(RegistrationAttribute+RegistrationContext)

Anula el registro de este atributo.

Se aplica a