我正在将一些环境变量转换为某些C ++项目的属性表。这样,当从SVN中的分支或主干使用项目时,我们不必使用交叉点在分支和主干之间切换。
我的属性表paths.vsprops采用以下格式:
<?xml version="1.0" encoding="Windows-1252"?>
<VisualStudioPropertySheet
ProjectType="Visual C++"
Version="8.00"
Name="Paths"
>
<UserMacro
Name="EnvironmentVariable"
Value=".\folder1\folder1;.\folder2\folder2"
PerformEnvironmentSet="true"
/>
</VisualStudioPropertySheet>
请注意我正在使用的值字段“。”尝试获取vsprops文件的当前路径。嗯,这不起作用,我得到一些错误,无法找到文件。因此,在解释了所有内容之后,我该如何在XML代码中获取vsprops文件的当前路径?
答案 0 :(得分:1)
您可以通过获取$(MSBuildThisFileDirectory)来获取当前VCPROPS文件的路径:
<PropertyGroup>
<MyProjectPath>$([System.IO.Path]::GetFullPath( "$(MSBuildThisFileDirectory)" ) )</MyProjectPath>
</PropertyGroup>
这个MSFT博客有很多关于这样做的信息/技巧 玩得开心!