共用方式為


使用多重平台上的資源

更新:2007 年 11 月

Visual Studio 讓您能夠擁有以多重平台 (例如 Pocket PC 和 Smartphone) 為目標的單一裝置專案。因為平台之間使用者介面 (UI) 有所差異,所以專案中每一個平台都需要有自己的資源指令碼 (.rc) 檔案。

多個資源檔

有兩種方法可以設定裝置專案以多種平台做為目標:

  • 在建立專案時使用應用程式精靈

  • 在專案建立之後

如果您在專案應用程式精靈的 [平台] 頁面上選取多重平台,便會針對每種平台產生及設定資源檔。舉例來說,如果您選取 Pocket PC 和 Smartphone 為目標平台,Smartphone 平台的組建就會排除 Pocket PC 的資源檔,Pocket PC 平台的組建也會排除 Smartphone 的資源檔。

然而,如果您在專案建立後加入平台,則會需要手動加入平台和資源檔。

加入新平台

若要加入新平台

  1. 按一下 [建置] 功能表上的組態管理員

  2. 在 [使用中的方案平台] 方塊中,按一下 [<新增...>]。

  3. 選取您要加入專案中的平台,並選取想要複製其設定的平台,然後按一下 [確定]。

    注意事項:

    如果您複製的是 [<預設>] 的設定,則該平台的專案屬性會是空的 (尚未進行任何設定),建議您從類似的平台複製設定,然後再依需要變更專案屬性。例如,如果要加入 Smartphone 平台,可以複製 Pocket PC 平台的設定。

  4. 按一下 [關閉]。

加入新的資源檔

現在您已經擁有新平台,您必須加入該平台的資源檔。

若要加入新平台的資源檔

  1. 在 [專案] 功能表上,按一下 [加入新項目]。

  2. 在 [加入新項目] 對話方塊中,按一下 [資源],然後在 [範本] 窗格中按一下 [資源檔 (.rc)]。

  3. 在 [名稱] 方塊中,輸入檔案的名稱,然後按一下 [加入]。

專案中會加入相對應於新資源指令碼檔案 (.rc) 的標頭檔 (.h)。

從組建中排除資源檔

當您針對某目標平台建置專案時,並不需要包含其他平台的資源檔,所以您可以從目標平台的組建中排除不需要的檔案。

若要從組建中排除資源檔

  1. 以滑鼠右鍵按一下資源指令碼檔案 (.rc),然後按一下 [屬性]。

  2. 在 [平台] 方塊中,選取清單中的第一個平台。

  3. 在 [一般] 屬性頁上,如果在建置所選平台的專案時,您不想加入這個 .rc 檔案,請選取 [從組建排除] 方塊中的 [是]。

  4. 請重複前一個步驟,設定每一個平台的組態,確認只排除了不屬於目前所選平台的資源檔。

  5. 針對專案中的每一個 .rc 檔案重複先前的所有步驟 (1-4)。

在 [方案總管] 中,您會發現到從目前所選平台的組建中排除的每一個檔案,它們的圖示上都會有一個紅色標記。

變更新平台組態的專案屬性

您已設定了平台的資源檔,現在,必須確定新平台組態的專案屬性是正確的。如果您複製類似平台的設定,那麼要變更的設定可能並不多,但如果您選取了 [<預設>],就必須手動加入所有設定。舉例來說,假設您在專案中加入了 [Smartphone 2003 (ARMV4)] 新平台,然後複製 [Pocket PC 2003 (ARMV4)] 平台的設定。

若要變更專案屬性

  1. 在 [專案] 功能表上,按一下 [屬性]。

  2. 展開 [C/C++] 節點,然後按一下 [前置處理器]。

  3. 在 [前置處理器定義] 方塊中,將 [POCKETPC2003_UI_MODEL] 改成 [SMARTPHONE2003_UI_MODEL],然後按一下 [確定]。

    注意事項:

    如果您加入的是不同平台,或者複製的是不同平台的設定,可能需要變更比較多的設定。

將 #ifdef 指示詞加入至標頭檔

專案中的主標頭檔必須檢查您在先前程序中所設定的 UI 模型前置處理器定義,並只包含相對應的資源檔。

若要將 #ifdef 指示詞加入至標頭檔

  1. 開啟 ProjectName.h。

  2. 在原來平台 UI 模型的 #ifdef 後面,加入下列程式碼:

    #ifdef SMARTPHONE2003_UI_MODEL
       #include "ResourceFileName.h"
    #endif
    

請參閱

其他資源

裝置專案的資源編輯器