2016-03-14 108 views
0

我tyring使用包含 - 什么,你使用重构我的代码路径,但我需要准确地找出哪些目录VS是拜访。如何efficienlty得到所有包括MSVC2013

我如何获取我的项目中文件可见的所有包含路径的列表?

如果我添加了一个不正确的include,像“#include”这样的东西,我得到了我想要的列表,但我无法复制并粘贴该死的东西! (并且OCR似乎不起作用)。

如何获得此列表?如果你想一次手动做到这一点,但不能很好地扩展

enter image description here

+1

实际上,当显示一个标准消息框(看起来像是一个标准消息框)以复制其内容时,您可以按Ctrl + C。 –

+0

@IgorTandetnik好吧,很酷,想发布它作为答案? – Mikhail

+0

@IgorTandetnik是的请发表这个,所以很多人都不知道Ctrl-C在任何标准对话框中工作,而是采取劣势的方式来获得它像截图等 – stijn

回答

1

复制/粘贴在对话框即可。既然你标记了这个msbuild,这里有一个使用它的解决方案。创建一个文件名showincludes.targets并粘贴此代码的MSBuild:

<?xml version="1.0" encoding="utf-8"?> 
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> 
    <Target Name="ShowIncludes"> 
    <Message Text="$(Include);%(ClCompile.AdditionalIncludeDirectories)"/> 
    </Target> 
</Project> 

我们获取列表中包含任何项目文件使用

msbuild \path\to\vcxproj /p:ForceImportAfterCppTargets=\path\to\showincludes.targets /t:ShowIncludes 

这将导入所述文件到项目中给予,所以它可以访问所有属性,并打印编译器默认使用的INCLUDE环境变量的值以及由msbuild传递给编译器的AdditionalIncludeDirectories的值。