數碼中文坊

 取回密碼
 我要註冊
檢視: 9391|回覆: 7

[已解決] 有關ASCII字串修改的問題

[複製連結]
發表於 2007-10-1 12:25:18 | 顯示全部樓層 |閱讀模式

馬上註冊,結交更多好友,享用更多功能,讓你輕鬆瀏覽論壇。

你需要 登入 才可以下載或檢視,沒有帳號?我要註冊

x

大家好!

晚輩算是業餘的中文化作者,(因為偶而才因自己的需求才做的)

但是很少修改ASCII字串,

所以比較沒有碰到這些問題。

 

因為正好想使用某些軟體如BinPatch,

因此才著手修改字串成為個人特別風格。

 

但是卻碰上不少技術上的問題,

也在網路上搜尋了不少前人經驗,

可是一直無解(因為不具有程式設計的背景),

無耐只好買了范大師的著作,

雖然部份修改字串成功了,(比如:&Apple ==> 套用(&A))

但是還是有許多問題,

如斷行、空白、…等。

 

然而因為偏移量轉換器在xp下無法執行,

只好用 Plus 1.05版內建的偏移量轉換器,

但它是試用版的…所以在修改時相當大的不便(但又比在UltraEDIT下改方便多了),

不知有誰知道它的購買方式嗎?

 

另外請問范大師您問前是使用那一種程式Patch製作呢?

雖然目前大家的頻寬都一個比一個來的大,

但是晚輩還是希望能做出輕巧的Patch,

所以才會打 BinPatch 的主意,

可是卻一直找不到那邊買的到?

 

PatchMarker 做出來的 Patch 也相當的小巧,

可是無法自動產生備份,所以也不太理想,

不知有沒有更好用的工具呢?

 

另外VC++ 2005 免費版的好像無法修改是嗎?@@?

所以只好用 Sisulizer 了…(之前是用exespoce)。

 

以上望前輩前指導。謝謝!^_^

 

發表於 2007-10-1 17:05:47 | 顯示全部樓層

偏移量轉換器在 XP 下是可以執行的,至少我用起來沒有問題。版本是0.94B。真的不行的話,設定一下相容性模式為 98 或 2000 試試。斷行及空白等 ASCII 字串,書中有提及,使用 0D0A 及 20。

 

至於 BinPatch 及梁利峰開發的那些軟體,註冊網頁都已失效。要買的話可能真的得找到本人才行。

發表於 2007-10-1 17:12:53 | 顯示全部樓層

補上一個資訊:

 

梁利峰的點晴工作室網站:

http://llf.javaeye.com/

 樓主| 發表於 2007-10-2 17:10:13 | 顯示全部樓層

大師~您好!

晚輩修改了好幾次,結果都差不多。

 

用偏移量轉換器時(0.94c版的,是1.05試用版內附的),

雖然能夠正常顯示,

但是排版很奇怪,

因為空白好多!(用20)

 

最後只好自已手動用UltraEdit一個一個的改,

雖然空白沒有了,(用00)

但是 OK 的字不見了!>"<

還多了空白!><"

 

之後由 00 改為 FF ,

空白是消失了,

可是 OK 的字一樣不顯示,

請問是什麼問題呢?

 

這是晚輩的修改結果,請大師過目:(請下載)

http://www.sendspace.com/file/ubpex5

 

內有三個檔案。

 

其中一個檔案的註釋晚輩寫錯了。

本來是:dopatch.stb_偏移量版

應該是:dopatch.stb_Localize Plus 1.05版(20)

 

因為本來要用偏移量的,

但是發現多出空白很難看,

所以只好重改.........

 

對了,晚輩是改 BinPatch 3.0n 的:

\BinPatch\bin\stubs\gui\Win32\comp\dirpat\dopatch.stb

[ 本文最後由 Lilyandy 於 2007-10-2 05:12 PM 編輯 ]
發表於 2007-10-3 13:34:57 | 顯示全部樓層

不要再辛苦了,這裏有中文化版本:

http://www.suma.tw/forum/thread-2862-1-1.html

 樓主| 發表於 2007-10-3 15:17:36 | 顯示全部樓層

原文由 MarchFun 於 2007-10-3 01:34 PM 發表 不要再辛苦了,這裏有中文化版本: http://www.suma.tw/forum/thread-2862-1-1.html

 

@@嗯~,其實晚輩也有取得已中文化的版本,

但是為了練習改ASCII,

所以才拿 BinPatch3.0n來開刀練習的......@@"

 

另一方面也想改出適合自已特色的版本出來呢....

 

剛才看了一下....

翻譯的方式…這不是小貓版的嗎?@@???

感覺翻譯的方式一樣....

 

奇怪....無論晚輩怎麼Try就是改失敗~>"<~

不信邪.....

還是想辨法學學這玩意...

 

不知大師是否能夠提示?

晚輩改不出與大師與小貓前輩的那種效果.....

 

不過怪了。怎麼明明都是 3.0n的版本,

但是核心版本不一樣?

 

晚輩在Cpatch下載的3.0n版而言,

genpatch 版本為3.0k

 

大師提供的 genpatch 版本為 3.0o

整整跳了 l m n o 四個版本號.....

[ 本文最後由 Lilyandy 於 2007-10-3 03:32 PM 編輯 ]
發表於 2007-10-3 17:32:49 | 顯示全部樓層

你說的「效果」是什麼我不知道(因我沒改過這套)。不過我猜你遇到的問題可能與「文字區塊」有關。一般常見的 ASCII 字串均為字串形式。就是從頭到 00 為一句的字串,以一般的文件來說就是一行的文字。「文字區塊」則有所不同,就一般的文件來說類似多行文字。這個時候你如果使用字串替換器之類的工具的話,它會將文字區塊拆成多個文字字串,並在第一個文字串後面填上 00 造後面的字串都無法顯示。這時候你需要以十六進位的方式手動進行調整。

 

處理這種區塊文字就要善用十六進位的換行 (0D0A) 來處理。首先將個別的字串翻譯置入後,將每個字串後面多餘的空格 (20) 搬到整個文字區塊最後面的 00 之前,保留每個字串間的 0D0A 不要刪除即可。

 

當然你也可以將所有多餘的 20 搬到整個文字區塊最後面 00 之後,不過有時候某些程式會產生問題。

 

示例如下:

 

未處理前的文字區塊

這是一個 ASCII 多行文字修改的範例。20 20 20 20 20 20 0D0A 請不要刪除文字區塊中間的換行符號。20 20 20 00

 

處理之後的文字區塊

這是一個 ASCII 多行文字修改的範例。0D0A 請不要刪除文字區塊中間的換行符號。00 20 20 20 20 20 20 20 20 20

 樓主| 發表於 2007-10-4 15:43:56 | 顯示全部樓層

晚輩有修改後,本來有抓圖的,

但是因為無法上傳附件,

所以有點麻煩......@@

 

這幾天工作比較忙,

ASCII中文化又只好擔葛了....

加上網路因換ip而無法使用網路,

改天再把圖片上傳到免空好了。

 

反正改的很怪就是了@@

 

也看了小貓版的改法,但發現版本不同比對也不同,

最慘的是每次解殼之後,

ASCII的排列都不一樣.....天哪.....@@"

你需要登入後才可以回覆 登入 | 我要註冊

本版積分規則

Archiver|禁閉室|手機版|數碼中文坊

GMT+8, 2024-4-26 06:51 AM

Powered by Discuz! X3.4 Licensed

© 2001-2023 Discuz! Team.

快速回覆 返回頂端 返回清單