我正在查看VS2013中的一些宏,并注意到有些人使用的东西看起来像注册表中的powershell语法调用(少了宏$(VCTargetsPath)
和$(MSBuildExtensionsPath32)
)。
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSBuild\ToolsVersions\12.0\12.0
VCTargetsPath REG_SZ $([MSBuild]::ValueOrDefault('$(VCTargetsPath)','$(MSBuildExtensionsPath32)\Microsoft.Cpp\v4.0\V120\'))
我尝试执行它,但powershell似乎并不理解[MSBuild]
类型。
如果不解析和翻译它看起来显然在做什么,我怎么能轻易地解释这个?
我的目标是解析.vcxproj
文件并从中提取信息。这要求我评估Condition
标记属性,这又要求我扩展和评估它们。如果我走错了路,你知道如何做到这一点,那么请指出我正确的方向。