ProvideObjectAttribute, classe
Informe à Visual Studio que le VSPackage fournit un objet qui peut être créé de l'interface d'ILocalRegistry.Cette classe ne peut pas être héritée.
Hiérarchie d'héritage
System.Object
System.Attribute
Microsoft.VisualStudio.Shell.RegistrationAttribute
Microsoft.VisualStudio.Shell.ProvideObjectAttribute
Espace de noms : Microsoft.VisualStudio.Shell
Assembly : Microsoft.VisualStudio.Shell.11.0 (dans Microsoft.VisualStudio.Shell.11.0.dll)
Syntaxe
'Déclaration
<AttributeUsageAttribute(AttributeTargets.Class, AllowMultiple := True, Inherited := True)> _
Public NotInheritable Class ProvideObjectAttribute _
Inherits RegistrationAttribute
[AttributeUsageAttribute(AttributeTargets.Class, AllowMultiple = true, Inherited = true)]
public sealed class ProvideObjectAttribute : RegistrationAttribute
Le type ProvideObjectAttribute expose les membres suivants.
Constructeurs
Nom | Description | |
---|---|---|
ProvideObjectAttribute | Ce constructeur crée un nouvel objet d'ProvideObjectAttribute avec le type d'objet donné. |
Début
Propriétés
Nom | Description | |
---|---|---|
ObjectType | La propriété d'ObjectType retourne le type d'objet défini dans le constructeur. | |
RegisterUsing | Obtient ou définit la méthode d'inscription. | |
TypeId | Obtient l'instance actuel de cet attribut. (Hérité de RegistrationAttribute.) |
Début
Méthodes
Nom | Description | |
---|---|---|
Equals | Infrastructure. Retourne une valeur indiquant si cette instance équivaut à un objet spécifié. (Hérité de Attribute.) | |
Finalize | Autorise un objet à tenter de libérer des ressources et d'exécuter d'autres opérations de nettoyage avant qu'il ne soit récupéré par l'opération garbage collection. (Hérité de Object.) | |
GetHashCode | Retourne le code de hachage de cette instance. (Hérité de Attribute.) | |
GetPackageRegKeyPath | Obtient le chemin d'accès au Registre (par rapport à la racine de Registre de l'application) du VSPackage. (Hérité de RegistrationAttribute.) | |
GetType | Obtient le Type de l'instance actuelle. (Hérité de Object.) | |
IsDefaultAttribute | En cas de substitution dans une classe dérivée, indique si la valeur de cette instance est la valeur par défaut pour la classe dérivée. (Hérité de Attribute.) | |
Match | En cas de substitution dans une classe dérivée, retourne une valeur indiquant si cette instance équivaut à un objet spécifié. (Hérité de Attribute.) | |
MemberwiseClone | Crée une copie superficielle de l'objet Object actuel. (Hérité de Object.) | |
Register | Fournit les informations d'inscription sur un VSPackage une fois appelé par un outil externe d'alignement tel que regpkg.exe.Pour plus d'informations, consultez Stocker les VSPackages. (Substitue RegistrationAttribute.Register(RegistrationAttribute.RegistrationContext).) | |
ToString | Retourne une chaîne qui représente l'objet actuel. (Hérité de Object.) | |
Unregister | Supprime les informations d'inscription sur un VSPackage une fois appelé par un outil externe d'alignement tel que regpkg.exe.Pour plus d'informations, consultez Stocker les VSPackages. (Substitue RegistrationAttribute.Unregister(RegistrationAttribute.RegistrationContext).) |
Début
Implémentations d'interface explicite
Nom | Description | |
---|---|---|
_Attribute.GetIDsOfNames | Mappe un jeu de noms avec un jeu correspondant d'identificateurs de dispatch. (Hérité de Attribute.) | |
_Attribute.GetTypeInfo | Récupère les informations de type pour un objet, qui peuvent être utilisées pour obtenir les informations de type d'une interface. (Hérité de Attribute.) | |
_Attribute.GetTypeInfoCount | Récupère le nombre d'interfaces d'informations de type fourni par un objet (0 ou 1). (Hérité de Attribute.) | |
_Attribute.Invoke | Fournit l'accès aux propriétés et aux méthodes exposées par un objet. (Hérité de Attribute.) |
Début
Remarques
Lorsque appeler
Appliquez-vous l'attribut d'ProvideObjectAttribute à votre Microsoft.VisualStudio.Package - classe dérivée s'il fournit un objet qui peut être créé de l'interface d'ILocalRegistry.
Utilisation de base
La classe d'ProvideObjectAttribute informe à Visual Studio qu'elle fournit un objet qui peut être créé de l'interface d'ILocalRegistry.Utilisez toujours cet attribut plutôt qu'en enregistrant des objets globalement sous la section de HKEY_CLASSES_ROOT\CLSID du Registre.Utilisez ProvideObjectAttribute, pour modifier Microsoft.VisualStudio.Package - classe dérivée, ou une classe qui implémente IVsPackage.
Cette classe d'attributs est seulement utilisée pour fournir des données pour les outils externes d'alignement comme regpkg.exe.Elle n'a aucun effet sur le comportement à l'exécution du VSPackage.Pour plus d'informations, consultez Stocker les VSPackages.
[!REMARQUE]
Le C- ajoute automatiquement le mot « attribut » au nom de toute classe d'attributs.Dans le code C-, reportez -vous à cet attribut comme ProvideObject.
Entrées du Registre
Les entrées du Registre suivantes sont créées par la classe d'ProvideObjectAttribute :
<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
Exemples
Vous pouvez rechercher des implémentations de la classe d'ProvideObjectAttribute dans les exemples managés.L'emplacement standard pour cela et toutes les autres l'attribue utilisé pour l'alignement automatique est en regard de l'implémentation de la classe d'Microsoft.VisualStudio.Package dans VsPkg.cs, VsPkg.vb, ou VsPkg.cpp, selon le langage utilisé dans l'exemple.
Sécurité des threads
Tous les membres static (Shared en Visual Basic) publics de ce type sont thread-safe. Il n'est pas garanti que les membres d'instance soient thread-safe.