簡體   English   中英

將屬性更改應用於解決方案中的所有DLL項目

[英]Apply a property change to all DLL projects in a solution

我有一個包含大約150個項目的解決方案,其中包括靜態庫,動態庫和可執行文件,以及一些基於Makefile的項目(很好的解決方案),所以我有一個解決該問題的擴展版本。

我需要對所有EXE和DLL項目的鏈接器頁面進行更改(為Rational Purify的利益添加/FIXED:NO )。 有沒有辦法可以輕松地做到這一點,例如借助宏?

我將直接修改項目文件-畢竟它們是XML,您可以輕松地發現需要對它們進行哪些更改才能添加標志。 然后,您可以編寫一個Python腳本來修改所有項目文件。

您可以創建一個公共項目屬性,然后可以修改相關項目以繼承此公共屬性,因此當下次您只需要修改公共項目屬性時,繼承該項目的項目將自動同步新設置。 屬性表(C ++)

要使用“繼承的項目屬性表”屬性應用屬性表中定義的項目設置,請執行以下操作:

  1. 應用使用“繼承的項目屬性表”屬性的屬性表中定義的項目設置
  2. 在Visual Studio IDE中打開您的項目。
  3. 在解決方案資源管理器中,右鍵單擊項目的節點或將繼承項目配置的屬性頁。
  4. 在快捷菜單上,單擊“屬性”。 將顯示項目的屬性頁。 使用配置控件來指定要應用項目設置的項目配置。
  5. 在“常規”屬性頁的“繼承的項目屬性表”字段中,輸入包含要繼承的設置的屬性表的路徑。
  6. 單擊應用。

這正是屬性表設計的目的。 創建屬性表的層次結構,其中包含某些類型的項目共有的設置,然后使用屬性管理器將它們附加到相關項目(“查看”菜單->“屬性管理器”)。

例如:

  • All.props->所有項目通用的設置
  • Debug.props->僅調試版本通用的設置
  • Release.props->僅發布版本通用的設置
  • Static.props->設置僅對靜態庫項目通用
  • Dynamic.props->僅動態庫項目共有的設置
  • Executable.props->僅適用於可執行項目的設置

為了將屬性表添加到現有項目中,這需要少量的前期工作。 然后,每當您創建一個新項目時,您要做的就是附加相關的屬性表。 維護變得容易-更改設置並將更改應用到所有可執行項目,您只需更新屬性表Executable.props

注意:屬性表是根據它們在層次結構中的位置排序的,因此位於屬性表上方的設置將覆蓋列表下方的表中的相同設置。 這是一個很大的優勢-您可以將默認設置放在All.props (從上面的示例中),然后在更具體的屬性表中覆蓋設置。 如果您有一個具有自己唯一設置的一次性項目,則直接修改項目設置將覆蓋所有屬性表。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM