糯米文學吧

位置:首頁 > 計算機 > 操作系統

淺談DOS軟件的漢化

導語:近年來新推出的各類DOS軟件很多,但由於絕大多數DOS新軟件都是英文的,不符合絕大多數國人的習慣,我覺得要做到推廣新DOS軟件,少不了經過漢化這一環。下面就由小編為大家介紹一下淺談DOS軟件的漢化,大家一起去看看吧!

淺談DOS軟件的漢化

DOS下的軟件漢化與WINDOWS9X的不同,WIN9X的軟件其文字信息多數使用資源(我實際上不懂EXE文件格式,所以不作準確描述)存放,可以用 專門修改文件資源的軟件如EXESCOPE等找出來漢化。DOS中的文字信息分散在EXE文件各處,要修改起來相對困難得多,當然FOXPRO例外,在 RICHWIN某些版本中有一個漢化了的FOXPRO菜單,可以用它輕易將FOXPRO的菜單漢化。

要漢化DOS軟件,最簡單的方法當然是在UCDOS/CCDOS等漢字系統下,用PCTOOLS等的十六進制編輯功能將英文信息逐個修改,然而工作量也最大,效率則最低。

當然DOS下也有東方快車等自動漢化軟件,不過它漢化出來的意思往往難以做到準確,有時用這些軟件漢化出來的還不如使用原來的英文軟件方便,在這方面我也沒有多作嘗試。

還有一種方法是使用文字信息提取軟件,將一定長度的文本信息和位置信息從EXE文件中提取出來,成為一個TXT文件,對這個TXT文件進行修改後,再按照位置寫回去,這裏要注意的是修改後的漢字字符串長度不得長於原來英文字符串的長度。

我這裏主要介紹第三種方法,也推薦想進行漢化的朋友使用,這也可當成一種學習英文單詞的`途徑。我使用的文字提取軟件是龔成兵的Editor 2.0(注:可在本站的“中文工具”中下載),用法很簡單,如edit2 /s:4 就可將中不短於4個字節的文字全部提取出來,存成文件,用我們熟悉的編輯器進行編輯。文件裏面是類似下面的字 符串:

*0000790A 0009┃Unable to┃

……

前面是提取的文字在EXE文件中的位置和長度,不要修改。*號表示略過,不將修改後的文字寫回,所以如果要將修改後的文字寫入就必須去掉*號。

後面夾在在表格符間的英文就提取出來的字符串,最好在CCED(或CCDOS97的ED,或CXDOS中自帶的CXED)中並在表格鎖定狀態下進行修改, 這樣就不用擔心修改後漢字的長度會長過原來的英文了。漢化時不妨加載希望辭海或譯林英漢詞典等,隨時查閲不認識的單詞。

修改之後,可以用edit2 /r 將漢化後的信息寫回去,然後在漢字系統中運行NDD測試效果,如果要作修改只需再修改就可以了。

  再補充幾點細節問題:

1、提取出來的文本經常有%a,%d,%C之類的文字,這是程序要顯示的變量,不要將它們修改。

2、DOS早期的漢化比較困難,主要是因為早期的漢字系統不支持直接寫屏,需要漢化者精通匯編語言並修改顯示方式。現在的漢字系統可以支持絕大部分的英文軟件,只需直接翻譯即可,所以任何人都可以進行漢化工作。

3、漢化前最好先運行該軟件一次,確信其可以在漢字系統中正常運行。這主要是少數英文圖形軟件和HD-COPY等與部分漢字系統爭奪時鐘中斷的軟件會引起麻煩。

有部分DOS軟件使用了PKLITE等軟件壓縮,這時需要用UNP等先將它們解壓縮,然後才進行文字提取工作。

希望有更多的朋友加入漢化行列(我正在抽空漢化NORTON 2002中的NDD FOR DOS),使有更多的優秀DOS軟件給國人使用。

標籤:淺談 DOS 漢化 軟件