![](/img/trans.png)
[英]How do I find the AdditionalIncludeDirectories in a Microsoft.Build.Evaluation.Project object?
[英]%(AdditionalIncludeDirectories) meaning
認為這將是相當簡單但不知何故我找不到關於此的參考。
在MSVC Include目錄中,有一個Additional Include Directories設置。 設置如下
.. \\ PROJECT1; %(AdditionalIncludeDirectories)
理解第一部分是程序搜索附加程序頭包含的路徑。 那么“%(AdditionalIncludeDirectories)”怎么樣? 這是什么意思?
它似乎不是一個宏,我理解的是以“$”為首,例如$ MACRO
謝謝
在使用項目屬性的文檔中有一個關於“項宏”的部分:
語法為%(name) 。 對於文件,項宏僅適用於該文件 - 例如,您可以使用%(AdditionalIncludeDirectories)指定僅適用於特定文件的包含目錄。 這種項宏對應於MSBuild中的ItemGroup元數據。 當它在項目配置的上下文中使用時,項宏將應用於特定類型的所有文件。 例如,C / C ++ 預處理器定義配置屬性可以采用%(PreprocessorDefinitions)項宏,該宏適用於項目中的所有.cpp文件。 這種項宏對應於MSBuild中的ItemDefinitionGroup元數據。 有關更多信息,請參閱項目定義 。
我在一個前開發人員接管的項目中遇到了完全相同的問題:他的附加包含目錄是C:\\Users\\t-tshmit\\Downloads\\DirectXTK;$(ProjectDir);$(IntermediateOutputPath);%(AdditionalIncludeDirectories)
奇怪的是, %(AdditionalIncludeDirectories)
元素不包含在編輯框中
環顧網絡我找不到這個,但它顯然是一個正在使用的模式,例如http://www.steptools.com/support/stdev_docs/help/settings_vc10.html中使用的屏幕截圖可能包含%(AdditionalIncludeDirectories)
元素。
Additional Include Directories編譯器選項和AdditionalIncludeDirectories VCCL編譯器工具屬性的文檔不包含此%(NAME)
模式。
它們被稱為“項目元數據宏”。
在Visual Studio 2008和Visual Studio 2010之間,C ++的構建系統發生了顯着變化。早期項目類型中使用的許多宏已更改為新的宏。 這些宏不再使用或已被一個或多個等效屬性或項元數據宏(%(名稱))值替換。 標記為“已遷移”的宏可以由項目遷移工具更新。 如果包含宏的項目從Visual Studio 2008或更早版本遷移到Visual Studio 2010,則Visual Studio會將宏轉換為等效的當前宏。 更高版本的Visual Studio無法將項目從Visual Studio 2008及更早版本轉換為新項目類型。 您必須分兩步轉換這些項目; 首先將它們轉換為Visual Studio 2010,然后將結果轉換為較新版本的Visual Studio。 有關更多信息,請參閱潛在升級問題概述。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.