Make your own free website on Tripod.com



ASCII 字串修改 (二)


接下來介紹較特殊的 ASCII 修改法以及調整之例子。這類多半出現在同一則訊息由多個小段組合而成的情況下。

底下則是由 Delphi 撰寫的情況。




上例因為翻譯後句子較短,所以一般後面以空白 (20) 補齊,於是變成如此。假如以 00 置換的話,「您的電腦剩餘 」之後的訊息會全部不見,也就是程式會將 00 視為訊息結束,當然就不能用一般補 00 的方式。

當您用 16Bit 編輯器開啟 Delphi、C++ Builder 這類撰寫的檔案,會發現每個訊息前面有四個 FF 區隔,後面再接四個長度指標,長度指標是以 16 進制表示。「Your computer has 」含空白共 18 個字,18 換算為 16 進制即 12。所以指標第一組為 12,這樣一來中文化後只要再修改該指標即可調整長度。




「您的電腦剩餘 」含空白共 13 個字,13 換算為 16 進制即 0D。所以改成如下所示,其餘的依法泡製。


完成後測試正常,如下圖。

∼如塵∼

回索引