Freigeben über


Registrieren von Toolbox-Stütz

VSPackages muss die Registrierung aktualisieren, wenn sie den Standardsatz von Toolbox-Funktionen in jedem der folgenden Methoden erweitern:

  • Verwenden der automatischen Toolboxregisterkarten-Auswahl einer bestimmten Toolboxkategorie oder - Registerkarte, wenn ein bestimmter Designer oder einen Editor aktiv ist.

  • Bereitstellen von der alle Visual Studio Umgebung geladen wurden ToolboxItem-Objekten.

    Diese Elemente werden durch die Visual Studio Umgebung, wenn Toolbox , entweder von einem Benutzer von der IDE ein Rollback ausgeführt wird oder programmgesteuert über die ResetDefaults-Methode geladen. Das Zurücksetzen Toolbox generiert ein ToolboxInitialized-Ereignis mit dem verwalteten Paketframework.

    Hinweis

    VSPackages entwickelt hat sich mit der Verwendung ProvideToolboxItemsAttribute des verwalteten Paketframeworks, die zu ihrer Implementierung des Package-Objekts angewendet wurde, um diese Unterstützung zu registrieren.

  • Bereitstellen nichtstandardisierte Zwischenablageformat ToolboxItem-Objekte aus dem Implementieren der IVsToolboxDataProvider und IVsToolboxDataProvider2-Schnittstellen.

    Hinweis

    VSPackages entwickelt hat sich unter der Verwendung des verwalteten Paketframeworks eine Instanz des Objekts, das ProvideToolboxFormatAttribute zu ihrer Implementierung von Package angewendet wurde, um diese Unterstützung zu registrieren.

  • Dynamische Konfiguration von ToolboxItem-Objekt durch eine Implementierung der IConfigureToolboxItem-Schnittstelle unterstützen.

    Hinweis

    VSPackages entwickelt hat sich mit der Verwendung ProvideToolboxItemConfigurationAttribute des verwalteten Paketframeworks, die zu ihrer Implementierung der Package-Klasse angewendet wurde und welcher ProvideAssemblyFilterAttribute-Klasse, die in ihren Implementierungen der IConfigureToolboxItem-Klasse angewendet wurde, um diese Unterstützung zu registrieren.

Nicht verwaltete VSPackages muss die Registrierung explizit aktualisieren, indem Sie entweder manuell bearbeitet oder indem sie eine Registrierungsstelle (.rgs) verwendet. Weitere Informationen finden Sie unter Erstellen von Registrierungsstellen-Skripten.

Automatische Toolboxregisterkarten-Auswahl

Editoren und Designer bereitgestellt auf einer Instanz eines Objekts factory Editor können eine bestimmte Toolboxregisterkarte aktiv oder eine Kategorie ausgeführt werden, benötigen, wenn sie selbst aktiv sind. Wenn beispielsweise ein Formular-Designer aktiviert ist, sollten Sie die ausgewählte Alle Windows Forms Registerkarte.

Damit die automatische Toolbox des Designers kategorien-Auswahl oder ein Factoryobjekt des Editors muss ordnungsgemäß registriert werden stattfindet.

Ein entsprechender Registrierungseintrag wird im folgenden Registrierungsspeicherort gefunden: HKEY_LOCAL_MACHINE \ SOFTWARE \ Microsoft \ VisualStudio \ <Version> \ Editor <Editor Factory GUID> , wo <Version> die Versionsnummer der Version von Visual Studio, z. B. 8.0 beträgt und <Editor Factory GUID> die GUID für den Editor factory ist.

Der Eintrag sollte enthalten:

Name

Typ

Bereich

Beschreibung

Standardwert

REG_SZ

GUID

Optional. Sie kann verwendet werden, um den nicht lokalisierten Namen des Editors enthält.

DefaultToolboxTab

REG_SZ

 „Der Registerkartenname“ folgen

Der nicht lokalisierte Name der Toolboxregisterkarte, die die Toolbox-Registerkarte durchgeführt wird, wenn dieser Editor aktiv ist.

Hinweis

Es gibt keine Attribute-Objekte, die diese Registrierungseinträge in verwaltetem Paketframework unterstützen.

Ein Paket als Bereitstellen von Toolboxelementen registrieren

Hinweis

Toolbox-Steuerelementvorlagen mit den erstellten Steuerelemente im Register von Visual Studio 10 SDK automatisch.Weitere Informationen finden Sie unter Gewusst wie: Erstellen Sie ein Toolbox-Steuerelement, die Windows Forms verwendet und Gewusst wie: Erstellen Sie ein Toolbox-Steuerelement, die WPF verwendet.

Jedes VSPackage, welche ObjekteToolboxItem bereitstellt, muss einen Unterschlüssel, Toolbox unter der eigenen Paket Schlüssels verfügen, HKEY_LOCAL_MACHINE \ SOFTWARE \ Microsoft \ VisualStudio \<Version>\Packages\<Package GUID>, wo<Version> die Nummer der Version von Visual Studio, z. B. 8.0 beträgt und<Package GUID> des Pakets die GUID des Pakets, das von Toolboxelementen bereitstellt.

Dieser Toolbox unterschlüssel muss einen Eintrag enthält, der mindestens einen DWORD-EintragElementeStandardwert.

Hinweis

Der Stammpfad von HKEY_LOCAL_MACHINE \ SOFTWARE \ Microsoft \ VisualStudio \ <Version> kann mit einem alternativen Stamm überschrieben werden, wenn die Visual Studio-Shell initialisiert wird, oder Sie können DefaultRegistryRootAttributeverwenden.Weitere Informationen finden Sie unter Befehlszeilenschalter (Visual Studio SDK).

Für den Eintrag unter HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\VisualStudio\<Version>\Packages\<Package GUID>:

Name

Typ

Daten

Beschreibung

Standardelemente

REG_DWORD

Kann jeder DWORD-Wert. Arbeiten mit 1 beginnen. Der Wert wird erhöht, wenn Sie ein VSPackage oder mehr aktualisieren, um verschiedene Elemente enthalten.

Der Wert von Standardelemente muss größer oder gleich 1 sein, um ToolboxItem-Objekten zu Visual Studio Toolboxhinzuzufügen.

Durch Ändern des Werts von Standardelemente bewirkt, dass das Visual Studio IDE, die letzte Instanz von VSPackages zu laden, das Objekte ToolboxItem anstelle aller zwischengespeicherten Werte bereitstellt.

In verwaltetem Paketframework wird Standardelemente durch den Wert festgelegt, der im Konstruktor für die ProvideToolboxItemsAttribute-Instanz verwendet wird, die in einem VSPackage angewendet wird, das ToolboxItem-Objekte bereitstellt.

Unterstützung für ein Format nichtstandardisiertes Registrieren

Registrierung der unterstützten Zwischenablageformaten, die ein ToolboxItem Anbieter VSPackage unterstützt, ist optional.

Wenn ein ToolboxItem Anbieter keine besonderen VSPackage Zwischenablageformate registriert, muss er die Visual Studio Standardformate unterstützen. Weitere Informationen zu den standardmäßigen Toolbox Zwischenablageformate finden Sie unter Toolbox (Visual Studio SDK).

Wenn ein VSPackage Unterstützung für nichtstandardisierte Stile unterstützt, muss es diese Formate Toolbox-Registrierungs VSPackages unter dem Schlüssel HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\VisualStudio\<Version>\Packages\<Package GUID>\Toolbox registrieren, indem er einen Eintrag Zeichenfolgen Stile hinzugefügt.

Hinweis

Wenn ein VSPackage Unterstützung für ein benutzerdefiniertes Format registriert, unterstützt jedoch nur diejenigen Formate, die explizit registriert.VSPackages mit benutzerdefinierten Zwischenablageformate registriert, wird nicht mehr unterstützt Toolbox der standardmäßigen Zwischenablageformate registriert, es sei denn, er explizit so vorgehen müssen.

Name

Typ

Daten

Beschreibung

Formate

REG_SZ

Für benutzerdefinierte Formate verwenden Sie eine Zeichenfolge für diesen Unterschlüssel.

Gibt die Zwischenablageformate an, die von einem VSPackage unterstützt werden, in dem benutzerdefinierte Toolbox Zwischenablageformate bereitstellt (über das Implementieren von IVsToolboxDataProvider und IVsToolboxDataProvider2).

Die Stile sollten in einer durch Trennzeichen getrennten Liste angegeben werden.

Ein Stil kann entweder durch eine Zeichenfolge, die den Namen enthält, oder den Namen der IDs angegeben werden. Zum Beispiel könnte ein Formats Eintrag '1,13,16,HTML Format'.

Weitere Informationen über Zwischenablageformate finden Sie unter Format.

In verwaltetem Paketframework wird der Wert von Formate aus der Zeichenfolge abgerufen, die als Argument an den Konstruktor für die Instanz des ProvideToolboxFormatAttribute-Objekts verwendet wird, das in einem VSPackage angewendet wird, das ToolboxItem-Objekte bereitstellt.

Unterstützung für dynamische Toolboxelement-Konfiguration registrieren

Wenn ein VSPackage eine Implementierung von IConfigureToolboxItem bereitstellt, muss diese Registrierungseinstellungen unter HKEY_LOCAL_MACHINE \ SOFTWARE \ Microsoft \ VisualStudio \ <Version> \ CLSID hinzu. und HKEY_LOCAL_MACHINE \ SOFTWARE \ Microsoft \ VisualStudio \ <Version> \ ToolboxItemConfiguration.

Die Benutzerdaten unter HKEY_LOCAL_MACHINE \ SOFTWARE \ Microsoft \ VisualStudio \ CLSID \ <Version> enthält die Informationen, die die Visual Studio Umgebung erfordert, um die Implementierung von IConfigureToolboxItemaufzurufen.

Das HKEY_LOCAL_MACHINE \ SOFTWARE \ Microsoft \ VisualStudio \ Data \ <Version> ToolboxItemConfiguration wird verwendet, um auszuwählen oder zu filtern, die ToolboxItem-Objekte die Implementierung von IConfigureToolboxItem auf der Grundlage von Assemblys konfiguriert.

HKEY_LOCAL_MACHINE \ des Inhalts des SOFTWAREs \ Microsoft \ VisualStudio \ <Version> \ CLSID Registrierungseintrag:

Hinweis

Unter dem verwalteten Paketframework werden diese Registrierungseinträge durch die Instanz von ProvideToolboxItemConfigurationAttributeerstellt.Diese Instanz wird in einem VSPackage angehängt, die ToolboxItem Konfiguration für die Verwendung von Reflektion ermöglicht.Die Reflektion wird auf dem IConfigureToolboxItem-Element ausgeführt, das dem ProvideToolboxItemConfigurationAttribute-Konstruktor bereitgestellt wird.

Name

Typ

Daten

Beschreibung

(Standard)

REG_SZ

(Optional)

Der vollständige Name der Klasse, die IConfigureToolboxItemimplementiert.

Der Wert muss hier denselben sein, der von FullName bereitgestellt wird, das auf Type agiert, das IConfigureToolboxItemimplementiert.

Assembly

REG_SZ

Der vollständige Name der Assembly, die IConfigureToolboxItembereitstellt

Dieser Wert muss die gesamte Assembly identifikation sein, die, abhängig von der Assembly, einschließlich:

  • ein einfacher Name

  • eine Versionsnummer

  • ein kryptografisches Schlüsselpaar

  • eine unterstützte Kultur

  • ein benutzerdefiniertes Feld

Der Wert muss eine durch Trennzeichen getrennte Liste von Eigenschaftswerten handeln würde, wie die Eigenschaft FullName von Fungieren auf Type bereitgestellt, das IConfigureToolboxItemimplementiert.

Beispiel: .

MyPackage.Toolbox, Version=8.0.1200.0, Culture=neutral,PublicKeyToken=abcdef12345ab, Custom=null

Platzhalterzeichen werden nicht unterstützt.

Weitere Informationen über das Format eines vollständigen Assemblynamens finden Sie unter AssemblyQualifiedName.

IConfigureToolboxItem.

Weitere Informationen über die Assembly identifikation finden Sie unter AssemblyName.

Klasse

REG_SZ

Der vollständige Name der Klasse, die wie beispielsweise die IConfigureToolboxItem-Schnittstelle durch FullNameimplementiert.

Der Wert sollte identisch mit dem sein, der von FullNamebereitgestellt und verhalten sich auf dem Typ, der IConfigureToolboxItemimplementiert.

CodeBase

REG_SZ

Speicherort der Assembly, die die Implementierung von IConfigureToolboxItembereitstellt

Dieser Wert muss der vollqualifizierte Pfad zur Assemblydatei sein, die die Implementierung von IConfigureToolboxItementhält.

InprocServer32

REG_SZ

Muss immer "C:\WINDOWS\System32\mscoree.dll"festgelegt wird

Der prozessinterne Server

ThreadingModel

REG_SZ

Muss immer "Both"festgelegt wird

Threadmodell

HKEY_LOCAL_MACHINE \ des Inhalts des SOFTWAREs \ Microsoft \ VisualStudio \ <Version> \ ToolboxItemConfigurations-Registrierungseintrag:

Hinweis

Unter dem verwalteten Paketframework werden diese Registrierungseinträge durch die Instanz von ProvideAssemblyFilterAttribute anfügten zu Type erstellt, das eine Implementierung von IConfigureToolboxItembereitstellt.

Name

Typ

Daten

Beschreibung

<AssemblyName>

REG_SZ

Spezifikation für Assemblys auszuwählen oder zu filtern.

Der Schlüsselname, <AssemblyName> , muss das Format der gesamten Assembly identifikation angegeben werden, die potenziell, je nach den zu filternden Assemblys, einschließlich:

  • ein einfacher Name

  • eine Versionsnummer

  • ein kryptografisches Schlüsselpaar

  • eine unterstützte Kultur

  • ein benutzerdefiniertes Feld

Der Schlüsselname muss eine durch Trennzeichen getrennte Liste der Eigenschaftswert paaren sein. Weitere Informationen über das Format eines vollständigen Assemblynamens finden Sie in der Type.FullName-Eigenschaft.

Ein Platzhalterzeichen von diesen Wert wird in "*" unterstützt werden, und alle nicht angegebene Feld wird als Platzhalter behandelt.

Zum Beispiel ein Schlüsselname aus

System.Windows.*, Version=8.0.*, Culture=*,PublicKeyToken=*

wählt alle Assemblys mit Namespaces unter System.Windows (obwohl nicht System.Windows selbst), für alle Nebenversionen der Version 8.0 sowie für alle Kulturen, kryptografischen Schlüsselwerte und benutzerdefinierten Zeichenfolgen aus.

In verwaltetem Paketframework wird der Schlüsselname <Assembly Name> durch die Zeichenfolge angibt, die als Argument an den Konstruktor für die ProvideAssemblyFilterAttribute-Instanz verwendet wird, die auf die Klasse angewendet wird, die die IConfigureToolboxItem-Schnittstelle implementiert.

<ImplementationObject>

REG_SZ

GUID

Der Name des Unterschlüssels von AssemblyName ist der vollqualifizierte Name Type , das die IConfigureToolboxItem-Schnittstelle implementiert.

Der Wert des Unterschlüssels ist die GUID des Type.

In verwaltetem Paketframework werden diese Informationen über Reflektion von der Klasse abgerufen, die die IConfigureToolboxItem-Schnittstelle mit einem ProvideAssemblyFilterAttribute-Objekt implementiert, das zuvor angewendet wird.

Ein Beispiel eines Eintrags unter HKEY_LOCAL_MACHINE \ SOFTWARE \ Microsoft \ VisualStudio \ <Version> \ ToolboxItemConfiguration würde wie folgt lauten:

        Vsip.*, Version=2.0.3500

            Vsip.ToolboxConfiguration = {YYYYYYYY-YYYY-YYYY-YYYY-YYYYYYYYYYYY}

Siehe auch

Referenz

ProvideToolboxItemsAttribute

ProvideToolboxFormatAttribute

ProvideAssemblyFilterAttribute

IConfigureToolboxItem

ToolboxItem

Konzepte

Die Toolbox verwalten

Gewusst wie: Erstellen Sie benutzerdefinierte Toolboxelemente für die Verwendung von Interop-Assemblys bereit