0

我需要制作一个与内置 c++ 向导相同的自定义 C++ 项目向导。不管是哪种类型。它可能是控制台类型的项目。

我需要更改的只是添加自定义包含目录的路径和自定义库目录的路径。

我怎样才能做到这一点?

4

2 回答 2

1

我想你想看看项目模板。

http://msdn.microsoft.com/en-us/library/s365byhx.aspx

于 2011-02-15T10:15:36.757 回答
0

这是编写新向导的链接 http://msdn.microsoft.com/en-us/library/7k3w6w59.aspx

我建议将这些类型的设置(例如自定义路径)存储在属性表中。( .props 文件。)然后您可以稍后改变主意并让此更改影响多个项目。您的向导可以简单地将这个 .props 文件添加到 .vcxproj。我也更喜欢 .props 文件,因为您还可以定义 vcxproj 和其他 .props 文件可以使用的其他用户宏。

http://msdn.microsoft.com/en-us/library/a4xbdz1e.aspx

内置向导位于 [vsinstalldir]\vc\VCWizards\AppWiz 注册这些项目类型的附加文件位于 [vsinstalldir]\vc\VCprojects\ 您可以更改这些文件或复制它们以获取其余的 c++向导功能。

附加想法:

您可能会注意到 .vcxproj 通常有这样的条目:

  <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
        <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
  </ImportGroup>

这意味着现有向导创建了一个条目,该条目尝试绑定到用户属性表(如果存在)。

c:\users\<username>\AppData\Local\Microsoft\MSBuild\v4.0\Microsoft.Cpp.Win32.user.props

<?xml version="1.0" encoding="utf-8"?> 
<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
   <ItemDefinitionGroup>
     <ClCompile>
       <AdditionalIncludeDirectories>c:\Custom\Include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
     </ClCompile>
   <ItemDefinitionGroup>
</Project>

我推荐第二个想法。添加包含、lib 路径和其他类型的设置是一种常见的场景,现有的向导通过引用用户属性表来实现这一点。

于 2012-01-11T20:44:35.280 回答