ProvideObjectAttribute Klasse
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Informiert Visual Studio, dass das VSPackage ein Objekt bereitstellt, das über die ILocalRegistrySchnittstelle erstellt werden kann. Diese Klasse kann nicht vererbt werden.
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
- Vererbung
- Attribute
Beispiele
Implementierungen der ProvideObjectAttribute -Klasse finden Sie in den verwalteten Beispielen. Der Standardspeicherort für diese und alle anderen Attribute, die für die automatische Registrierung verwendet werden, befindet sich neben der Implementierung der Microsoft.VisualStudio.Package Klasse in VsPkg.cs, VsPkg.vb oder VsPkg.cpp, je nach sprache, die im Beispiel verwendet wird.
Hinweise
Wann sollte aufgerufen werden?
Wenden Sie das ProvideObjectAttribute Attribut auf Ihre Microsoft.VisualStudio.Package-abgeleitete Klasse an, wenn sie ein Objekt bereitstellt, das über die ILocalRegistry-Schnittstelle erstellt werden kann.
Grundlegende Verwendung
Die ProvideObjectAttribute -Klasse informiert Visual Studio, dass sie ein Objekt bereitstellt, das über die ILocalRegistrySchnittstelle erstellt werden kann. Verwenden Sie immer dieses Attribut, anstatt Objekte global im Abschnitt HKEY_CLASSES_ROOT\CLSID der Registrierung zu registrieren. Verwenden Sie , ProvideObjectAttributeum eine Microsoft.VisualStudio.Package-abgeleitete Klasse oder eine Klasse zu ändern, die implementiert IVsPackage.
Diese Attributklasse wird nur verwendet, um Daten für externe Registrierungstools wie regpkg.exe bereitzustellen. Es hat keine Auswirkungen auf das Laufzeitverhalten des VSPackage. Weitere Informationen finden Sie unter Registrieren von VSPackages.
Hinweis
C# fügt automatisch das Wort "Attribut" an den Namen einer beliebigen Attributklasse an. Verweisen Sie in C#-Code auf dieses Attribut als ProvideObject
.
Registrierungseinträge
Die folgenden Registrierungseinträge werden von der ProvideObjectAttribute -Klasse erstellt:
<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. Codebasis
Konstruktoren
ProvideObjectAttribute(Type) |
Dieser Konstruktor erstellt ein neues ProvideObjectAttribute-Objekt mit dem angegebenen Objekttyp. |
Eigenschaften
ObjectType |
Die ObjectType-Eigenschaft gibt den im Konstruktor festgelegten Objekttyp zurück. |
RegisterUsing |
Wählen Sie zwischen der Angabe des Codebase-Eintrags oder des Assemblyeintrags in der Registrierung aus. Dies kann während der Registrierung überschrieben werden. |
TypeId |
Überschreiben Sie die TypeID-Eigenschaft, damit die abgeleiteten RegistrationAttribute-Klassen mit System.ComponentModel.TypeDescriptor.GetAttributes(...) arbeiten können. Ein von diesem abgeleitetes Attribut muss diese Eigenschaft nur überschreiben, wenn es eine bessere Steuerung für die Instanzen benötigt, die auf eine Klasse angewendet werden können. (Geerbt von RegistrationAttribute) |
Methoden
GetPackageRegKeyPath(Guid) |
Ruft den Registrierungspfad (relativ zum Registrierungsstamm der Anwendung) des VSPackages ab. (Geerbt von RegistrationAttribute) |
Register(RegistrationAttribute+RegistrationContext) |
Stellt Registrierungsinformationen zu einem VSPackage bereit, wenn der Aufruf über ein externes Registrierungstool wie regpkg.exe erfolgt. Weitere Informationen finden Sie unter Registrieren von VSPackages. |
Unregister(RegistrationAttribute+RegistrationContext) |
Hebt die Registrierung für dieses Attribut auf. |