Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/visual-studio/7.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 从Visual Studio自定义扩展检测设置_C#_Visual Studio_Visual Studio 2019_Visual Studio Extensions - Fatal编程技术网

C# 从Visual Studio自定义扩展检测设置

C# 从Visual Studio自定义扩展检测设置,c#,visual-studio,visual-studio-2019,visual-studio-extensions,C#,Visual Studio,Visual Studio 2019,Visual Studio Extensions,我正在更新现有的Visual Studio扩展以与Visual Studio 2019兼容。此扩展允许开发人员创建自定义项目类型。当用户单击VisualStudio的“创建”按钮创建此自定义类型的新项目时,扩展将显示一个自定义表单,以便在扩展创建项目之前从开发人员检索某些信息。这是在“我的扩展”的vstemplate中指定的向导类库中完成的: <WizardExtension> <Assembly>...Wizard, Version=1.0.0.0, Cultu

我正在更新现有的Visual Studio扩展以与Visual Studio 2019兼容。此扩展允许开发人员创建自定义项目类型。当用户单击VisualStudio的“创建”按钮创建此自定义类型的新项目时,扩展将显示一个自定义表单,以便在扩展创建项目之前从开发人员检索某些信息。这是在“我的扩展”的vstemplate中指定的向导类库中完成的:

<WizardExtension>
    <Assembly>...Wizard, Version=1.0.0.0, Culture=neutral, PublicKeyToken=b5b18240577bb6e8</Assembly>    
    <FullClassName>...Wizard.Logic.Wizard</FullClassName>
</WizardExtension>

是否有方法检测地点解决方案和项目是否正确 在同一目录中,从中选中下面显示的复选框 我的扩展的向导类

恐怕答案是否定的
VS2019 SDK
没有api知道是否选中了
将解决方案和项目放置在同一目录中。此复选框不是解决方案或项目的有效设置

假设您的模板在创建模板时有两个表单(类似于
asp.net
web项目)
Form1
是VS IDE中的普通文件夹,
Form2
是您在
向导中的自定义文件夹,解决方案文件和相关项目文件夹隐藏在
中。VS
文件夹只有在您单击finalCreate按钮后才会创建。因此,我认为在最终创建项目之前,
将解决方案和项目放在同一目录中的信息存储在临时缓存中。这在您的向导类中很难访问


因此,我认为现在,您需要的是不受支持的行为…

在创建模板时,我的模板有两个表单,VS IDE表单后跟向导中的自定义表单,这一点您是正确的。如果他们不是一个官方api来给我复选框信息,我希望我能找到一个替代方法来检测复选框状态,即使它有点黑客,但我还没有找到任何方法。我还试图检查是否有其他方法,但我发现当我们在表格1甚至表格2中选择复选框时,解决方案文件夹中没有创建任何内容(即使是.vs文件夹)。所以我认为,当我们在form2中时,关于是否选中该框的信息存储在临时缓存中的某个位置,而不是解决方案本身。。。这意味着很难找到我们想要的信息:-(