Classe ProvideObjectAttribute
Notifica a Visual Studio che il package VS fornisce un oggetto che può essere creato dall'interfaccia di ILocalRegistry.questa classe non può essere ereditata.
Gerarchia di ereditarietà
System.Object
System.Attribute
Microsoft.VisualStudio.Shell.RegistrationAttribute
Microsoft.VisualStudio.Shell.ProvideObjectAttribute
Spazio dei nomi: Microsoft.VisualStudio.Shell
Assembly: Microsoft.VisualStudio.Shell.11.0 (in Microsoft.VisualStudio.Shell.11.0.dll)
Sintassi
'Dichiarazione
<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
Il tipo ProvideObjectAttribute espone i seguenti membri.
Costruttori
Nome | Descrizione | |
---|---|---|
![]() |
ProvideObjectAttribute | Questo costruttore viene creato un nuovo oggetto di ProvideObjectAttribute con il tipo di oggetto specificato. |
In alto
Proprietà
Nome | Descrizione | |
---|---|---|
![]() |
ObjectType | La proprietà di ObjectType restituisce il tipo di oggetto impostato nel costruttore. |
![]() |
RegisterUsing | Ottiene o imposta il metodo di registrazione. |
![]() |
TypeId | Ottiene l'istanza corrente dell'attributo. (Ereditato da RegistrationAttribute) |
In alto
Metodi
Nome | Descrizione | |
---|---|---|
![]() |
Equals | Infrastruttura. Restituisce un valore che indica se l'istanza è uguale a un oggetto specificato. (Ereditato da Attribute) |
![]() |
GetHashCode | Restituisce il codice hash per l'istanza. (Ereditato da Attribute) |
![]() |
GetType | Ottiene l'oggetto Type dell'istanza corrente. (Ereditato da Object) |
![]() |
IsDefaultAttribute | Una volta sottoposto a override in una classe derivata, indica se il valore di questa istanza è il valore predefinito per la classe derivata. (Ereditato da Attribute) |
![]() |
Match | Una volta sottoposto a override in una classe derivata, restituisce un valore che indica se questa istanza equivale a un oggetto specificato. (Ereditato da Attribute) |
![]() |
Register | Vengono fornite informazioni di registrazione su un VSPackage una volta chiamato da uno strumento esterno di registrazione come regpkg.exe.Per ulteriori informazioni, vedere Registrare package VS.. (Esegue l'override di RegistrationAttribute.Register(RegistrationAttribute.RegistrationContext)). |
![]() |
ToString | Restituisce una stringa che rappresenta l'oggetto corrente. (Ereditato da Object) |
![]() |
Unregister | Rimuove le informazioni di registrazione su un VSPackage una volta chiamato da uno strumento esterno di registrazione come regpkg.exe.Per ulteriori informazioni, vedere Registrare package VS.. (Esegue l'override di RegistrationAttribute.Unregister(RegistrationAttribute.RegistrationContext)). |
In alto
Implementazioni esplicite dell'interfaccia
Nome | Descrizione | |
---|---|---|
![]() ![]() |
_Attribute.GetIDsOfNames | Esegue il mapping di un set di nomi a un set corrispondente di ID dispatch. (Ereditato da Attribute) |
![]() ![]() |
_Attribute.GetTypeInfo | Recupera le informazioni sui tipi per un oggetto, che può essere utilizzato per ottenere informazioni sul tipo per un'interfaccia. (Ereditato da Attribute) |
![]() ![]() |
_Attribute.GetTypeInfoCount | Recupera il numero di interfacce di informazioni sui tipi che un oggetto garantisce (0 o 1). (Ereditato da Attribute) |
![]() ![]() |
_Attribute.Invoke | Fornisce l'accesso a proprietà e metodi esposti da un oggetto. (Ereditato da Attribute) |
In alto
Note
Quando eseguire chiamate
Applicare l'attributo a Microsoft.VisualStudio.Packageclasse derivata di ProvideObjectAttribute se fornisce un oggetto che può essere creato dall'interfacciadi ILocalRegistry.
utilizzo di base
La classe di ProvideObjectAttribute notifica a Visual Studio che fornisce un oggetto che può essere creato dall'interfaccia di ILocalRegistry.Utilizzare sempre questo attributo anziché registrazione degli oggetti globalmente nella sezione di \CLSID HKEY_CLASSES_ROOT del Registro di sistema.Utilizzare ProvideObjectAttribute, per modificare Microsoft.VisualStudio.Packageclasse derivata da, o classe che implementa IVsPackage.
Questa classe Attribute viene utilizzata solo per fornire i dati per strumenti esterni di registrazione come regpkg.exe.Non ha alcun effetto sul comportamento di runtime del package VS.Per ulteriori informazioni, vedere Registrare package VS..
[!NOTA]
C# automaticamente aggiunge la parola “attributo„ al nome di una classe Attribute.Nel codice c#, fare riferimento a questo attributo come ProvideObject.
Voci del Registro di sistema
Le seguenti voci del Registro di sistema vengono create dalla classe di ProvideObjectAttribute :
<VSROOT> \CLSID\{ObjectGuid}
<VSROOT> \CLSID\{ObjectGuid}\@=ObjectType.FullName
<VSROOT> \CLSID\{ObjectGuid}\InprocServer 32=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
Esempi
È possibile trovare le implementazioni della classe di ProvideObjectAttribute negli esempi gestiti.La posizione standard per questa e tutti gli altri attributi utilizzati per la registrazione automatica è adiacente all'implementazione della classe di Microsoft.VisualStudio.Package in VsPkg.cs, VsPkg.vb, o VsPkg.cpp, a seconda del linguaggio utilizzato nell'esempio.
Codice thread safe
Qualsiasi membro static (Shared in Visual Basic) pubblico di questo tipo è thread-safe. I membri di istanza non sono garantiti come thread-safe.