2010-06-09 43 views
3

我有一個vsprops文件,它定義了優化我們所有的項目都應該爲Visual Studio 2008構建。如果我將項目的屬性設置爲「從父項目默認值繼承」,它工作,並將其填充到vcproj文件中。但是,這並不能保護我免受開發人員檢查改變優化的項目文件的影響。在這種情況下,項目設置將用於vsprops設置。我需要使vsprops始終優先於vcproj文件中的內容。這可能嗎?其他解決方法也是受歡迎的。強制VSProps設置覆蓋項目設置

回答

2

Hmya,這不僅僅是Visual Studio的設計。它不受「老闆重載」開關的限制,它可以讓用戶不受限制地訪問配置設置。這對你來說應該是有意義的,開發人員可以用他的代碼比修補設置造成更多的損失。如果開發者故意改變優化設置,那肯定是因爲他分析了代碼並確定了更好的設置。

Anyhoo,Visual Studio不僅對開發者有用,它對你也很有用。編寫一個分析.vcproj文件的小工具,檢查優化設置是否被覆蓋。這是一個簡單的.xml文件,你需要大約5行代碼。在構建咕嚕聲的預生成事件中運行它,如果您認爲它不合適,則在構建失敗時運行它。然而,處理生氣的開發者不能自動處理。

+0

哈哈,問題在於人們開啓了他們不理解的優化(即可怕的遺漏幀指針優化) – Steve 2010-06-09 21:34:24

2

唯一的意見,我可以給的,如果你的項目開拓物業管理器,右擊配置文件夾中的一個,它應該彈出一個名爲項的菜單「Overidden屬性...」,這依次打開一個對話框,列出項目配置中設置的每個屬性,這些屬性會覆蓋屬性表屬性頁 - 以及選擇部分或全部屬性的工具,並刪除覆蓋項。