簡體   English   中英

在Visual Studio構建中管理資源(圖像)的過程

[英]Procedure for managing resources (images) in Visual Studio build

我有一個供兩個客戶使用的軟件產品。 有一個代碼庫,唯一的不同是每個客戶在產品上都有他們的徽標。 我的問題是,什么是管理代碼庫的最佳方法,以便我可以輕松地為每個客戶構建項目,並且永遠不會使用錯誤的徽標?

我目前在目錄中都有兩個圖像,修改代碼以指向適合相應客戶的正確圖像,然后在VS中進行構建。 顯然不是很有效。

我想做的是在構建過程中具有某種價值,以便它知道要使用哪個圖像。 這樣,我不需要每次都進行構建時都在編輯代碼。 我確信這是可能的,但不確定如何去做。

任何建議或指示,將不勝感激。

謝謝,威爾

一種明顯的可能性是擁有兩種不同的構建配置,每種配置都指定一個不同的預處理器符號。 然后,您可以執行以下操作:

#if CUSTOMER1
   const string LogoResource = "customer1.jpg";
#elif CUSTOMER2
   const string LogoResource = "customer2.jpg";
#else
   #error Must specify CUSTOMER1 or CUSTOMER2
#endif

有點難看,但是可以用...

您可以將映像放置在單獨的(僅資源)dll中,例如,customer1.dll和customer2.dll(或者可以使用相同的名稱,這使得加載更加容易),並且僅將相應的dll發送給每個客戶。 在應用程序啟動時,從dll加載映像並使用它。 這使得系統相當可擴展。

也許從另一個角度看問題領域。

通常,您不想為每個客戶端重建項目-唯一的解決方法是在運行時動態加載圖像。

通常,我會在設置文件中指定圖像路徑用戶,然后在運行時加載圖像。 這樣可以避免任何復雜的構建設置等,並在客戶群持續增長的情況下為您帶來可擴展性的額外好處。

暫無
暫無

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

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