Condividi tramite


Creazione di pacchetti e distribuzione delle estensioni My personalizzate (Visual Basic)

Visual Basic offre un modo semplice per distribuire le estensioni dello spazio dei nomi My personalizzate usando i modelli di Visual Studio. Se si sta creando un modello di progetto per cui le estensioni My sono parte integrante del nuovo tipo di progetto, è sufficiente includere il codice dell'estensione My personalizzato nel progetto quando si esporta il modello. Per ulteriori informazioni sull'esportazione dei modelli di progetto, vedere Procedura: Creare modelli di progetto.

Se l'estensione My personalizzata si trova in un singolo file di codice, è possibile esportare il file come modello di elemento che gli utenti possono aggiungere a qualsiasi tipo di progetto di Visual Basic. È quindi possibile personalizzare il modello di elemento per abilitare funzionalità e comportamenti aggiuntivi per l'estensione My personalizzata in un progetto di Visual Basic. Tali funzionalità includono le seguenti:

  • Consentire agli utenti di gestire l'estensione My personalizzata dalla pagina Estensioni My di Creazione progetti di Visual Basic.

  • Aggiungere automatica l'estensione My personalizzata quando un riferimento a un assembly specificato viene aggiunto a un progetto.

  • Nascondere il modello di elemento dell'estensione My nella finestra di dialogo Aggiungi elemento in modo che non sia incluso nell'elenco di elementi del progetto.

In questo argomento viene illustrato come creare un pacchetto di un'estensione My personalizzata come modello di elemento nascosto che può essere gestito dalla pagina Estensioni My di Creazione progetti di Visual Basic. L'estensione My personalizzata può essere aggiunta automaticamente anche quando un riferimento a un assembly specificato viene aggiunto a un progetto.

Creare un'estensione dello spazio dei nomi My

Il primo passaggio per la creazione di un pacchetto di distribuzione per un'estensione My personalizzata consiste nel creare l'estensione come singolo file di codice. Per informazioni dettagliate e indicazioni su come creare un'estensione My personalizzata, vedere Estensione dello spazio dei nomi My in Visual Basic.

Esportare un'estensione dello spazio dei nomi My come modello di elemento

Quando è disponibile un file di codice che include l'estensione dello spazio dei nomi My, è possibile esportare il file di codice come modello di elemento di Visual Studio. Per istruzioni su come esportare un file come modello di elemento di Visual Studio, vedere Procedura: Creare modelli di elementi.

Nota

Se l'estensione dello spazio dei nomi My ha una dipendenza da un particolare assembly, è possibile personalizzare il modello di elemento per installare automaticamente l'estensione dello spazio dei nomi My quando viene aggiunto un riferimento a tale assembly. Di conseguenza, è necessario escludere il riferimento all'assembly quando si esporta il file di codice come modello di elemento di Visual Studio.

Personalizzare il modello di elemento

È possibile abilitare il modello di elemento da gestire dalla pagina Estensioni My di Creazione progetti di Visual Basic. È anche possibile abilitare il modello di elemento da aggiungere automaticamente quando un riferimento a un assembly specificato viene aggiunto a un progetto. Per abilitare queste personalizzazioni, aggiungere un nuovo file, denominato file CustomData, al modello e quindi aggiungere un nuovo elemento all'XML nel file con estensione .vstemplate.

Aggiungere il file CustomData

Il file CustomData è un file di testo con estensione .CustomData (il nome file può essere impostato su qualsiasi valore importante per il modello) e che contiene XML. L'XML nel file CustomData indica a Visual Basic di includere l'estensione My quando gli utenti usano la pagina Estensioni My di Creazione progetti di Visual Basic. Facoltativamente, è possibile aggiungere l'attributo <AssemblyFullName> al file XML CustomData. In questo modo viene indicato a Visual Basic di installare automaticamente l'estensione My personalizzata quando viene aggiunto un riferimento a un particolare assembly al progetto. È possibile usare qualsiasi editor di testo o editor XML per creare il file CustomData e quindi aggiungerlo alla cartella compressa del modello di elemento (file .zip).

Ad esempio, il codice XML seguente mostra il contenuto di un file CustomData che aggiungerà l'elemento del modello alla cartella Estensioni My di un progetto Visual Basic quando viene aggiunto un riferimento all'assembly Microsoft.VisualBasic.PowerPacks.Vs.dll al progetto.

<VBMyExtensionTemplate
    ID="Microsoft.VisualBasic.Samples.MyExtensions.MyPrinterInfo"
    Version="1.0.0.0"
    AssemblyFullName="Microsoft.VisualBasic.PowerPacks.vs"
/>

Il file CustomData contiene un elemento <VBMyExtensionTemplate> i cui attributi sono elencati nella tabella seguente.

Attributo Descrizione
ID Obbligatorio. Identificatore univoco dell'estensione. Se l'estensione con questo ID è già stata aggiunta al progetto, all'utente non verrà richiesto di aggiungerlo di nuovo.
Version Obbligatorio. Numero di versione per il modello di elemento.
AssemblyFullName Facoltativo. Nome dell'assembly. Quando al progetto viene aggiunto un riferimento a questo assembly, all'utente verrà chiesto di aggiungere l'estensione My da questo modello di elemento.

Aggiungere l'elemento <CustomDataSignature> al file .vstemplate

Per identificare il modello di elemento di Visual Studio come estensione dello spazio dei nomi My, è necessario modificare anche il file .vstemplate per il modello di elemento. È necessario aggiungere un elemento <CustomDataSignature> all'elemento <TemplateData>. L'elemento <CustomDataSignature> deve contenere il testo Microsoft.VisualBasic.MyExtension, come illustrato nell'esempio seguente.

<CustomDataSignature>Microsoft.VisualBasic.MyExtension</CustomDataSignature>

Non è possibile modificare direttamente i file in una cartella compressa (file .zip). È necessario copiare il file .vstemplate dalla cartella compressa, modificarlo e quindi sostituirlo nella cartella compressa con la copia aggiornata.

Nell'esempio seguente viene illustrato il contenuto di un file .vstemplate a cui è stato aggiunto l'elemento <CustomDataSignature>.

<VSTemplate Version="2.0.0" xmlns="http://schemas.microsoft.com/developer/vstemplate/2005" Type="Item">
  <TemplateData>
    <DefaultName>MyCustomExtensionModule.vb</DefaultName>
    <Name>MyPrinterInfo</Name>
    <Description>Custom My Extensions Item Template</Description>
    <ProjectType>VisualBasic</ProjectType>
    <SortOrder>10</SortOrder>
    <Icon>__TemplateIcon.ico</Icon>
    <CustomDataSignature      >Microsoft.VisualBasic.MyExtension</CustomDataSignature>
  </TemplateData>
  <TemplateContent>
    <References />
    <ProjectItem SubType="Code"
                 TargetFileName="$fileinputname$.vb"
                 ReplaceParameters="true"
     >MyCustomExtensionModule.vb</ProjectItem>
  </TemplateContent>
</VSTemplate>

Installare il modello

Per installare il modello, è possibile copiare la cartella compressa (file .zip ) nella cartella dei modelli di elementi di Visual Basic. Per impostazione predefinita, i modelli di elemento dell'utente si trovano in %USERPROFILE%\Documenti\Visual Studio <Versione>\Modelli\ItemTemplates\Visual Basic. In alternativa, è possibile pubblicare il modello come file del Programma di installazione di Visual Studio (con estensione VSI).

Vedi anche