Condividi tramite


Per registrare pagine personalizzate di opzioni

Inserimento di una pagina Tools Options sia disponibile per gli utenti e all'automazione di supporto, deve correttamente essere registrata con l'ambiente di sviluppo integrato di Visual Studio (IDE).

le pagine diTools Options basate sul framework gestito del pacchetto vengono registrate applicando un'istanza di ProvideOptionPageAttribute al package VS che fornisce la pagina. Il supporto di automazione viene visualizzato impostando la proprietà di SupportsAutomation a true.

Registrazione della pagina delle Opzioni degli Strumenti

L'integrazione della pagina personalizzata Tools Options con Visual Studio richiede la creazione di una voce del Registro di sistema nel percorso seguente: HKEY_LOCAL_MACHINE \ SOFTWARE \ Microsoft \ VisualStudio \<versione>\ ToolsOptionsPages, dove <versione> è la versione di Visual Studio, ad esempio 8,0.

La voce dispone di una chiave primaria alla categoria (<PageCategory>) della pagina Tools Options e una sottochiave che contiene il nome della sottocategoria della pagina (<PageSubCategory>).

Ad esempio, la pagina Tools Options identificata con la stringa, TextEditor.Basic, ha un =textEditor di <PageCategory>la chiave del Registro di sistema con una sottochiave di <PageSubCategory>=Basic.

La struttura della voce del Registro di sistema è di seguito:

HKLM \ software \ Microsoft \ VisualStudio \<versione>\ \ ToolsOptionsPages

      <PageCategory> = '#12345'

            pacchetto = “{}„

            ResourcePackage = “{AAAA YYYYYYYYY yyyy yyyy di YYYYYY}„

HKLM \ software \ Microsoft \ VisualStudio \<versione>\ ToolsOptionsPages \<PageCategory>

            <PageSubCategory>> = '#67890'

                  pagina = “{ZZZZZZ ZZZZ ZZZZ ZZZZ ZZZZZZZZZ}„

                  pacchetto = “{AAAAAA AAAA AAAA AAAA AAAAAAAAA}„

                  ResourcePackage = “{BBBBBB BBBB BBBB BBBB BBBBBBBBB}„

                  NoShowAllView = 0/1

Nella tabella seguente sono elencati i valori in HKLM \ software \ Microsoft \ VisualStudio \<versione>\ ToolsOptionsPages \<PageCategory>.

Nome

Type

Dati

Descrizione

(Valore predefinito)

REG_SZ

Il nome della categoria canonico della pagina personalizzata Tools Options

Il nome della chiave, <PageCategory>, è il nome della categoria non localizzato canonico della pagina Tools Options .

Nota

Se l'automazione è supportata, i nomi non localizzati canonici di sottocategorie e di categoria vengono utilizzati per ottenere la raccolta di Properties di una pagina Tools Options .Per ulteriori informazioni, vedere Utilizzando le pagine di opzioni.

Per le implementazioni basate sul framework gestito del pacchetto, il > di <PageCategoryviene ottenuto dall'argomento di categoryName al costruttore di ProvideOptionPageAttribute .

La chiave può essere vuota, oppure può contenere il riferimento ID alla stringa localizzata nella DLL satellite di un'implementazione.

Per le implementazioni basate sul framework gestito del pacchetto, questo valore viene ottenuto dall'argomento di categoryResourceID al costruttore di ProvideOptionPageAttribute .

Pacchetto

REG_SZ

GUID

Il GUID del pacchetto VS che implementa la pagina personalizzata Tools Options .

Implementazioni basate sul framework gestito del pacchetto utilizzando la reflection di utilizzo di ProvideOptionPageAttribute per ottenere questo valore.

ResourcePackage

REG_SZ

GUID

Parametro facoltativo.

Una DLL satellite contenente stringhe localizzate se il package VS di implementazione non ne garantisce.

Il framework gestito del pacchetto utilizza la reflection per ottenere il pacchetto corretto delle risorse, in modo da ProvideOptionPageAttribute non imposta questo argomento.

Nella tabella seguente sono elencati i valori in HKLM \ software \ Microsoft \ VisualStudio \<versione>\ ToolsOptionsPages \<PageCategory>\<PageSubCategory>.

Nome

Type

Dati

Descrizione

(Valore predefinito)

REG_SZ

Il nome canonico di sottocategoria della pagina personalizzata Tools Options

Il nome della chiave, > di <PageSubCategory, è il nome non localizzato canonico la sottocategoria della pagina Tools Options .

Nota

Se l'automazione è supportata, i nomi non localizzati canonici di sottocategorie e di categoria vengono utilizzati per ottenere la raccolta di Properties di una pagina Tools Options .Per ulteriori informazioni, vedere Utilizzando le pagine di opzioni.

Per le implementazioni basate sul framework gestito del pacchetto, il > di <PageSubegoryviene ottenuto dall'argomento di pageName al costruttore di ProvideOptionPageAttribute .

La chiave può essere vuota, oppure può contenere il riferimento ID alla stringa localizzata in una DLL satellite di un'implementazione.

Per le implementazioni basate sul framework gestito del pacchetto, questo valore viene ottenuto dall'argomento di pageNameResourceID al costruttore di ProvideOptionPageAttribute .

Page

REG_SZ

GUID

Il GUID dell'oggetto che implementa la pagina personalizzata Tools Options .

Le implementazioni basate sul framework gestito del pacchetto tramite ProvideOptionPageAttribute utilizzano l'argomento di pageType del costruttore che contiene Type e reflection del package VS per ottenere questo valore.

Pacchetto

REG_SZ

GUID

Implementazioni basate sul framework gestito del pacchetto utilizzando la reflection di utilizzo di ProvideOptionPageAttribute per ottenere questo valore.

ResourcePackage

REG_SZ

GUID

Parametro facoltativo.

Una DLL satellite contenente stringhe localizzate se il package VS di implementazione non ne garantisce.

Il framework gestito del pacchetto utilizza la reflection per ottenere la DLL corretto delle risorse, in modo da ProvideOptionPageAttribute non imposta questo argomento.

NoShowAllView

REG_DWORD

0 o 1

Parametro facoltativo.

Indica se una determinata pagina Tools Options deve essere visualizzata nella visualizzazione (predefinita) complessa delle pagine Tools Options . Ambienti di supporta la programmazione, ad esempio Visual Basic, con pagine Tools Options speciale per aggregare le impostazioni comuni per fornire agli utenti con le visualizzazioni semplificate specifiche delle opzioni.

Se la voce di REG_DWORD è diversa da zero, la pagina Tools Options non viene visualizzata in una visualizzazione complessa.

Per ulteriori informazioni, vedere Finestra di dialogo Opzioni (Visual Studio).

Le implementazioni basate sul framework gestito del pacchetto possono impostare questo valore impostando la proprietà di NoShowAllView a true nel costruttore di ProvideOptionPageAttribute .

Un VSPackage o un oggetto basato di un singolo assembly di interoperabilità può implementare più pagine Tools Options . ogni implementazione richiede una nuova voce in HKLM \ software \ Microsoft \ VisualStudio \<versione>\ ToolsOptionsPages.

Quando il framework gestito del pacchetto creare un'istanza dell'oggetto che fornisce una pagina Tools Options , in ogni pagina deve disporre di un oggetto di implementazione, indipendente dall'implementazione di un package VS di Package.

Supporto per l'automazione

Se il supporto di automazione viene utilizzato per implementare una pagina Tools Options , è necessario registrarsi come provider di automazione. Per utilizzare l'automazione per la gestione della proprietà e utilizzare i meccanismi di persistenza per salvare lo stato della pagina Tools Options , è necessario registrarsi come provider di AutomationProperty .

Registrare un VSPackage come provider di automazione (solo per le pagine le Opzioni degli Strumenti basate degli assembly di interoperabilità)

le pagine diTools Options in base a un assembly di interoperabilità vengono implementate come parte delle classi dell'implementazione di un VSPackage.

In questo caso, se una pagina Tools Options consiste nel supportare l'automazione, il package VS basato su assembly di interoperabilità deve essere registrato come provider di automazione.

Nota

Il supporto di automazione nel framework gestito del pacchetto è fornito da un oggetto indipendente dall'implementazione del package VS.Se l'oggetto supporta l'automazione, questo viene registrato tramite la proprietà di SupportsAutomation del costruttore di ProvideOptionPageAttribute .

La voce per registrare un VSPackage come provider di automazione è nel formato HKEY_LOCAL_MACHINE \ SOFTWARE \ Microsoft \ VisualStudio \<versione>\ package \<PackageGUID>\ automazione, dove <versione> è la versione di Visual Studio (ad esempio 8,0) e <PackageGUID> è il GUID del pacchetto VS che implementa l'oggetto ActiveX.

Nota

Il percorso radice HKEY_LOCAL_MACHINE \ SOFTWARE \ Microsoft \ VisualStudio \<versione> è possibile eseguire l'override con alternanza la radice quando la shell di Visual Studio viene inizializzato.Per ulteriori informazioni, vedere Opzioni della riga di comando (Visual Studio SDK).

La struttura della voce del Registro di sistema è:

HKEY_LOCAL_MACHINE \ SOFTWARE \ Microsoft \ VisualStudio \<versione>\ package \<PackageGUID>\ automazione

            <AutomationObjectName>

Nome

Type

Dati

Descrizione

Automazione

REG_SZ

non definito

Non definito.

La presenza di questa chiave indica che il package VS è riferito a da automazione di supportare di <PackageGUID> .

Il campo può essere utilizzato per archiviare la documentazione.

ProvideAutomationObjectAttribute crea automaticamente questa chiave per le applicazioni basate sul framework gestito del pacchetto.

<AutomationObjectName>

REG_SZ

Il nome canonico dell'oggetto ActiveX specificato

Solo il nome della chiave è rilevante. Viene utilizzata nelle operazioni di automazione.

Il campo può essere utilizzato per archiviare la documentazione.

Per le implementazioni basate sul framework gestito del pacchetto, il nome della chiave è determinato dall'argomento di name al costruttore di ProvideAutomationObjectAttribute .

Se il costruttore di ProvideAutomationObjectAttribute ha una stringa valida fornita alla proprietà di Description , questo valore è qui.

Registrare una pagina delle Opzioni degli Strumenti come automazione di supporto

Entrambi a implementazioni basate su assembly di interoperabilità gestite della struttura del package e le pagine Tools Options dovranno registrarlo per consentire l'accesso di automazione a una pagina Tools Options . Sono inclusi i meccanismi e l'accesso di persistenza della proprietà di automazione nella pagina con EnvDTE. Ciò è indipendente dalla registrazione del package VS stessa come provider di servizi di automazione.

Come per la registrazione della pagina Tools Options accennato in precedenza, la voce dispone di una chiave primaria alla categoria (<PageCategory>) della pagina Tools Options e una sottochiave che contiene il nome della sottocategoria della pagina (<PageSubcategory>).

Se si utilizza il framework gestito del pacchetto, utilizzare ProvideOptionPageAttribute per registrare una classe come fornire una pagina Tools Options e impostare la proprietà di SupportsAutomation a true per indicare che la pagina supporta l'automazione.

La voce del Registro di sistema è contenuta in HKEY_LOCAL_MACHINE \ SOFTWARE \ Microsoft \ VisualStudio \<versione>\ AutomationProperties, dove <versione> è la versione di Visual Studio, ad esempio 8,0.

Nota

Il percorso radice HKEY_LOCAL_MACHINE \ SOFTWARE \ Microsoft \ VisualStudio \<versione> è possibile eseguire l'override con alternanza la radice quando la shell di Visual Studio viene inizializzato, per ulteriori informazioni, vedere Opzioni della riga di comando (Visual Studio SDK).

La struttura della voce del Registro di sistema è di seguito:

HKEY_LOCAL_MACHINE \ SOFTWARE \ Microsoft \ VisualStudio \<versione>\AutomationProperties

      <PageCategory> = ‘#456’

            ResourcePackage = “{}„

            <PageSubCategory> = ‘#789’

                  Pacchetto = “{AAAA YYYYYYYYY yyyy yyyy di YYYYYY}„

                  nome = “<PageCategory> .<PageSubcategory>„

                  “ProfileSave„ = 1/0

Nella tabella seguente sono elencati i valori sotto HKEY_LOCAL_MACHINE \ SOFTWARE \ Microsoft \ VisualStudio \<versione>\ AutomationProperties \<PageCategory>.

Nome

Type

Dati

Descrizione

(Valore predefinito)

REG_SZ

Il nome della categoria canonico della pagina personalizzata Tools Options

Il nome della chiave, > di <PageCategory, è il nome non localizzato canonico della categoria della pagina Tools Options .

Nota

Se l'automazione è supportata, i nomi non localizzati canonici di sottocategorie e di categoria vengono utilizzati per ottenere la raccolta di Properties di una pagina Tools Options .Per ulteriori informazioni, vedere Utilizzando le pagine di opzioni.

La chiave può essere vuota, oppure può contenere il riferimento ID alla stringa localizzata nella DLL satellite di un'implementazione.

Per le implementazioni basate sul framework gestito del pacchetto, il > di <PageCategoryviene ottenuto dall'argomento di categoryName al costruttore di ProvideOptionPageAttribute .

ResourcePackage

REG_SZ

GUID

Parametro facoltativo.

Una DLL satellite contenente stringhe localizzate se il package VS di implementazione non ne garantisce.

Il framework gestito del pacchetto utilizza la reflection per ottenere la risorsa corretta package VS, in modo da ProvideOptionPageAttribute non imposta questo argomento.

Nella tabella seguente sono elencati i valori sotto HKEY_LOCAL_MACHINE \ SOFTWARE \ Microsoft \ VisualStudio \<versione>\ AutomationProperties \<PageCategory>\<PageSubCategory>.

Nome

Type

Dati

Descrizione

(Valore predefinito)

REG_SZ

Il nome di sottocategoria della pagina personalizzata Tools Options

Il nome della chiave, > di <PageSubCategory, è il nome non localizzato canonico la sottocategoria della pagina Tools Options .

Nota

Se l'automazione è supportata, i nomi non localizzati canonici di sottocategorie e di categoria vengono utilizzati per ottenere la raccolta di Properties di una pagina Tools Options .Per ulteriori informazioni, vedere Utilizzando le pagine di opzioni.

La chiave può essere vuota, oppure può contenere il riferimento ID alla stringa localizzata nella DLL satellite di un'implementazione.

Per le implementazioni basate sul framework gestito del pacchetto, <PageSubCategory> viene ottenuto dall'argomento di pageName al costruttore di ProvideOptionPageAttribute .

Pacchetto

REG_SZ

GUID

Il GUID del pacchetto VS che implementa la pagina personalizzata Tools Options .

Implementazioni basate sul framework gestito del pacchetto utilizzando la reflection di utilizzo di ProvideOptionPageAttribute per ottenere questo valore.

Nome

REG_SZ

Nome delle proprietà della pagina Tools Options di raccolta

La stringa di <PageCategory>.<PageSubCategory> utilizzata per fare riferimento alla pagina Tools Options . Per ulteriori informazioni, vedere Utilizzando le pagine di opzioni.

Per le implementazioni basate sul framework gestito del pacchetto, il nome viene ottenuto dagli argomenti al costruttore di ProvideOptionPageAttribute e è nel formato categoryName.pageName.

ProfileSave

DWORD

1/0

Parametro facoltativo.

Questo valore indica se le impostazioni Tools Options vengono salvate dal meccanismo delle impostazioni di Visual Studio quando un utente sceglie il comando Import/Export Settings scegliere dal menu Strumenti .

Se la chiave è presente e il relativo valore è 1, la pagina Tools Options sta richiedendo il supporto delle impostazioni.

Le implementazioni basate sul framework gestito del pacchetto impostare questo valore se il costruttore di ProvideOptionPageAttribute viene fornito con la proprietà di SupportsProfiles a true.

Vedere anche

Attività

Procedura: creare pagine delle opzioni personalizzate

Riferimenti

Creazione di script di registrazione

Concetti

Utilizzando le pagine di opzioni

Creando pagine di opzioni utilizzando gli assembly di interoperabilità

Supporto di automazione per le pagine di opzioni

Altre risorse

pagine di opzioni