• <ruby id="5koa6"></ruby>
    <ruby id="5koa6"><option id="5koa6"><thead id="5koa6"></thead></option></ruby>

    <progress id="5koa6"></progress>

  • <strong id="5koa6"></strong>
  • 用VC++6.0漢化軟件

    發表于:2007-07-04來源:作者:點擊數: 標簽:
    南京海軍指揮學院 黃向明 大多數軟件的操作界面和信息都是寫在resource(資源)中的,所以,只要把exe文件或dll文件中的resource提取出來,就可以輕易地將信息翻譯成中文。而Vusial C++中的資源編輯器可以將一個已經編譯完成的exe文件或dll文件中的resource提
    南京海軍指揮學院 黃向明

      大多數軟件的操作界面和信息都是寫在resource(資源)中的,所以,只要把exe文件或dll文件中的resource提取出來,就可以輕易地將信息翻譯成中文。而Vusial C++中的資源編輯器可以將一個已經編譯完成的exe文件或dll文件中的resource提取出來進行編輯。如圖1所示,現在演示把這個英文項目漢化成圖2的過程。
    http://www.kjueaiud.com/uploads/2007/07/1_200707042008361.jpg (10230 字節)
    http://www.kjueaiud.com/uploads/2007/07/1_200707042008362.jpg (10634 字節)

      建立Demo項目

      單擊Visual C++File菜單中的New命令,選擇Project選項中的MFC AppWizard(exe)圖標,鍵入Demo作為項目名字。單擊OK運行AppWizard,創建Demo項目。當指定項目選項時,在AppWizard的步驟1中選擇Single Document按鈕,其余各步均采用默認設置項,產生如圖1的項目,現在對這個英文項目進行漢化處理。但處理前必須注意二個問題:

      1.Visual C++允許你在建立MFC AppWizard程序時選擇不同的語系。在使用遠東語系支持DLL時(日語、朝鮮語和中文),需要支持雙字節的操作系統。這些DLL在缺省安裝時并沒有安裝,需要你自己動手來安裝。這些文件在Visual C++光盤的\Bin\IDE目錄中(見下表):
    http://www.kjueaiud.com/uploads/2007/07/1_200707042008363.jpg (12791 字節) 

      例如,如果你想在你的軟件中支持中文,你可以把上面的appwzchs.dll復制到你安裝Vusial C++的目錄下相同路徑的地方。

      2.必須在WindowsNT下才可以將編輯過的resource存回到原本的exe文件(或dll文件)中,在Windows95中編輯過程一樣,但是無法存回去。

      提取resource

      首先,使用File>Open...打開要漢化的exe文件(或dll文件),必須注意的是Open as的地方要選擇Resources。

      打開之后,窗口中顯示的便是這個程序的resource,包括各種圖形使用界面的資源,其中需要編輯的是Dailog(對話框)、Menu(菜單)和String Table(字串表)。

      1.在開始翻譯以前,要先修改語系和編碼,否則翻譯過的中文字會變成亂碼。按一下Version項旁邊的加號,打開項會出現Version。

      鼠標雙擊1[English(U.S.)]打開Version的內容,雙擊BlockHeader的那一行,把LanguageID改為中文,CodePage確定是Unicode沒有錯,關閉對話框,再關閉Version內容窗口。

      2.接下來單擊1[English(U.S.)]讓它成為選取狀態,按鼠標右鍵,選擇Properties,然后把Language的地方設成Chinese(P.R.C)。

      以后每編輯一項,也都要做這個動作,把Properties里的Language設成Chinese(P.R.C)。但是在做這個動作以前,必須先雙擊該項目打開內容,然后關閉再來設定Properties,否則有時設定語系后便無法打開內容編輯。

      設定好后,就不會出現[English(U.S.)]的字樣。

      編輯Dailog

      按一下Dailog(對話框)項旁邊的加號,打開項會出現一系列的Dailog項目,每一個項目是一個對話框(對本例當然只有一個對話框)。

      在編輯以前你要先改變每一個對話框的語系,但在改變語系之前,必須先打開它(雙擊該項目)然后關閉,以避免改變語系后無法打開編輯。

      這么多對話框一個一個打開關閉非常麻煩,你可先選取全部的對話框項目,然后按下Enter,就可以一次打開全部的對話框內容。要一次全部關閉,選擇Vusial C++下拉菜單的Windows>Windows...它會列出所有的窗口,選擇所有剛剛打開的對話框窗口(字尾有[Dialog]字的),然后按下Close Window(s),就可以一次全部關閉。注意別把所有的窗口都關閉了。最后按下OK。

      在這些項目都還被選取的時候,按下鼠標右鍵,選擇Properties,然后把Language的地方設成Chinese(P.R.C)。就可以一次把所有的對話框的語系都改了。

      接下來要做的就是一個一個分別去修改對話框的內容(雙擊該項目打開內容),把信息翻譯成中文,再關閉。

      要編輯哪一個字串,就用鼠標雙擊它打開信息內容,然后把英文字串翻譯成中文。對英文字符前有&這個符號的,例如:&Help,在H前面有&,對話框會把H加上底線,表示這是一個快捷鍵。由于無法在中文字前加&,所以就把&Help翻譯成「幫助(&H)」,保留&H這個快捷鍵,若是Brow &ser...就翻譯成「瀏覽(&s)...」,以此類推??旖萱I不一定要有,有時為了美觀起見可以省略,若省略快捷鍵就無法用鍵盤操作程序,只能用鼠標。

      有一些比較特別的字串,例如:Static,看起來不像是信息的,就不要去翻譯或改變它,因為它很可能是程序中傳遞的參數或記號。有時字串長度可能太長或太短,以致于對話框位置不符合或不好看,為了美觀起見,你可以自行調整位置或大小??傊?,你此時可根據常規習慣自由發揮。

      編輯Menu

      編輯Menu(菜單)跟編輯Dialog的方法很類似,按一下Menu項旁邊的加號,打開項會出現一系列的Menu項目,每一個項目是一個菜單。

      在編輯之前也是一樣要修改語系,修改語系的方式跟Dialog是一樣的,一個一個修改嫌麻煩,也可以整批一起修改。

      雙擊一項菜單的項目,打開菜單內容開始編輯翻譯,要翻譯哪一個字串就雙擊哪一個字串。菜單一定都有快捷鍵,最好全部保留。

      字串中有一些特殊符號,例如:t(Tab)、\n(換行),就把它保留下來,翻譯信息的部分力求和原本的程序一模一樣。

      翻譯String Table

      最后就是要翻譯String Table(字串表)了,這里要翻譯的東西最多。按一下String Table項旁邊的加號,打開項會出現String Table,通常只會有一個項目。在翻譯前要先修改語系。

      還是一樣,要翻譯那哪一個字串就雙擊哪一個字串??旖萱I、特殊符號、參數字串最好都完整的保留下來。

      全部都翻譯完成后,按下存盤的圖標就可以將翻譯完成的resource存回到程序中,你再去執行那個程序,會出現圖2樣式?!?/p>

    原文轉自:http://www.kjueaiud.com

    老湿亚洲永久精品ww47香蕉图片_日韩欧美中文字幕北美法律_国产AV永久无码天堂影院_久久婷婷综合色丁香五月

  • <ruby id="5koa6"></ruby>
    <ruby id="5koa6"><option id="5koa6"><thead id="5koa6"></thead></option></ruby>

    <progress id="5koa6"></progress>

  • <strong id="5koa6"></strong>