Поделиться через


Упаковка и развертывание пользовательских расширений My (Visual Basic)

Visual Basic предоставляет простой способ развертывания расширений пользовательского My пространства имен с помощью шаблонов Visual Studio. Если вы создаете шаблон проекта, для которого расширения My являются неотъемлемой частью нового типа проекта, вы можете просто включить пользовательский My код расширения в проект при экспорте шаблона. Дополнительные сведения о экспорте шаблонов проектов см. в статье "Практическое руководство. Создание шаблонов проектов".

Если пользовательское My расширение находится в одном файле кода, вы можете экспортировать файл в виде шаблона элемента, который пользователи могут добавить в любой тип проекта Visual Basic. Затем вы можете настроить шаблон элемента, чтобы включить дополнительные возможности и поведение для пользовательского My расширения в проекте Visual Basic. К этим возможностям относятся следующие возможности:

  • Разрешение пользователям управлять пользовательским My расширением на странице "Мои расширения " конструктора проектов Visual Basic.

  • Автоматическое добавление настраиваемого My расширения при добавлении ссылки на указанную сборку в проект.

  • Скрытие My шаблона элемента расширения в диалоговом окне "Добавление элемента ", чтобы он не был включен в список элементов проекта.

В этом разделе описывается, как упаковать пользовательское My расширение в виде шаблона скрытого элемента, который можно управлять с помощью страницы "Мои расширения " конструктора проектов Visual Basic. Настраиваемое My расширение также можно добавлять автоматически при добавлении ссылки на указанную сборку в проект.

Создайте расширение пространства имен My

Первым шагом в создании пакета развертывания для настраиваемого My расширения является создание расширения в виде одного файла кода. Дополнительные сведения и рекомендации по созданию пользовательского My расширения см. раздел "Расширение пространства имен в Visual Basic".

Экспорт расширения пространства имен "Мой" в виде шаблона элемента

После того как у вас будет файл кода, включающий ваше My расширение пространства имен, вы сможете экспортировать файл кода как шаблон элемента Visual Studio. Инструкции по экспорту файла в виде шаблона элемента Visual Studio см. в статье "Практическое руководство. Создание шаблонов элементов".

Замечание

Если расширение вашего My пространства имен зависит от конкретной сборки, вы можете настроить шаблон элемента так, чтобы ваше расширение My пространства имен автоматически устанавливалось при добавлении ссылки на эту сборку. В результате необходимо исключить эту ссылку на сборку при экспорте файла кода в виде шаблона элемента Visual Studio.

Настройка шаблона элемента

Вы можете включить управление шаблоном элемента на странице "Мои расширения " конструктора проектов Visual Basic. Вы также можете включить опцию, чтобы шаблон элемента автоматически добавлялся при добавлении ссылки на указанную сборку в проект. Чтобы включить эти настройки, вы добавите новый файл с именем CustomData-файл в шаблон, а затем добавьте новый элемент в XML-файл vstemplate.

Добавление файла CustomData

Файл CustomData — это текстовый файл с расширением имени файла. CustomData (имя файла может быть задано для любого значения, понятного для шаблона) и содержащего XML. XML в файле CustomData указывает Visual Basic включить ваше расширение My, когда пользователи используют страницу «Мои расширения» в конструкторе проектов Visual Basic. При необходимости можно добавить атрибут <AssemblyFullName> в XML-файл CustomData. Это указывает Visual Basic на автоматическую установку вашего пользовательского My расширения при добавлении ссылки на конкретную сборку в проект. Вы можете использовать любой текстовый редактор или редактор XML для создания файла CustomData, а затем добавить его в сжатые папки шаблона элемента (файл.zip).

Например, в следующем XML-коде показано содержимое файла CustomData, который добавит элемент шаблона в папку "Мои расширения" проекта Visual Basic при добавлении ссылки на сборку Microsoft.VisualBasic.PowerPacks.Vs.dll в проект.

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

Файл CustomData содержит <VBMyExtensionTemplate> элемент с атрибутами, указанными в следующей таблице.

Свойство Описание
ID Обязательное. Уникальный идентификатор расширения. Если расширение с этим идентификатором уже добавлено в проект, пользователю не будет предложено снова добавить его.
Version Обязательное. Номер версии для шаблона элемента.
AssemblyFullName Необязательно. Имя сборки. При добавлении ссылки на эту сборку в проект пользователю будет предложено добавить My расширение из этого шаблона элемента.

Добавьте элемент <CustomDataSignature> в файл vstemplate.

Чтобы определить шаблон элемента Visual Studio как My расширение пространства имен, необходимо также изменить vstemplate-файл для шаблона элемента. Необходимо добавить элемент <CustomDataSignature> в элемент <TemplateData>. Элемент <CustomDataSignature> должен содержать текст Microsoft.VisualBasic.MyExtension, как показано в следующем примере.

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

Нельзя напрямую изменять файлы в сжатой папке (.zip-файле). Необходимо скопировать vstemplate-файл из сжатой папки, изменить его, а затем заменить vstemplate-файл в сжатой папке обновленной копией.

В следующем примере показано содержимое файла .vstemplate, в который добавлен элемент <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>

Установка шаблона

Чтобы установить шаблон, можно скопировать сжатые папки (.zip файл) в папку шаблонов элементов Visual Basic. По умолчанию шаблоны элементов пользователя находятся в %USERPROFILE%\Documents\Visual Studio <Version>\Templates\ItemTemplates\Visual Basic. Кроме того, можно опубликовать шаблон в виде файла Visual Studio Installer (VSI).

См. также