* updated by Kii Ali, 12-11-2001 X-Sender: gwotrang@mail.ht.net.tw Date: Tue, 25 May 1999 13:07:47 +0800 To: Henry Pan From: Gwo Trang Subject: Re: MSOE 測試與使用情形 Cc: Kii Ali References: X-MDaemon-Deliver-To: kiiali@mail.maiowoo.com X-Return-Path: gwotrang@mail.ht.net.tw At 10:55 PM 1999/5/24 Monday, you wrote: cc: ka >>像我自己使用的 Eudora 4.2 beta 54 就是這樣改,建議 ka,信件經由 >>Eudora 2.2 轉出去都是 "iso-8859-1",我覺得將 "iso-8859-1" 修改成 > >要改那兒呢? >我怎麼只有在 Eudora.exe 中找到 us-ascii, 沒看到 iso-8859-1 在 Eudora32.dll 的 string table 裡面。 Eudora 4.2 beta 54 的修改法幾乎已經完全和以前的版本不一樣了, 只有 Paige32.dll、QCUtils.dll 是一樣,Eudora.exe 就改變非常多, 你知道 beta 54 已經將自動解碼的功能寫進去了嗎? (雖然有點 bug) 在收信時,程式會對 base64 或 qp 自動解碼,解碼完成後才會將資 料寫入 .mbx 信件檔案裡面,和以往有很大的不同吧! 以前在 .mbx 裡面可以看到 base64 和 qp 的原始亂碼,但現在已經完全看不到了, 程式在寫入資料時就已經預先解碼。 雖然某些地方還是可以套用以前的修改法,不過可能會出問題,而且 有些修改已經不需要,例如: 1.解決通訊錄衝碼 (這個不需要,beta 54 已經不會衝碼了) ================ 檔案: Eudora.exe 搜尋: 6A AB 52 (共一組) 修改: -- 20 -- 3.解決 "Message-Id:" 訊息在信件中會出現多次的問題 ================================================= ("似乎" 不需要了,但還在觀察中) 檔案: Eudora.exe 搜尋: 74 16 8B 55 (共一組) 修改: EB -- -- -- 8.解決首字空白亂碼問題 ====================== 字元 FF 為中文字唯一未用到的碼,我們就利用這個優點作為判斷字元。 檔案: Eudora.exe a.搜尋: 3F A0 75 03 (將判斷字元 A0 改為 FF,共一組) 修改: -- FF -- -- b.搜尋: 68 A0 00 00 00 8B (將判斷字元 A0 改為 FF,共三組) 修改: -- FF -- -- -- -- c.搜尋: A0 AC F1 修改: FF -- -- (修改功能對照表,共一組,原 A0 為 ,改 FF 為 ) (以前的想法有點錯誤,其實上面三個都不必改) 檔案: Eudora.exe d.搜尋: F7 46 64 00 00 00 08 8A 44 24 08 74 12 3C 20 75 0E 66 83 BE B8 07 00 00 20 0F 86 92 00 00 00 8B 8E 98 07 00 00 修改: 8B 8E 98 07 00 00 8A 44 24 08 3C 20 74 08 3C FF 75 13 B0 20 EB 0F 80 79 FF 09 0F 82 91 00 00 00 90 90 90 90 90 (增加對 FF 及 09 字元的判斷,共一組) ↓ (應該改成: 增加對 A0 及 09 字元的判斷,把 FF 換成 A0 就對了) 8BBE98070000 MOV ECX,[ESI+00000798] 8A442408 MOV AL,[ESP+08] 3C20 CMP AL,20 7408 JZ 004AD849 3CFF CMP AL,FF ---> 修正為 CMP AL,A0 7513 JNZ 004AD858 B020 MOV AL,20 EB0F JMP 004AD858 8079FF09 CMP BYTE PTR [ECX-1],09 0F8291000000 JB 004AD8E4 90 NOP 90 NOP 90 NOP 90 NOP 90 NOP 8801 MOV [ECX],AL 9.解決附加檔案不相容中文問題 (含 '\' 和 '|' 字元問題) ===================================================== High Byte = A1h∼FEh,Low Byte = 40h∼7Eh、A1h∼FEh 檔案: Eudora.exe (僅適用 4.2.0.24 Beta) a.搜尋: 3E 3F 5B (修改過濾字元,共二組) 修改: -- -- 00 b.搜尋: 75 20 3C 20 7C 1C 0F BE C8 51 68 70 (修改檔案過濾判斷,共二組) 修改: EB 04 -- -- -- -- -- -- -- -- -- -- c.搜尋: 63 00 FF D5 83 C4 08 85 C0 75 06 (字元過濾,共一組) 修改: -- -- -- -- -- -- -- -- -- -- 00 (上面三個也不用改,beta 54 裡面必須增加另外的修改法) 10.解決標題(主旨)和寄件人會顯示 Base64 亂碼問題 11.解決信件內容瀏覽時會顯示 Base64 亂碼問題 12.解決接收 Outlook 寄來的中文附檔時會建立 Base64 亂碼檔案問題 (這些修改都已經不需要了,自動解碼功能已經內含在 beta 54 裡面, 但仍需要做一些程式修正) 對於 beta 54 的修改碼我都沒有做整理,所以只能大略的提醒你。 免去了很多修改法,但在 beta 54 裡面又額外的增加了幾項,說 來話長,我想到就累,不打出來了。 關於修正的 patch 檔案我會在另一封信丟給你,怕 ka 收信太久會念我。 使用上有問題麻煩通知我,我再接手修改。 啊,對了,ka∼,記得把 Eudora 2.2 的 "iso-8859-1" 改成 "big5" 很有效的,outlook 和 Netscape 收信會看到語系亂碼問題迎刃而解。 我改了兩個,"us-ascii"、"iso-8859-1" ---> "big5" 你們測試一下 就可以知道,這個地方早該改的。 麻煩 pank 寄兩封亂碼信給我 (也可以帶檔),一封 base64 亂碼,一封 qp 亂碼,我想多測試一下,檔案隨便挑一個小檔來測試,幾 byte 的就好。 -- [ICQ# : 10732312] E-Mail: gwotrang@mail.ht.net.tw     gwotrang@hello.com.tw