熱烈祝賀CSDN Norains 同志的wince 書籍《Windows CE大排檔》出版了

來源:互聯網
上載者:User

         Norains 同志寫部落格很勤快,品質也比較高,俺是比較佩服的。實戰工程師,部落格成書是比較值的使用者去品味的,因為這個不是那些所謂教授到處拼湊出來未經驗證的,norains同志的部落格,早期的時候經常去,現在偶爾也搜尋過去,真是個淡定沉著的工程師。我也曾經參與寫一本wince的書籍,不過我寫了一下子就寫不下去了,我發現自己寫的很糟糕,讓我自己都很失望。後來我只能慚愧的向發起人致歉退出。據我所知,那本wince書籍是一本專業驅動的書籍,內容很完善,很多MVP參與,前陣子我去網上搜尋了一下,還沒有出來,所以寫書不是那麼不容易的事情。根據行情稿費估計2W左右,遠遠不如做個項目來錢快,難怪很少人願意寫書,寫出好書了。想想現在的自己,滿身銅臭味,慚愧不已。這個書籍不錯,大家買來會有驚喜的。

 

 

目錄

第1章 開篇基礎1——初學者容易忽略的那點事
1.1概述1——高手勿看的基礎
1.1.1什麼是Windows CE1
1.1.2在哪裡下載Windows CE2
1.1.3什麼是SDK2
1.1.4 Platform Builder是什麼2
1.1.5用什麼IDE來開發應用程式3
1.2程式執行流程3——初學者真的明白流程了嗎
1.2.1入口還是WinMain3
1.2.2訊息迴圈4
1.3第一個視窗程序4——一切從視窗開始
1.3.1註冊視窗4
1.3.2建立視窗6
1.3.3程式退出8
1.4線程建立視窗8——為什麼訊息迴圈和建立視窗必須在同一線程
1.5封裝視窗建立過程13——static的註冊函數如何和對象對應
1.5.1註冊資訊和成員函數的矛盾13
1.5.2 CWndBase封裝簡化13
1.6註冊表23——註冊表的讀/寫不再繁瑣
1.6.1查看註冊表23
1.6.2讀/寫24
1.6.3 CReg封裝簡化24
1.7 vector好處多多38——vector完全可以取代數組
1.7.1記憶體動態分配38
1.7.2儲存字串39
1.7.3儲存記憶體資料39
1.7.4應用執行個體40
1.8 String也可以很精彩41——沒有CString,還有std:String
1.8.1宏定義41
1.8.2初始化42
1.8.3賦值42
1.8.4追加42
1.8.5與API函數打交道43

第2章 繪圖44——漂亮的介面都以繪圖為起點
2.1HDC概述44——繪圖的基礎
2.2繪製BMP45——系統API足以勝任
2.2.1讀取位元影像45
2.2.2繪製位元影像47
2.2.3釋放資源49
2.3用緩衝消除貼圖閃爍49——解決繪製多張圖片會閃爍的問題
2.3.1使用緩衝49
2.3.2.CMemDC封裝簡化50
2.4類比iPhone左邊滑動特效56——iPhone滑動效果不是夢
2.4.1原理56
2.4.2實現56
2.5類比iPhone手勢滑動特效57——隨手舞動
2.5.1原理57
2.5.2實現60
2.6繪製JPEG67——最簡單的DirectShow樣本
2.6.1函數調用流程67
2.6.2顯示源檔案特定地區70
2.6.3 CImager封裝簡化72
2.7繪製GIF83——痛點在於如何連續顯示
2.8將HDC儲存為BMP84——調試介面的利器
2.8.1 BMP檔案頭資訊84
2.8.2將HDC儲存到記憶體86
2.8.3儲存檔案87
2.8.4 WriteBmp完整源碼90
2.9截屏93
2.10半透明效果94——通過截屏和AlphaBlend混合

第3章 多媒體97——跨入有聲有色的時代
3.1播放WAV97——利用API播放最簡單的WAV
3.2錄音97——只要有麥克風,就能錄音
3.2.1WAV格式97
3.2.2前期準備100
3.2.3訊息處理102
3.2.4儲存檔案103
3.2.5 CRecord封裝簡化103
3.2.6 CRecord實現細節116
3.3 DirectShow116——播放視頻不再是個難事
3.3.1播放音頻檔案117
3.3.2播放視頻檔案120
3.3.3 CMedia封裝簡化121
3.3.4 CMedia與播放格式138
3.4同步顯示歌詞原理139——訣竅只在於時間的擷取
3.5文字滾動原理141——歌詞的滾動無非如此
3.6 DirectShow聲音的漸層143——WAV和MP3的播放聲道不同衍生出的應用

第4章 IME開發145——COM技術的應用
4.1IME結構145——COM的基礎介面
4.2 COM介面函數實現146——還是註冊表
4.3 CClassFactory的實現149
4.4 CInputMethod的實現151
4.5 CIMWnd的實現154——CWndBase類執行個體
4.6完整源碼156
4.7IME載入170——無載入,不使用
4.7.1系統定製170
4.7.2手工載入171
4.8微軟繁體手寫辨識庫176——簡單易用的筆劃識別
4.8.1調用流程176
4.8.2 CRecognizer封裝調用流程179
4.8.3在Platform Builder中添加識別庫186

第5章 事件和控制台189——撥開控制台的面紗
5.1事件概述189——方便好用的交流利器
5.1.1建立事件189
5.1.2發送事件191
5.1.3接收事件192
5.2不同進程資料資訊傳遞194——資料傳遞是一切的基礎
5.2.1註冊表195
5.2.2記憶體映射196
5.2.3事件數目據198
5.3控制台和驅動通訊199——控制台和驅動的無縫連結
5.3.1控制台結構199
5.3.2簡單的控制台程式200
5.3.3控制台和驅動程式通訊206
5.3.4如何調用控制台207

第6章 驅動開發210——驅動其實並不難
6.1驅動概述210——先看看基礎
6.2擷取已載入驅動資訊210——折騰註冊表,擷取驅動資訊
6.2.1結構體資訊211
6.2.2擷取註冊表資訊211
6.2.3提取主要資訊213
6.2.4提取其他資訊215
6.2.5細節: UNICODE的轉換216
6.3一個最簡單的驅動217——麻雀雖小,五髒俱全
6.3.1驅動結構217
6.3.2註冊表218
6.3.3最簡單的驅動代碼219
6.4驅動的動態載入和卸載221——免去系統編譯之苦
6.4.1載入221
6.4.2卸載任意驅動224
6.5 DeviceIoControl和結構體內嵌指標226——DeviceIoControl是應用程式層和驅動溝通的橋樑
6.5.1內嵌指標錯誤226
6.5.2修正地址228
6.5.3原因深究229
6.6虛擬串口驅動231——多個進程都能使用一個串口
6.6.1源起231
6.6.2驅動約束231
6.6.3 VSP_Open232
6.6.4 VSP_Close234
6.6.5 VSP_Write235
6.6.6 WaitCommEvent235
6.6.7 VSP_Read238
6.6.8完整原始碼241
6.6.9註冊表數值249
6.6.10驅動調用250
6.7狸貓換太子,用贗版替代原裝驅動250——類似駭客的手法

第7章 電源管理259——手持功能不可或缺的組成部分
7.1 SC811電源管理晶片259——簡單的晶片樣本
7.2搭建硬體電路259——檢測電路圖
7.3檢測電池電量驅動代碼260——根據ADC資料採獲取電量
7.4應用程式擷取電源資訊265——驅動完畢,只剩運用
7.4.1建立訊息佇列265
7.4.2等待狀態變化268
7.4.3資料分析269
7.4.4 CPowerThread封裝簡化流程272
7.5繪製電源變化279——混搭圖片實現動態效果

第8章CPU寄存器讀/寫281——最接近硬體的操作
8.1記憶體映射281
8.2操作STMP37xx GPIO 寄存器283
8.3操作TCC7901 GPIO寄存器286
8.3.1 TCC7901 寄存器讀/寫286
8.3.2自己動手寫TCC7901驅動291
8.3.3驅動調用300

第9章 硬體調試303——不和硬體打交道,就無法瞭解Windows CE嵌入式系統
9.1觸控螢幕303——PND不可或缺的輸入裝置
9.1.1校準後無法正確使用303
9.1.2點擊時無規律飄忽不定305
9.1.3點擊時有規律的漂移305
9.1.4同一型號觸控螢幕不靈便307
9.2軟開關308——軟硬結合的經典範例
9.2.1硬體篇308
9.2.2軟體篇310
9.3 LCD調試311——告別無介面的時代
9.3.1 LCD寄存器初始化311
9.3.2判斷資料線是否接反314
9.3.3雜碎經驗315
9.4 SDRAM和CPU316——器件選型的依據
9.4.1 SDRAM和CPU的串連316
9.4.2如何判斷SDRAM的大小318

第10章 系統分析320——對Windows CE系統做一些客制化的更改
10.1音量設定320——音量也有小後門
10.2系統介面修改329——非正統的修改
10.3Windows CE圓圈訊息330——揪出隱藏很深的WM_NOTIFY
10.4案頭修改331——Explorer的各種修改
10.4.1禁止拖拽案頭表徵圖331
10.4.2初始化案頭表徵圖順序331
10.4.3刪除菜單選項332
10.5捷徑333——不同於案頭Windows的方式
10.5.1捷徑結構333
10.5.2將捷徑放入核心333
10.5.3案頭顯示捷徑功能表334
10.5.4消除捷徑箭頭334
10.5.5微軟內建程式的捷徑功能表334
10.6註冊表335——類似於案頭Windows的方式
10.6.1不顯示“我的電腦”和“資源回收筒”335
10.6.2直接刪除檔案,不放回“資源回收筒”335
10.6.3修改XP皮膚的顏色335
10.6.4檔案夾映射修改337
10.6.5 Explorer註冊表歸納338
10.7格式化339——有趣的深層探索
10.7.1原始碼探索339
10.7.2函數的作用340
10.7.3函數的調用341
10.8檔案關聯342——不一樣的檔案關聯

第11章 系統燒錄344——對市面上的系統燒錄做簡單的對比
11.1大話燒錄344
11.2 TT4X0BD345
11.3 S3C6410349
11.4 TCC7901352
11.5 AU1200356
11.5.1地址釋疑356
11.5.2開始燒錄359

第12章Windows XP和Windows CE開發差異性367——差異性讓我們更注重代碼的可移植性
12.1大話差異367——新手所應瞭解的差異概述
12.2串口工作的差異性369——最平常的串口也有其特殊的一面
12.2.1 CreateFile參數的差異369
12.2.2單線程比較370
12.2.3多線程比較371
12.2.4 Windows XP非同步模式兩種判斷操作是否成功的方法375
12.3訊息迴圈的差異性376——訊息的差異也許會有出人意料的意外
12.4 Windows XP和Windows CE工程共存於同一檔案379——一切都只是配置參數
12.5用宏定義區分代碼382——讓宏使代碼思路更明晰
12.6用類簡化代碼遷移383——類不一樣的用法範例
12.7 Windows CE程式移植到Windows XP的解決方案執行個體386
12.7.1 RETAILMSG和DEBUGMSG386
12.7.2 ASSERT388
12.7.3 SetEventData和GetEventData391
12.8 Windows XP程式移植到Windows CE的解決方案執行個體399
12.8.1 GetCurrentDirectory399
12.8.2 SystemTimeToTzSpecificLocalTime400

後記403
參考文獻404

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.