<dfn id="is4kg"></dfn>
  • <ul id="is4kg"></ul>
  • <abbr id="is4kg"></abbr>
  • <ul id="is4kg"></ul>
    <bdo id="is4kg"></bdo>

    曙海教育集團(tuán)論壇Win CE 專區(qū)Wince技術(shù)討論區(qū) → Sun之糊志_D600更換wince.nls過程


      共有5828人關(guān)注過本帖樹形打印

    主題:Sun之糊志_D600更換wince.nls過程

    美女呀,離線,留言給我吧!
    wangxinxin
      1樓 個(gè)性首頁 | 博客 | 信息 | 搜索 | 郵箱 | 主頁 | UC


    加好友 發(fā)短信
    等級(jí):青蜂俠 帖子:1393 積分:14038 威望:0 精華:0 注冊(cè):2010-11-12 11:08:23
    Sun之糊志_D600更換wince.nls過程  發(fā)帖心情 Post By:2010-11-16 10:03:27

    俄羅斯黑客放出了HTC Gene P3400手機(jī)(國內(nèi)型號(hào)是Dopod D600)的windows mobile 6的ROM,國內(nèi)熱心的高手第一時(shí)間漢化了這個(gè)版本,并陸續(xù)放出了幾個(gè)改進(jìn)的穩(wěn)定版。本來并不打算升級(jí)自己的手機(jī)系統(tǒng),其一自己對(duì)手機(jī)的系統(tǒng)一無所知,其二刷ROM畢竟有很大的風(fēng)險(xiǎn),搞不好就會(huì)把手機(jī)搞報(bào)廢,但是猶豫了一下,還是為好奇心驅(qū)使,一閉眼,刷。
    整個(gè)刷機(jī)過程相當(dāng)順利,手機(jī)重新啟動(dòng)后進(jìn)入了WM6,測(cè)試各功能均正常,看來漢化的相當(dāng)好。可沒過多久就發(fā)現(xiàn)了一個(gè)問題,就是無法通過WAP同步mail2web的exchange服務(wù)器,網(wǎng)上查了一下,好像沒法解決這個(gè)問題。但網(wǎng)上使用其他型號(hào)的手機(jī)在升級(jí)WM6后也有發(fā)現(xiàn)了這個(gè)問題的并提出了一些解決方案,可這些方案幾乎都被證實(shí)無效,最后發(fā)現(xiàn)一個(gè)替換wince.nls文件的解決方案尚存一絲希望,決定試一試。因?yàn)閷?duì)手機(jī)的系統(tǒng)軟件和破解工具一點(diǎn)感念都沒有,用了兩個(gè)晚上來回折騰,總算把問題解決,現(xiàn)在記下來,由于替換這個(gè)文件有一定的風(fēng)險(xiǎn),切莫模仿,風(fēng)險(xiǎn)自負(fù)。
    要替換wince.nls文件必需知道這個(gè)文件放在哪里,網(wǎng)上有其他型號(hào)手機(jī)的一些替換方法,不過都是直接定制ROM,也就是說網(wǎng)上介紹的方法都是替換在ROM區(qū)的wince.nls,而D600中的這個(gè)wince.nls文件卻是放在了XIP中,也就是核心系統(tǒng)區(qū)域,傳說在XIP中動(dòng)手腳,難度和風(fēng)險(xiǎn)要明顯高于一般的ROM區(qū)域,而且目前關(guān)于對(duì)XIP的修改幾乎沒有什么資料,xda-developers論壇上有一些提取和修改工具發(fā)放,但具體的使用方法都不怎么介紹,不過沒關(guān)系,零星的資料加上人類的想象力,開工。


    首先,了解一下windows mobile手機(jī)的系統(tǒng)結(jié)構(gòu),像電腦一樣,手機(jī)加電后也有一個(gè)自舉程序,類似于電腦里的BIOS,這個(gè)自舉叫IPL,它負(fù)責(zé)手機(jī)硬件的I/O和調(diào)用第二個(gè)啟動(dòng)程序SPL,SPL是一個(gè)比較關(guān)鍵的東西,如果要自己刷手機(jī)ROM就要先更改這里,但這個(gè)只要改一次,所謂解鎖,以后就能隨便刷系統(tǒng)了,傳說中手機(jī)變成磚頭的,也就是在刷SPL時(shí)出現(xiàn)錯(cuò)誤。這部分其實(shí)還是電腦BIOS的一部分,接著SPL就會(huì)去調(diào)用真正的主角windows mobile操作系統(tǒng)OS。通常定制ROM,就是定制這里。
    接著,看看OS怎么構(gòu)成,OS主要分成XIP、IMGFS兩大部分,其中XIP就是系統(tǒng)核心,而其他的軟件壓縮后放在IMGFS中,需要執(zhí)行時(shí)解壓到RAM中,類似于一般的海量存儲(chǔ)設(shè)備。而XIP則不同,XIP全稱是“eXecute In Place”,在XIP中存儲(chǔ)的程序是不需要加載到RAM就可以直接執(zhí)行的,所以在替換XIP中數(shù)據(jù)的時(shí)候一定要考慮物理地址的問題。
    手機(jī)中還有一個(gè)ExtendedRom,通常是存放一些廠家定制的軟件,在恢復(fù)出廠設(shè)置時(shí)會(huì)自動(dòng)裝入系統(tǒng)。
    現(xiàn)在開始替換,準(zhǔn)備工具,NBHTOOL,XIPTools,XIPPort,htcrt(必須是加入過HTC gene P3400/Dopod D600設(shè)備描述的),還有一個(gè)是msflshtool,這個(gè)不是必須的,但是由于網(wǎng)上沒找到D600XIP的寫入地址介紹,無意中發(fā)現(xiàn)這個(gè)工具可以分析出來。
    步驟:
    一、ROM選用宇軒r3.6的精簡宋體版,用NBHTOOL工具分離出Windows.nb和ExtendedRom.nb,這個(gè)沒什么好說的,運(yùn)行程序就是一個(gè)界面,點(diǎn)擊“Decompile NBH file”按鈕,選中刷機(jī)ROM的NBH文件,然后指定結(jié)果輸出目錄即可。分解出來的ExtendedRom.nb不去動(dòng)它,用操作的是Windows.nb文件。
    二、打開XIPTools工具,在“Extract”選項(xiàng)卡上選好“OS File”和“Output File”文件,OS File就是剛才分離出來的Windows.nb,Output File可以取名為XIP.bin,然后點(diǎn)擊XIP2,XIP就被分解出來了。點(diǎn)擊Xipport按鈕,調(diào)出XIPPort工具。
    三、主要的重點(diǎn)工作就在這里。在XIPPort工具窗口上,點(diǎn)擊“dump xip.bin”按鈕,執(zhí)行后,目錄里會(huì)多出一個(gè)“OUT”子目錄,這個(gè)目錄下會(huì)出現(xiàn)兩個(gè)文件和Files、Modules兩個(gè)子目錄,要替換的wince.nls文件就在FILES目錄下。
    先不急著替換,點(diǎn)擊“write maps”按鈕,OUT目錄下會(huì)多出兩個(gè)文本文件,MAP.txt和MAP.physical.txt,備份好這兩個(gè)文件并打開MAP.txt來分析它,這里有一句“8c33d4a0 - 8c41618a L000d8cea filedata wince.nls”,猜猜它的意思,很明顯,這個(gè)意思是說wince.nsl文件的數(shù)據(jù)是儲(chǔ)存在從8c33d4a0到8c41618a的地址區(qū)間的,長度是000d8cea,那怎么修改呢,MAP.txt只是一個(gè)分析報(bào)表輸出文件,一定有地方告訴它。
    打開FILE子目錄,wince.nsl就在這里,邊上還有一個(gè)wince.nls.imageinfo文件,看看它是做什么的,打開文件,關(guān)注這兩條:
    nRealFileSize: 000D8CEA
    nCompFileSize: 000D8CEA
    原來是在這里說明了文件的長度,很明顯,這個(gè)文件沒有被壓縮儲(chǔ)存,實(shí)際長度和壓縮長度相同,這個(gè)長度是哪里來的呢,右擊wince.nls文件,點(diǎn)“屬性”,顯示“大小:867 KB (888,042 字節(jié))”,打開windows附件里的計(jì)算器,算一算,咦,怎么這么巧,原來十六進(jìn)制的0D8CEA正正好好等于888,042,(數(shù)學(xué)家真?zhèn)ゴ螅:昧耍F(xiàn)在我們拷貝自己的wince.nls去替換這個(gè)FILES目錄下原來的那個(gè)wince.nls,而新的wince.nls的長度是889,018 字節(jié),換算成十六進(jìn)制就是...多少來著?忘了,問問數(shù)學(xué)家去:-)。好,現(xiàn)在將這個(gè)新的十六進(jìn)制數(shù)據(jù)替換wince.nls.imageinfo文件里的老數(shù)據(jù)。
    接著,在生成新的XIP之前,還要做一件重要的事。由于數(shù)據(jù)在存儲(chǔ)器里是一個(gè)挨著一個(gè)排排坐的,現(xiàn)在換了新文件比原來那個(gè)胖,就要占別人的位置,怎么辦,那就要一個(gè)一個(gè)將后面的老兄往后挪,手工的做起來也能做,但很麻煩,還要注意上面儲(chǔ)存文件名中的鏈表指針也要相應(yīng)修改,如果能不出錯(cuò)該完,說不定真的變成數(shù)學(xué)家了:P。XIPPort提供了一個(gè)工具可以幫助解決這個(gè)問題,按“realloc P”按鈕,搞定,再write一個(gè)Maps,看看新的Map.txt,只要里面沒有“!!!!!”這樣的字符,就基本搞定,不過再仔細(xì)檢查一下那些地址變動(dòng)了。用WinMerge對(duì)比一下兩個(gè)文件,看看是不是鏈表和數(shù)據(jù)地址都被改變了。
    現(xiàn)在可以重新生成XIP.bin文件了,按“build xip_out.bin”按鈕,目錄中就會(huì)生成一個(gè)新的xip_out.bin文件,這個(gè)XIP就是已經(jīng)被替換了wince.nls的XIP了。
    XIP.bin是從windows.nb中提取出來了,那么,新的XIP也要回寫回去,XIPPort工具中有一個(gè)“write xip_out.bin to:”按鈕就是來處理這個(gè)事的,但是,這個(gè)回寫地址是多少呢,網(wǎng)上沒有說明的,XIPPort的默認(rèn)地址是00310000,千萬不能就這么寫進(jìn)去,這個(gè)地址不是D600的。好,現(xiàn)在再用一個(gè)法寶,msflshtool。
    其實(shí)msflshtool完全可以代替XIPTools的工作提取windwos.nb中的XIP,但因?yàn)槭荄OS命令沒有XIPTools來得直觀和簡便,所以就不用它,無意中發(fā)現(xiàn)msflshtool的L開關(guān)正好幫助解決了回寫地址的問題。
    在DOS狀態(tài)下,執(zhí)行
    C:\Dopod\MSFlshTool>msflshtool.exe Windows.nb -l
    ***********************************************************
    msflsh50dump v0.1 code by blueboy
    ***********************************************************
    partinfo
    part <0> offset <00000400> size <00313400>
    part <1> offset <00313800> size <00333000>
    part <2> offset <00646800> size <0338E800>
    end
    看看part <1> offset <00313800> size <00333000>這句,回寫地址來了,原來地址是00313800,長度是333000,不用去管長度,在XIPPort中填入這個(gè)“00313800”,回寫到windows.nb文件中。
    四、怎么來就還是怎么回去,既然刷機(jī)ROM的nbh文件分解出了Windows.nb和ExtendedRom.nb兩個(gè)文件,現(xiàn)在針對(duì)Windows.nb的修改已經(jīng)OK了,那么還是要把這兩個(gè)文件合并成刷機(jī)ROM的nbh文件,不過來的時(shí)候用的是NBHTOOL工具,回去時(shí)就要用到htcrt工具了。
    打開htcrt,點(diǎn)擊“ROM builder”選項(xiàng)卡,左側(cè)“device”下拉框中選擇“Gene”這個(gè)就是D600,右側(cè)的“Firmware contents”中只選“ext.ROM: 和“OS:”兩項(xiàng),分別是文件ExtendedRom.nb和Windows.nb,上面的千萬都不能選,好,點(diǎn)擊“Build!”按鈕,選一個(gè)文件名,不一會(huì)兒,新的刷機(jī)文件就生成了。
    五、刷機(jī)。重啟后,這是exchange同步,久違的:正在查找更新“終于出現(xiàn)了。
    wince.nls是一個(gè)碼表文件,要選擇一個(gè)合適的文件才能設(shè)置中國區(qū)域,但宇軒r3.6的精簡宋體版中的wince.nls雖然支持中國區(qū)域,但卻不能通過WAP同步mail2web,而現(xiàn)在這個(gè)同樣支持中國區(qū)域設(shè)置,又能解決mail2web同步問題。網(wǎng)上還看到一個(gè)1.5M左右的wince.nls文件,支持中日韓,但由于文件的大小突出了XIP的余量,試了一次把它移到ROM,在XIP中刪除,但沒有成功,看來XIP的水還真有點(diǎn)深,怪不得很少有資料。


    支持(0中立(0反對(duì)(0單帖管理 | 引用 | 回復(fù) 回到頂部

    返回版面帖子列表

    Sun之糊志_D600更換wince.nls過程








    簽名
    主站蜘蛛池模板: 亚洲欧美精品中文字幕| 视频一区视频二区在线观看| 97精品国产一区二区三区| 91网站免费观看| 香蕉大战欧美在线看黑人| 老公和他朋友一块上我可以吗 | 97久人人做人人妻人人玩精品 | av一本久道久久综合久久鬼色| 88av在线看| 老子影院午夜精品欧美视频| 狠狠色噜噜狠狠狠狠97| 欧美一级特黄啪啪片免费看| 日本乱偷互换人妻中文字幕| 天天综合亚洲色在线精品| 国产精品久久久久久影视| 国产乱码1卡二卡3卡四卡| 伊人久久国产精品| 亚州日本乱码一区二区三区| 中文字幕亚洲一区二区三区| 99re在线精品视频| 老司机67194免费观看| 欧美精品久久天天躁| 日本三区四区免费高清不卡| 大香伊人久久精品一区二区| 国产成人无码AⅤ片在线观看| 军人野外吮她的花蒂无码视频| 亚洲国产成人精品无码区二本| 一区二区视频免费观看| 99久在线精品99re6视频| chinese国产在线视频| 99精品人妻少妇一区二区| 99在线观看视频| 99热这里有免费国产精品| 99久久99久久免费精品小说| 337p欧美日本超大胆艺术裸| 黄色大片网站在线观看| 超薄肉色丝袜一区二区| 色妞视频资源在线观看| 美女扒开屁股让男人桶| 综合欧美亚洲日本| 穆天阳吃饭还在顶是哪一章节|