共用方式為


屬性頁 (C++)

更新:2007 年 11 月

專案屬性頁是 Visual Studio 的使用者介面項目,可讓您指定專案設定並套用到專案中。

您只要選取專案,然後在快速鍵功能表上按一下 [屬性],或按一下 [專案] 功能表上的 [屬性],即可存取屬性頁。當您在 [屬性頁] 對話方塊中指定值時,這些值會套用到 [方案總管] 中選取的一或多個專案。

您可以指定專案設定並套用到所有建置組態,或為每個建置組態指定不同的專案屬性。例如,您可以指定發行組態的設定,但這些設定不套用到偵錯組態。

屬性頁是動態的,顯示的頁面視專案中的檔案類型而定。比方說,如果專案中沒有 .idl 檔,則 [屬性頁] 對話方塊中不會顯示 IDL 屬性頁。

如需詳細資訊,請參閱 HOW TO:使用屬性頁指定專案屬性

預設屬性與修改屬性的比較

某些屬性值會以粗體顯示,表示該值已變更。當在 [方案總管] 中選取專案節點時,專案層次屬性的預設值通常是工具同一屬性的預設值。例如,在編譯器的 [程式碼產生] 屬性頁上的 Win32 專案中,[啟用字串共用] 屬性一開始是設定為 [No] (非粗體)。這表示 [No] 與專案的預設值相符。如果要在命令列使用 CL.exe,那麼您必須另外指定它,否則 /GF 不會生效。

如果您或應用程式精靈變更屬性,則值就會以粗體顯示。例如,在同樣的 [程式碼產生] 屬性頁上,[完整執行階段檢查] 屬性中的 /RTC1 是有效的。/RTC1 依預設在命令列是不生效的;在這種情況下,應用程式精靈就為屬性變更專案的預設值。

專案預設值的子集會公開 (Expose),而且可供您修改。如需詳細資訊,請參閱一般屬性頁 (專案) 中的<專案預設值>一節。

重設屬性

當您檢視專案的 [屬性頁] 對話方塊,而在 [方案總管] 中選取的是專案節點時,對於每一個屬性,您也可以選擇是否要選取 [<從專案預設繼承>]。

當您將屬性重設為專案的預設值時,請按一下 [套用],確定將 [屬性頁] 對話方塊重新整理為您所做的最新選擇。

當您檢視專案的 [屬性頁] 對話方塊,而在 [方案總管] 中選取的是檔案時,以粗體顯示的屬性值表示檔案層次的屬性值已變更。因此,您也可為每個屬性選擇是否要選取 [<從專案繼承>]。如果許多檔案都有修改的屬性,則建置專案的時間將會增加。

在大部分的情況下,專案預設值為系統 (平台) 預設值。當您在一般專案設定頁的專案預設值區段中更新屬性時,某些專案的預設值會自套用的樣式表中衍生 (請參閱一般屬性頁 (專案))。

輸入使用者定義值

其他屬性需要您指定屬性值。這些屬性中,有些接受一或多個值 (多重屬性),而另外一些屬性則只接受一個值 (單一屬性)。

您可在屬性頁的最右欄直接輸入值。用分號來隔開值。這些屬性只接受字母和數字字元。這些值將不會執行錯誤檢查。

您也可以從下拉式清單 (為單一屬性) 或瀏覽按鈕 (為選取的多重屬性) 選取 [編輯…]。這樣會開啟一個對話方塊,您可以在此輸入該屬性的一或多個值。這個對話方塊的標題會和您正在編輯的屬性名稱相同。對於多重屬性,請一行輸入一個值,並在每個值之後使用歸位字元 (Carriage Return)。

多重屬性的編輯方塊將會具有標示為 [從專案繼承] (針對檔案) 或 [從專案預設繼承] (於專案層次) 的核取方塊。這個核取方塊依預設是選取的,表示如果在 [方案總管] 中選取檔案,屬性就可從專案繼承值,或如果選取專案,則可從專案預設值繼承值。

請注意,在屬性頁對話方塊中的多重屬性顯示值,只會反映目前層次的屬性設定。比方說,如果在 [方案總管] 中選取一個檔案,而同時又選取了 C/C++ [前置處理器定義] 屬性,則屬性頁將不會顯示專案層次的任何前置處理器定義。然而,如果您開啟多重屬性的編輯方塊,即可看見該屬性的所有繼承值。

如果您使用 Visual C++ 專案模型,請注意這個行為對檔案和專案中的物件也會產生效用。也就是說,當您在檔案層次查詢屬性值時,將不會取得專案層次上相同屬性的值,您必須要明確地取得專案層次的屬性值。請注意,某些屬性的繼承值可能來自樣式表,在此發行版本是無法以程式設計加以存取。

$(Inherit) 和 $(NoInherit) 巨集

請注意,您可在設定使用者定義的屬性上使用兩種巨集

  • $(Inherit)

  • $(NoInherit)

清除核取方塊 (例如 [從專案預設繼承]) 的效果就和指定 $(NoInherit) 一樣;使用核取方塊會比較簡單些。如果您指定 $(NoInherit),您可能需要指定自己的值。

無論 [從專案繼承] (或 [從專案預設繼承]) 核取方塊的設定為何,如果您在編輯方塊中使用任一巨集,核取方塊的設定就會被忽略。

如果您在屬性上使用 $(NoInherit),則請注意任一專案預設值是否會影響屬性。如果是的話,您可能會不小心覆寫您所指定的專案預設值。

請參閱

工作

HOW TO:建立和移除專案相依性

HOW TO:建立和編輯組態

其他資源

Windows Installer 部署工作

Visual Studio 的原始檔控制