有没有办法从命令行向Visual Studio项目添加源文件?

时间:2013-07-20 16:48:41

标签: windows visual-studio-2010 command-line

我想使用sublime来编辑visual studio项目。 我有一个自定义版本:

{
   "cmd": ["c:\\Windows\\Microsoft.NET\\Framework\\v4.0.30319\\MSBuild.exe"],
    "working_dir": "${project_path:${folder:${file_path}}}/../Project"
}

但是如果我添加新文件,我还需要将它们包含在项目中。

有没有办法从命令行执行此操作,可能是在编译时?

我正在使用c ++处理opengl;

我基本上使用opengl网站上提供的一个示例来设置项目。

然后我以sublime文本打开项目文件夹,并使用自定义构建系统成功编译它。

但是,当我向项目添加新的源文件(* .h和* .cpp)时,我收到链接错误。

当我在visual studio中构建时,我得到了同样的错误。

通过手动浏览并将文件添加到项目中来包含文件后,错误消失了。

我想要的是一种自动将文件夹中的所有源文件添加到项目中的方法(通过命令行,或通配符或其他方式)。

通过这种方式,我可以轻松地在sublime中处理vs2010项目,添加新的源文件并构建项目。

或者可能已经有更好的工作流程了吗?

1 个答案:

答案 0 :(得分:6)

您可以尝试修改.vcxproj文件,以在项目文件夹或下面的文件夹中包含任何.h和.cpp文件。

如果是c ++ VS项目,您可以尝试更改.vcxproj文件,如下所示:

<?xml version="1.0" encoding="utf-8"?>
<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
    <!-- rest of project file untouched -->

    <!-- start of modified part -->

    <ItemGroup>
        <ClInclude Include="**\*.h" />
    </ItemGroup>
    <ItemGroup>
        <ClCompile Include="**\*.cpp" />
    </ItemGroup>

    <!-- end of modified part -->

    <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
    <ImportGroup Label="ExtensionTargets">
    </ImportGroup>
</Project>

请注意,稍后从VS内部向项目添加文件将取代上述修改!

作为替代方案,您还可以创建一个外部项目文件,其中包含上述相同的<ItemGroup />元素,并将此项目文件包含在.vcxproj中。

如果您有兴趣,我会添加一个替代示例。