当用户从 visual studio 新项目 window 中选择模板类型时,获取所选模板的名称

Get name of template selected when user selected the template type from the visual studio new project window

我有一个自定义 visual studio 扩展,现在需要将两种类型的项目模板捆绑到扩展中。在 visual studio 中,这作为两个可选择的项目类型出现。但是,IWizard 实现对这两个项目一视同仁并显示相同的对话框。有没有一种方法可以根据用户选择的项目有条件地将项目添加到对话框中?

您应该能够使用传递给您的 IWizard.RunStarted 的 customParams 参数来区分哪个 .vstemplate 负责调用向导。

具体来说,customParams[0] 是 .vstemplate 的完整路径,因此您可以仅提取基本文件名并有条件地调用特定对话框,或者调用带有确定要显示内容的标志的对话框。

我唯一的例子是链接到我几年前写的一篇旧博客文章:

Creating a VSIX Deployable C++ project template.

但该演示仅使用 .vstemplate 的路径来定位我需要以编程方式复制到生成的项目目录中的 .vsxproj.filters 文件,因为它未在 .vcxproj 中引用。

真诚的, 埃德·多尔