2013-04-30 169 views
2

我寫了一個名爲MyLib中與MyLib中\樣本\一些Visual Studio項目庫和包括文件駐留於MyLib中\ INC。爲了使這些包含文件可以在項目中訪問,我需要將它們的路徑添加到項目屬性中。如何在Visual Studio 2010中設置相對包含路徑?

我想使用相對路徑,這樣我不需要每次我將整個庫文件夾到其他地方時更改屬性。但相對路徑是什麼樣的?例如,其中一個項目路徑是:... \ MyLib \ Samples \ proj1,我如何表示相對於項目路徑的... \ MyLib \ inc?

+1

這可能是過時的,但你可以創建一個定義的SUBST命令映射爲.bat文件。例如S:\ Sources將映射到給定系統上的文件夾C:\ xxx \ xxx \ Sources文件夾。不確定它會在你的解決方案中工作。但是,無論環境如何,您都可以使用s:\ Sources。 – 2013-04-30 03:57:06

+0

是的,這是構建系統的基本特徵,而MSVS似乎沒有一個好方法。我希望有人發現這一點,並給我們一個體面的答案! – 2013-10-29 20:11:02

回答

7

使用the $(SolutionDir) or $(ProjectDir) MSBuild properties根的路徑。這些在生成時分別替換爲解決方案和項目所在的目錄。

+0

對於這個問題,這真的不起作用(據我所知)。用例是當一個項目使用一個庫,並且你希望庫的客戶端繼承庫中的include路徑時。 $(SolutionDir)和$(ProjectDir)將是相對於庫的客戶端而不是庫的路徑。 – 2013-10-29 20:13:02

+0

這裏最好的做法是不要在這種情況下使用相對路徑。我曾經使用過相關路徑的代碼庫,後來將相對路徑項目導出爲用於外部使用的庫引發了絕對地獄 - 爲每個項目$(ProjectDir)字段提供了額外的包含屬性。不太好。 – lukemtesta 2016-12-13 17:01:47

1

你在找什麼是自定義屬性爲您的項目。

Visual Studio中具有規定custom properties支持,您可以在宏展開在你的包含路徑,例如隨後使用。

下面是它看起來像一個例子: enter image description here

相關問題