在我们使用VS新建项目时,一般都需要选择一个项目模板,一个好的项目模板可以帮我们节省很多项目业务上的重复工作
,但如何创造一个独属于自己的项目模板呢?
1.创造一个模版源,导出模版
2.给模板项目设置名称、说明、图标等内容
3.给项目模板添加语言、平台和项目类型等标签,方便搜索
找到菜单里的项目选择导出模版
这里选择项目模版,然后下一步
这个输出位置是自定义项目模板存放的路径。
下面的自动将模板导入 Visual Studio选项
一定要勾选,选中后会将项目模板复制一份,放入到特定的文件夹中
下次创建新项目就可以搜索到了。
点击完成
可以在以下两个文件夹找到.zip文件
1.
2.
这时打开Visual Studio就可以搜索到新创的项目模板了
到这一步,我们的项目模板就可以使用了,下面是一些锦上添花的操作,如果你只是想要一个自己的项目模板已经可以退出这篇文章了。
首先打开这个模板导入到的文件夹,路径是:
Visual Studio 2022\Templates\ProjectTemplates
解压对应模板.zip文件
而修改MyTemplate.vstemplate里面的内容就可以增加标签了。
附网上参考图
我们需要在TemplateData
标签里添加上项目使用语言、平台、项目类型的信息。
语言、平台、项目类型的标签分别为LanguageTag
、PlatformTag
、ProjectTypeTag
。
对应语法为
<LanguageTag> Language Name </LanguageTag>
<PlatformTag> Platform Name </PlatformTag>
<ProjectTypeTag> Project Type </ProjectTypeTag>
同时,Visual Studio 提供了一系列内置标签。以下列表是 Visual Studio 中可用的内置标签,对应的值显示在括号中。
以下是一个本人修改的例子
示例图
代码块
<VSTemplate Version="3.0.0" xmlns="http://schemas.microsoft.com/developer/vstemplate/2005" Type="Project">
<TemplateData>
<Name>projectTemplate</Name>
<Description>顾名思义的模板说明</Description>
<ProjectType>VC</ProjectType>
<ProjectSubType>
</ProjectSubType>
<SortOrder>1000</SortOrder>
<CreateNewFolder>true</CreateNewFolder>
<DefaultName>projectTemplate</DefaultName>
<ProvideDefaultName>true</ProvideDefaultName>
<LocationField>Enabled</LocationField>
<EnableLocationBrowseButton>true</EnableLocationBrowseButton>
<Icon>__TemplateIcon.ico</Icon>
//平台标签
<PlatformTag>windows</PlatformTag>
//语言标签
<LanguageTag>cpp</LanguageTag>
//项目类型标签
<ProjectTypeTag>console</ProjectTypeTag>
</TemplateData>
<TemplateContent>
<Project TargetFileName="projectTemplate.vcxproj" File="projectTemplate.vcxproj" ReplaceParameters="true">
<ProjectItem ReplaceParameters="false" TargetFileName="$projectname$.vcxproj.filters">projectTemplate.vcxproj.filters</ProjectItem>
<ProjectItem ReplaceParameters="false" TargetFileName="projectTemplate.cpp">SRC\projectTemplate.cpp</ProjectItem>
</Project>
</TemplateContent>
</VSTemplate>
修改完后选中解压的所有文件再次压缩为对应项目模板名称的.zip文件
覆盖原来位置的.zip文件
至此就是所有自定义项目模板的基本步骤,和部分进阶步骤。
Visual Studio中的自定义项目模板主要有两个用途:
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。