2

我正在尝试创建一个适用于 VS2010 Standard/Pro/Ultimate 以及 Integrated Shell 的项目模板。

我已经让 VS2010 Std 部分工作了,但对于我的生活,我无法让它与 Int Shell 一起工作——可能是因为我的安装没有任何 CSharp 项目。

在谷歌搜索了一整天之后,我偶然发现了 IronPython 的 vstemplate 文件,它看起来像这样:

<VSTemplate Version="2.0.0" Type="Project" xmlns="http://schemas.microsoft.com/developer/vstemplate/2005">
  <TemplateData>
    <Name>Python Application</Name>
    <Description>A project for creating a command-line application</Description>
    <Icon>__TemplateIcon.ico</Icon>
    <ProjectType>Python</ProjectType>
    <SortOrder>50</SortOrder>
    <NumberOfParentCategoriesToRollUp>2</NumberOfParentCategoriesToRollUp>
    <CreateNewFolder>false</CreateNewFolder>
    <DefaultName>PythonApplication</DefaultName>
    <ProvideDefaultName>true</ProvideDefaultName>
  </TemplateData>
  <TemplateContent>
    <Project File="PythonApp.pyproj" ReplaceParameters="true">
      <ProjectItem ReplaceParameters="true" OpenInEditor="true" TargetFileName="$safeprojectname$.py">Program.py</ProjectItem>
    </Project>
  </TemplateContent>
</VSTemplate>

这些模板适用于所有版本,并且具有与MSDN中提到的不同的 ProjectType :ProjectType = Python。他们是怎么做到的?如果我使用 CSharp/Web/VisualBasic 以外的其他东西,我的项目类型就会付诸东流。

谢谢;

4

1 回答 1

4

我没有深入了解您所描述的问题,但我想这 2 条提示将帮助您解决问题。简而言之,您应该关心您的自定义 ProjectNode 类的 ProjectType 属性,并确保您已在 VSX 属性和自定义 .template 文件中的某处指定它(我不记得我到底在哪里做的)。所以有我提到的那些链接:

希望有帮助!

于 2012-04-17T13:00:34.397 回答