使用命令行创建新的 Visual Studio 模板项目

Posted

技术标签:

【中文标题】使用命令行创建新的 Visual Studio 模板项目【英文标题】:Creating A New Visual Studio Template Project Using The Command Line 【发布时间】:2018-01-17 12:16:06 【问题描述】:

我正在开展一个项目,该项目需要我们在一些 Raspberry Pi 上远程构建。我们使用的是 Visual Studio 2017,它引入了一些限制。我设法创建了两个 Visual Studio 模板,一个可以在 Windows 上构建,一个可以在 Pis 上远程构建。

然而,每次有人使用我的模板时,他们都需要创建两个模板并进行大量拖放操作,然后他们需要自己进行一些配置(这是简单使用模板的问题)。

我想构建一个简单的“.bat”脚本(如果我真的需要的话,也可以是一个小的 C# 程序),它可以创建两个模板并自动添加所需的配置。特别是因为我对模板所做的每一次修改都会迫使每个人再次生成两个“.vcxproj”文件。

我发现了几篇关于通过命令行构建的帖子,以及关于从命令行创建完整解决方案的*** post from 2011(Visual Studio 当时无法做到,但已经 6 年多了所以这可能已经改变了)。我只需要从模板中生成“.vcxproj”文件,没什么好说的。可以通过命令行实现吗?

【问题讨论】:

【参考方案1】:

即使您确实创建了脚本来从命令行创建 xml 文件,您也可以使用 Visual Studio 2017 SDK 中的功能以更好、更轻松的方式完成一些事情。此外,Visual Studio 2017 不再扫描项目模板的目录。 (但这没关系,因为 vstemplates 没有内置版本控制,您将使用 VSIX 文件进行版本控制)

现在您必须使用 VSIX 扩展来管理您的模板。继续像以前一样导出项目模板,但这次您会将模板“导入”到 VSIX 中。

在 MSDN 上查看此链接:Creating a VSIX for project templates

然后,您可以选择将 VSIX“导入”到 MSI 以进行组策略部署,或通过电子邮件分发 VSIX 文件。

这是来自 Mummy 的链接:Redistributing a VSIX package via Wix Installer

在此之后,您可以开始查看批处理文件以进行进一步优化,例如重新分发 .vcxproj.user 文件,这样用户就不必为 Windows Iot 输入远程调试参数

【讨论】:

这是一个不错的答案,但是它不适用于 .Net Core 项目。在这种情况下,您需要手动填充模板(例如 projectgen 需要来自 docs.microsoft.com/en-us/previous-versions/visualstudio/… 的一些东西)

以上是关于使用命令行创建新的 Visual Studio 模板项目的主要内容,如果未能解决你的问题,请参考以下文章

visual studio code 命令行创建发布一个项目

Visual Studio - 创建面向 .Net Core 的类库

swig 和使用 Visual Studio 2017 命令行构建项目

qmake 可以在 Visual Studio 项目中配置命令行选项吗?

从命令行打开一个 Visual Studio 网站(不是解决方案)

如何在 Windows 10 中从命令行构建 Visual Studio 2015 vb 解决方案