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


Добавление каталогов в диалоговое окно "Новый проект"

При создании новых типов проектов можно также зарегистрировать новый каталог в диалоговом окне "Новый проект ", чтобы отобразить их для использования в качестве шаблонов. В следующем примере кода объясняется, как зарегистрировать новый каталог, также известный как узел. В примере шаблоны, предоставляемые VSPackage, CLSID_Package, регистрируются. В результате в левой части диалогового окна "Новый проект" отображается добавленный узел с именем, определенным ресурсом Folder_Label_ResID . Этот ресурс загружается из вспомогательной библиотеки DLL VSPackage.

Значение папки представляет GUID папки, в которой отображается узел Folder_Label_ResID . В примере GUID представляет папку "Другие проекты" в области "Типы проектов" диалогового окна "Новый проект". Если значение "Другие проекты" отсутствует, метка размещается на верхнем уровне.

Значение TemplatesDir указывает полный путь к каталогу, содержаму шаблоны проектов. Эти файлы могут быть vsz-файлами или типичными файлами шаблонов для клонирования.

Если указано TemplatesLocalizedSubDir, это должен быть идентификатор ресурса строки, которая называет подкаталог, TemplatesDir содержащий локализованные шаблоны. Так как Visual Studio загружает строковый ресурс из вспомогательной библиотеки DLL, если у вас есть один, каждая вспомогательная библиотека DLL может содержать другое имя подкаталога. Значение SortPriority указывает приоритет сортировки.

NoRemove NewProjectTemplates
{
    NoRemove TemplateDirs
  {
    ForceRemove %CLSID_Package%
    {
      ForceRemove /1 = s '#%Folder_Label_ResID%'
      {
        val Folder = s '{DCF2A94A-45B0-11D1-ADBF-00C04FB6BE4C}'
        val TemplatesDir = s '%Template_Path%'
        val TemplatesLocalizedSubDir = s '#100'
        val SortPriority = d 1000
      }
    }
  }
}