軟體中文化工具 Chation 1.3 ========================== chation.exe 主程式 Chation 1.3 Copyright (c) Jul 1997 Henry Pan (pank) itct.exe 抓字串工具 Intercepter 1.1 Copyright (c) 1997 Yuerui Guo (X'Bug) csort.exe 字典檔排序工具 CSort 1.0 Copyright (c) 1997 Yuerui Guo (X'Bug) readme.txt 本說明檔 peek11.zip 抓字串工具 Copyright 1996 by Martin Lubich 用 Chation 中文化軟體步驟. (特別感謝 X'bug 提供 itct, csort 及其說明) 1. 確定欲中文化軟體是 Unicode base, 用十六進位編輯器觀看 *.exe *.dll, 若發現英文字串每個字元間都有 ASCII 0, 就表示這是 Unicode base 軟體, 如 File (46 00 69 00 6C 00 65 00). 因 Chation 是針對 Unicode base 而寫的, 所以只能中文化Unicode base 軟體, 現在新推出的軟體幾乎都是 Unicode base, 32bit 的程式有九成是. 先解釋一下 Unicode Unicode 好是未來的趨勢(Unicode 的本意就是國際碼), 據我所知, NetTerm, UltraEdit, Eudora,PSP 等都是用 Unicode,它是以兩個 byte 來表示一個字 (一個英文字母也要兩個 byte), 如 "File" 的 Unicode 是 46 00 69 00 6C 00 65 00 "檔案" 的 Unicode 是 94 6A 48 68 (和 Big5 C0 C9 AE D7 完全 不同) 可在用 BIG5 to Unicode table 對照表來換算, 可以在這兒找到 ftp://unicode.org/pub/UNIX/MAPPINGS/EASTASIA/OTHER/BIG5.TXT big5-uni.tab 就是從這來的. 2. 編寫字典檔, 第一行為說明, 每行前加 ; 或 REM 是說明, 該行會省略. 如: Eudora Pro 3.0.3 中譯字典檔 &File 檔案(&F) ;-------------------- &New Text File 開新檔案(&N) &Open Text File 開啟舊檔(&O) Open A&ttachment 開啟附加檔案(&T) &Close 關閉(&C) 現在可以 ITCT 或 PEEK 輔助就方便多了 ITCT 使用方法: ITCT (要搜尋的檔案名稱) (字典檔檔名) [最小字串長度] 參數說明: (要搜尋的檔案名稱) --> 也就是您想中文化的軟體檔名 (可能是 *.EXE OR *.DLL) (字典檔檔名) --> 存放 ITCT 搜尋到的 Unicode base code, 如果字典檔已經存在, 則會將已經存在的檔案覆蓋。 [最小字串長度] --> 此參數可以不輸入, 內定值=4 這用來設定搜尋字串的長度, 如果 ITCT 搜尋到字 串長度小於[最小字串長度], 則不會存入字典檔。 以上面的字典檔來說, 如果當初在執行 ITCT 時, [最小字串長度]設為 6, 則&File不會出現在字檔中, 如果[最小字串長度]設為 4, 則&File會出現!! (&File 一共是 5 個字元, 也就是說字串長度是 5) 例如: ITCT AGENT.EXE AGENT.LST 例如: ITCT AGENT.EXE AGENT.LST 20 PEEK 的安裝方法及使用方法 解開 PEEK11.ZIP 得 peek.dll, peek.inf, readme.txt 選定 peek.inf , 按右鍵, 安裝. 安裝後選定任何檔案按右鍵會多出一個 peek 的功能, 詳細用法請參閱 readme.txt 3. 編修字典檔, 建立中英文對照表。 我們可以將上面的字典檔可改成下面的樣子: ----- agent.exe 中文化字典檔!! ----- ;--------------- <--- 說明 &File <--- 搜尋到的英文 &F檔案 <--- 中文意思 ;--------------- <--- 說明 &Print <--- 搜尋到的英文 &P印列 <--- 中文意思 ;--------------- <--- 說明 ...... ..略.. ....... 字典檔第 1 行是說明, 系統不處理該行, 可以修改, 但必須保留第 1 行。 碰到 ';' 或是 'REM ' 開頭是說明, 系統不處理。 字串中碰到 '&' 符號的下一個字元是熱鍵代表熱鍵。 以 &File 來講, 其熱鍵就是 (Alt-F)。 在編寫中文意思時要注意長度不可超英文字串的長度, 以 '&File' 來說, 字串長度=5 : 如果將中文寫成 '&F檔案' 字串長度=4, 可以成功中文化。 如果將中文寫成 '(&F)檔案' 則字串長度=6, 超過原來的字串長, 則最後一個字 '案' 不會出現, 中文化之後只會出現 '(&F)檔'。 要注意的是, 在字典檔中是有大小寫之分的, 也就是說: (1)'&File' (2)'&FILE' (3)'Fi&le' (4)'File' (5)'FILE' 是不一樣的。 5. 如果您覺得有需要, 可以使用 CSORT.EXE 將字典檔做排序。 將字典檔做排序有兩個好處, 那就是可以將相同長度的字串集中在一處, 相方您將相同的字串刪除。也可以去掉搶換的問題。 不過, 將字典檔做排序, 也有一個壞處, 那就是利用ITCT做的字典檔, 其英文之間大多都有上下關連性, 將字典檔排序之後, 其關連性消失, 在將英文翻譯成中文時, 可能比較不好翻。 [用法] CSORT [字典檔] [排序後的字典檔] 4. 最後執行 Chatoin 作轉換動作(本版有明顯改善, 執行速度約為舊版的十倍) 語法如下: Chation [字典檔] [要修改的檔] 執行時 big5-uni.tab(轉碼對照表) 要放在同一個目錄. 如 Chation acdsee32.dic acdsee32.exe 執行完後全產生兩個記錄檔 ch_mdf.log, Chation 所變更地方的記錄檔 ch_nmdf.log, Chation 找不到字典檔中的字串記錄檔 可善用這兩個記錄檔將字典檔作進一步修正. 5. 最後手動修改因字串不足而造成的問題(如缺右括號等) 用 UltraEdit 等 Hex Editor 編輯, 找到要插入字串的地方, 可參考 ch_mdf.log 記錄檔, 插入字串後, 要以後面多餘的空白 (20 00) 來補, 如: &File 檔案(&F) &New File 開新檔案 以上檔案會少掉右括號,可以插入括號, 把下一個字串右邊的空白拿來補. 簡單的說, 就是要維持字串和字串間的控制碼和空碼(0), 字串長度可變, 但要維持原檔案大小. 版權宣告 ======== Chation 1.3 為 freeware, 版權為潘昌宏所有 版本演進 ======== 97.7.14 Chatoin 1.3 □以前的版本搜尋採用不佳的方法, 導致速度很慢, 本版程式碼重新編寫, 速度實測約為 Chation 1.2 的十倍 □隨附 PEEK 1.1 可同時抓取程式裡的 ASCII & UNICODE 字串 □修正字典檔一點小小的錯誤(字元︼) 感謝 駱駝客 提供 PEEK 1.1 及 告知字典檔(字元︼)錯誤。 97.5.1 Chation 1.2 □加入完整的 BIG5-Unicode 對照表, 包含所有特殊符號。 對照表更名為 big5-uni.tab。 □執行狀態只秀出原英文字串, 以避免不必要的動作。 □加入 ITCT 及 CSORT ITCT 從程式中抓字串製作字典檔 CSORT 把字典檔排序, 以避免搶換情形 感謝作者 X'bug □增加未修改記錄檔 ch_nmdf.log (Chation not modified) 原先記錄檔 modified.txt 更名 ch_mdf.log (Chation modified) 97.4.7 Chation 1.1 □修正本來為了加快速度, 把檔頭及檔尾跳過, 而導致 某些比較小的程式抓不到字串, 現修正為檔頭跳 10240 bytes, 檔尾 512 bytes 不會執行 □畫面作了些小更動 97.4.3 Chation 1.0 □初版, 於本日發表 97.3 Chation 1.0 Beta ? 作者 ==== 潘昌宏 mailto:pank@ms12.hinet.net http://140.134.120.40/~pank