有没有办法在.vsprops文件中指定相对于.vsprops文件目录的路径?
例如,我有以下I目录结构:
largesolution.sln
a/a.vcproj
b/c/c.vcproj
common/common.vspropsa.vcproj和c.vcproj都包含common.vsprops,我想添加一些宏或设置相对于common文件夹的包含目录,而不管这两个项目包含在哪个解决方案目录中。我试过在.vsprops文件中使用$(InputDir),但这个宏似乎被扩展为包含.vcproj的目录,而不是.vsprops文件。
在Visual C++目录中设置绝对路径或设置全局包含路径不是解决方案,因为不同的开发人员具有不同的源代码树根位置。设置相对于$(SolutionDir)的路径并不合适,因为在主源码树之外的某个地方包含一些子集ob项目(例如,仅限a.vcproj )的较小解决方案是有用的。
当然,将a.vcproj中的包含目录设置为$(ProjectDir)..\common可以很好地工作,但要实现的结果是只包含.vsprops并正确设置路径。
发布于 2013-12-19 14:58:09
可以使用MSBuildThisFileDirectory宏。例如:在common.props中将包含目录设置为"$(MSBuildThisFileDirectory)\include;$(IncludePath)“。
详情请参见http://msdn.microsoft.com/en-us/library/vstudio/ms164309.aspx。
已使用MSVS2012和MSVS2013进行测试。
https://stackoverflow.com/questions/11347000
复制相似问题