看板 PDA 關於我們 聯絡資訊
好讀網誌版~ http://blog.xuite.net/retsamsu/diary/32899274 這一篇分享文的由來,不是因為無聊想研究,而是因為需求而研究的,該換手機啦~~ 話說到昨天(4/12),晚上跟Bonnie一起去東區逛街,在有名的兔子兔子餐廳吃飯的時候, 拍了一些有趣的照片。因為Bonnie的傳輸線壞掉了,所以我們用藍芽來互傳。傳完之後 呢,就去逛街。逛到一半,拿出手機來看看,好像當機了。於是就拿對付這台老CHT9100 的方法,戳屁屁,可是這一次卻沒辦法一如往常的重開,而是"噹"的一聲,我的手機居 然被重置了>///<,失望之餘趕緊找回之前的備份,也帶著失望(應該是說沒心情)回家了 (Bonnie的名言:絕不能相信手機等3C用品)。 因為我每個星期都會拿AddinTimer的備份聯絡人、簡訊、與通話記錄功能來備份系統, 話說這時應該是派上用場的時候。聯絡人、簡訊都回覆了,就通話記錄找不到哪邊還原, 實在有夠奇怪,怎麼只能備份不能還原呢?上網找了一下,還真的是沒法還原,沒這個功 能。這就很像備了一堆沒用的東西一樣,很笨蛋的感覺。 可是不死心的我找了很多資料,想要恢復通話記錄,但都是碰壁。實在是這樣的應用太少 了,所以再更深入找了一下,有下面的一些結論: * Windows Mobile有許多的系統資料庫,如行事曆、系統排程等資料庫,有的可以 看到,有的是隱藏檔。 * 應用程式透過Pocket Outlook Object Model (POOM),這個包好API的Framework, 來跟這些資料庫溝通。 * 所以不管是新增行事曆、修改電話簿等等作業就可以透過POOM來執行。 * 有許多已經完整的POOM實作可以使用,如OpenNETCF、Mobile In The Hand、.Net CF等,都可以在手機上來存取資料。 * 也有許多應用程式已經可以存取,如SKTools、CeDatabase Manager、Pocket dbExplorer等。 * 不過沒有一個程式能大量匯入使用者定義的資料(From AddinTimer的備份)。 * 對於手機的程式要寫起來應該很麻煩。 中間Try and Error的過程就不說了,直接跟大家分享最後的方法:SKTools+寫程式產生 Import檔。 SKTools是個很方便的Windows Mobile控管程式,會用到的是他管理資料庫的功能。 點進去以後就可以看到系統資料庫。今天我們要存取的是clogs.db(Call Logs資料庫)。 可以看到一些重要的資料:屬於EDB格式,存在於pim.vol。 pim.vol存在系統的根目錄下,裡面放著通訊錄、行程、約會等資料,就像是一個磁區 (Volume)一樣,所以對應如果要改其他的內容的話,就是去存取在pim.vol下的其他資料 庫。 可以匯入也能匯出,都是xml檔。既然是xml檔,就可以來研究研究是不是可以用程式還是 其他方法來加工一下,再匯入進去。xml檔的格式大概是這樣: 上面那沱東西,不用管他,反正保留在那就好,重要是下面的部份: 可以看出大概的資料結構,所幸有這個跟這個的幫忙,一方面是知道欄位的格式與內容, 另一方面是如果是參數的話是什麼東西,大概是這樣: * record oid:沒關係,亂打就好,匯入會重編。 * field 1:固定是1。 * field 2:開始時間,這個時間是SortableDateTimePattern加個Z(與 UniversalSortableDateTimePattern類似,真是奇怪的格式),位數都不要補零。 * field 3:結束時間,格式跟上面一樣。 * field 4:來電的格式,有下面幾種,分別是有沒有在電話簿裡的來電與打的方式 有代碼。 * field 6:電話號碼。 * field 7:聯絡人名稱。 * field 10:是什麼樣的電話(行動電話、家用電話還是什麼的)。 * field 9:固定是0。 然後看看AddinTimer的通話記錄備份裡有什麼欄位。 * StartTime:開始時間,就是field 1。 * Name:如果是在電話簿裡有名字的話,會記錄名稱,field 7。 * Number:電話號碼,field 6。 * CallType:經過比對的結果呢(就是打給某人的比較長,就大概知道Type是什麼意思 了(笑)),再根據Name就可決定field 4的內容,大概是這樣: o a是未接來電。 o b是已接來電。 o c是播出電話。 * Duration:持續時間,與StartTime配合可以產生field 3。 * Note:沒東西。 基本上都能配合著作,除了field 10不知道要填什麼(不填也沒關係),field 3 = field 2 + Duration以外,就是單純的資料輸出了。 做完以後,丟到手機上,Import進去,就可以看到結果啦,完成了還原的工作,下次要 記得用其他東西備份啦~ -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.113.209.21 ※ 編輯: retsamsu 來自: 140.113.209.21 (04/12 15:42)
gpc:do a push 04/12 23:19