程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> C語言 >> VC >> 關於VC++ >> VC在一個工程中實現多語言版本

VC在一個工程中實現多語言版本

編輯:關於VC++

前段時間筆者因為做一個程序,客戶要求要有中英文版本,開始以為要做二個工程,只是資源文件不同,但是發現這樣一個工程更新另外一個也要更新,實在是很麻煩 ,後來經過網上查找資料與自己親身實驗,發現其實只要在一個工程中就可以實現。但是這個工程中要有兩個資源文件,當編譯不同版本時,程序可以自動鏈接不同資源文件 。下面把具體的方法寫出來。供大家參考一下。

第一步、創建中英文版本資源文件

我們先創建第一個中文版本工程,假設工程名稱為 Example,在向導第一步的“What language would you like you resource in” 選擇中文 (如下圖),其它使用缺省值。

然後在工程中把 Example.rc 刪除,這裡雖然刪除了文件,但實際上在工程文件目錄文件還是存在的。進入工程目錄下把資源文件名改成Example_Ch.rc,再在 VC 編譯器中加入 Example_Ch.rc 文件 ,關閉工程。

然後再創建一個同名的英文版本工程。也就是在選擇資源語言時選擇英語(可以保存在不同的目錄下)

創建完後,把英文版本目錄下的 Example.rc 文件拷貝到中文工程的目錄下,其實我們就只是要這個資源文件。並把名稱改為 Example_En.rc。

第二步、在工程中設置版本信息

打開中文件工程,把英文資源文件添加進工程,在添加時會有提示出現,不要理會,按確認就行。

選擇菜單 Build->Configurations,增加一個工程配置,在Configuration中輸入 Debug English 在 Copy Setting from 中選擇 Debug 就可以(見下圖),使用相同的方法,再增加一個 Debug Chinese 配置,並把原來的 Debug 刪除。

第三步、設置工程信息

選擇菜單 Project->Settings,在左邊的 Setting For 中選擇 Debug Chinese 在 Generatl 屬性頁的 Intermediate files 中輸入 Debug Chinese,在 Output files 中輸入 Chinese。在 Resource 屬性頁的 Resource file name 中輸入 Debug Chinese/Example_Ch.res,(見下圖)其它缺省就行。

用同樣的方法在來設置英文版本信息。在左邊的 Setting For 中選擇 Debug Enghlis 在 Generatl 屬性頁的 Intermediate files 中輸入 Debug Enghlis,在 Output files 中輸入 Enghlis。在 Resource 屬性頁的 Resource file name中輸入 Debug English/Example_En.res,其它缺省就行。

本程序在 WIN2000+VC6。0環境下通過。

第四步、修改 DSP 文件,用記事本打開工程下的 Example。dsp 文件

找到如下行:

SOURCE=.\Example_ch.rc
# End Source File
# Begin Source File
SOURCE=.\Example_en.rc
# PROP Exclude_From_Build 1
# End Source File
# Begin Source File

在SOURCE=.\Example_ch.rc行後面加入下面代碼

SOURCE=.\Example_ch.rc
!IF "$(CFG)" == "Example - Win32 Debug English"
# PROP Exclude_From_Build 1
!ELSEIF "$(CFG)" == "Example - Win32 Debug Chinese"
!ENDIF

在SOURCE=.\Example_en.rc行後面加入下面代碼:

!IF "$(CFG)" == "Example - Win32 Debug English"
!ELSEIF "$(CFG)" == "Example - Win32 Debug Chinese"

第五步、現在打開工程,按照不同的要求編譯不同版本就行了,比如這個時候我們要英文版本

在編譯時選擇 Builder->Set Active configuration 中選擇 Win32 Debug English 即可,如果要中文版本 , 在編譯時選擇 Builder->Set Active configuration 中選擇 Win32 Debug Chinese 即可。

結論

如果以後要添加資源,只要在 Resourch。h 文件中定義資源號,然後在中英文資源文件中添加相應的資源串就行,當然這個時候不能直接在工作區的 Resourc 中添加 ,而要用記事本等工具打開資源文件再添加喲。

本程序在Win2000,VC++6.0英文版本下編譯通過。

作者信息:

朱勤武

聯絡電話:057783122865

電子信箱:qingwuzhu@163。net

通訊地址:廣東省深圳市福田區上梅新村 159 棟 703

郵編:518049

本文配套源碼

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved