一般的
GPS一體機都是基于wince操作系統的,但是通常操作系統都被封印在一個mainshell界面下(即提供啟動
GPS軟件和MP3等的操作界面), 用戶除了按照廠家指定的方式更新這些制定的軟件和
地圖外,不能做其他任何事情了!顯然,如果能打開這個封印,將內部的wince桌面操作系統釋放出來,就可將
GPS作為一個PPC/PDA來用了,當然,
GPS一體機種的操作系統比PPC/PDA中的操作系統要簡單得多,因此還需要增加一些系統工具和支持性的dll文件,這個將
GPS一體機拓展為一個PPC/PDA的過程就是解鎖!
目前最為成熟的自動解鎖包是針對mio cx10和mio cx20 (x=3,5,7)系列GPS機器的mioautorun解鎖工具(詳情見
http://mio-gps.blogspot.com/2007 ... 6-mio136dm-268.html
or http://www.tomasii.cdc.cz/unlock/Unlock.html
)。這個工具包事實上可以用來給任何基于wince操作系統的GPS一體機解鎖,但是有兩個前提條件: 第一、一體機在硬起時一般會自動掃描SD卡的根目錄下是否存在特定的后門程序,如果存在,就會執行這個程序,因此,一體機的后門程序名稱是一體機實現完全自動解鎖的首要條件。但是,即使不知道后門程序,如果知道導航儀主菜單上存在能調用存儲卡(內部或外部的均可)上的某個程序(如機器自帶的導航程序), 則可以利用這個程序名, 將原導航程序整體移到其它目錄里,將mioautorun.exe 更名為這個程序的名稱(mioautorun.scp也要更名),放在該路徑下, 一樣可以實現一鍵自動解鎖! 第二、一體機在硬起后,會自動啟動一個GPS的操作界面,還會在后臺啟動一些基本的操作系統服務程序,要使得解鎖后的機器能夠在后臺運行適當的支持性程序,而不啟動那個會鎖住桌面的mainshell,就必須知道開機過程中啟動相有哪些,這個可以從注冊表項[HKLM/init]中各鍵值看出來。這是解鎖得重要步驟。
下面將以新科一體機(歐美的invion牌子的GPS是新科產品)為例來講具體的解說思路,我選擇它做例子是因為我恰恰知道它的后門程序名稱。但由于我沒有這類GPS,所以仍然無法給出完全的解鎖包,只是講思路和做法:
1. 新科一體機后門程序名通常是shincoupdate.exe, 顧名思義,這個后門是廠家為機器升級軟件留的. 因此,你可以將mioautorun.exe更名為shincoupdate.exe來初步實現解鎖的目的。
2. 然后要探索開機啟動項的內容, 這個需要一個regedit和total commander(cecmd.exe)來獲得,將cecmd.exe 和regedit.exe放在SD卡根目錄下,將cecmd.exe改名為shincoupdate.exe,插卡,硬起機器后就必然出現一個cecmd窗口,從窗口調用regedit,找到[hklm\init]注冊表項,將其導出成一個注冊文件如shell.reg存在sd卡上。假定里邊有如下幾項:
[HKLM\init]
"launch20"="device.exe"
"launch30"=gwes.exe"
"launch50"=“explorer.exe" "launch80"="navish.exe" 顯然其中“launch80"就是啟動導航儀的主菜單地的. 因此需要在自動解鎖時修改這一項,例如可用任務欄taskbar.exe來替代, 這可專門設立一個注冊表文件如shellnew.reg, 內容如:
[HKLM\init]
"launch80"="taskbar.exe"
一旦這些注冊項被引入系統,軟重啟后,系統就不會在啟動那個鎖住ce桌面的主菜單了,而是將wince桌面完全暴露出來。
3. 接下來還得知道操作系統中已有哪些基本文件,這個可以直接在cecmd窗口中瀏覽\windows目錄下的文件,尤其要注意dll文件以及是否有wince的控制面板程序等.知道了哪些關鍵程序就可在自動解鎖包中加入。
4. 獲得了上述信息后就可以構造一個基本的解鎖包了(不包括其它的高端應用程序及相關桌面美化工具,這個不同人不同愛好,可自行DIY), 這個解鎖包在SD卡根目錄下應包括:
1) shincoupdate.exe (由mioautorun.exe改名而來), 解鎖過程批處理執行文件。
2) shincoupdate.scp (由mioautorun.scp改名并修改內容得來), 解鎖過程批處理腳本文件,用于設定解鎖過程要執行的各種操作!
3)一個目錄(如utils)包括解說過程需要的重要工具軟件及windows系統需要的工具軟件, 如: cecemd.exe, regedit.exe, reset.exe (軟重啟), suspend.exe, screenrotate.exe (屏幕旋轉),executabilitycheck.exe(ce程序診斷工具)等,這些在mioautorun解鎖包里都有.
4) 一個目錄(如windows) 包括了一些填加的系統文件taskbar.exe和dll文件(mioautorun包里有).
5) 一個目錄(如registry)包括了一些需要在解鎖過程中自動倒入注冊表中去的注冊文件. 最精簡的shincoupdate.scp文件當如 (#為注釋行):
#Simple C310Auto script to unlock your Mio
#See ReadMe.txt for more details
#
#Let C310Auto know where your regedit program is located.
#This command will no longer be needed when/if I incorporated
#registry processing internally.
ExtRegEdit "\Storage Card\Utils\RegEdit.exe"
#注意,storage card為SD卡名,如你的機器的sd卡名不同,這里需作相應修改!
#Copies the program TaskBar.exe to the \Windows directory.
#This program simply unhides and enables the taskbar.
Copy "\Storage Card\Windows\TaskBar.exe" \Windows
#Change the registry so that navish.EXE no longer runs
#and have the TaskBar and ReleaseGPS program run instead
RegEdit "\Storage Card\Registry\shellnew.reg"
#Copies additional dlls which may be needed for other programs to run
Copy "\Storage Card\Windows\*.dll" \Windows
#Set the taskbar to AutoHide
RegEdit "\Storage Card\Registry\autohide.reg"
# Set Chinese environment of the System
#Call "\Windows\wceload.exe" /delete 0 "\Storage Card\app\cabs\ROS Chinese Support.cab"
#RegEdit "\Storage Card\Unlock\Registry\chinese.reg"
#Copy "\Storage Card\unlock\chinese\*.*" \Windows
#Install gpsgate 2.5 for ppc!
#Call "\Windows\wceload.exe" /delete 0 "\Storage Card\app\cabs\gpsgateppc.arm.cab"
#以下可添加桌面程序快捷方式
#Desktop KLD "\Storage Card\KLD\Navione.exe"
#Here you can create your shortcuts to the favorites
#Favorites BananaPC "\Storage Card\utils\bananapc.exe"
# 啟動多頁面桌面定制程序(將下一行的注釋符去掉)
#Run "\Storage Card\Systeminformation\systeminformation.exe"
#為路仙注冊 (將下一行的注釋符去掉)
#Run "\storage card\navi\rousen.reg"
#Restart the GPS
Restart
其中autohide.reg的內容為:
REGEDIT4
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Shell]
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Shell\AutoHide]
@=dword:00000001
上述解鎖包構造好后,插卡,硬啟機器后就能看到桌面和taskbar了。 如果需要軟重啟,捅屁股或直接使用reset.exe即可,此時但能保留解鎖過程中修改的設置, 你可以在此批處理中加上一些需要的東西,如為路仙添加注冊表項、啟動一些常用程序如桌面定制美化程序systeminformation (某些人眼中的一機多圖!)等等.