《WindowsCE嵌入式高級編程及其實例》一書是由中國水利水電出版社出版,汪兵編寫,詳細介紹了各類CE的開發環境以及資料庫、網路等等開發,適用於有一定基礎的CE環境編程人員自學參考。
基本介紹
- 書名:WindowsCE嵌入式高級編程及其實例
- 作者:汪兵
- 出版社:中國水利水電出版社
- 出版時間: 2008
版權資訊,內容簡介,編輯推薦,目錄,序言,
版權資訊
書 名:WindowsCE嵌入式高級編程及其實例詳解
作 者:汪兵
出版社:中國水利水電出版社
出版時間: 2008
ISBN: 9787508456584
開本: 16
定價: 59.00 元
作 者:汪兵
出版社:中國水利水電出版社
出版時間: 2008
ISBN: 9787508456584
開本: 16
定價: 59.00 元
內容簡介
《WindowsCE嵌入式高級編程及其實例詳解》(用C++實現)講述隨著個人掌上電腦PocketPC、智慧型手機MobilePhone及工業控制器等各種嵌入式產品的飛速發展,MicrosoftWindowsCE嵌入式作業系統也隨著不斷發展壯大,市場占有率越來越高。本書基於VisualC++2005深入淺出地介紹了WindowsCE開發的相關知識以及開發過程中的重點和難點問題。全書共分15章,分別為WindowsCE以及開發環境概述、圖形編程、對話框控制項、進程、執行緒、檔案、多媒體編程、WindowsCE基礎資料庫編程、SQLCE3.0資料庫編程、串口編程、網路編程概述、UDP編程、TCP編程、DLL編程以及COM編程。本書中的很多技術和參考示例是作者多年技術研發工作的經驗總結和提煉升華,具備很強的借鑑和指導意義。讀者在具備一定的C++知識的基礎上,通過本書的學習,可以快速提高WindowsCE的編程能力和實際開發水平。《WindowsCE嵌入式高級編程及其實例詳解》示例基於WindowsMobile6平台進行講述演示,這些示例也可極其方便地套用到WindowsCE4.2、WindowsCE5.0、WindowsCE6.0等WindowsCE標準平台。本書適用於具有WindowsCE初級編程能力的讀者,可以作為高等院校本科生、研究生的自學參考書和畢業設計的指導書,也可以作為相關軟體開發人員的參考書。
編輯推薦
通過《WindowsCE嵌入式高級編程及其實例詳解》(用C++實現),您將會學到WindowsCE編程的基礎知識和實戰技術。
實用開發技術:本書中講述的實例能夠輔助開發人員設計出界面美觀、功能強大、性能穩定的WindowsCE應用程式,同時書中的相關代碼模組對於工程技術人員具有極高的參考價值,為讀者日後設計開發項目提供借鑑和參考。讀者在具備一定的C++知識的基礎上,再通過對本書的學習,可以快速提高WindowsCE編程能力和實際開發水平。
實用開發技術:本書中講述的實例能夠輔助開發人員設計出界面美觀、功能強大、性能穩定的WindowsCE應用程式,同時書中的相關代碼模組對於工程技術人員具有極高的參考價值,為讀者日後設計開發項目提供借鑑和參考。讀者在具備一定的C++知識的基礎上,再通過對本書的學習,可以快速提高WindowsCE編程能力和實際開發水平。
目錄
前言
第1章 Windows CE及開發環境概述 1
1.1 Windows CE概述 1
1.1.1 Windows CE嵌入式系統概述 1
1.1.2 Windows CE版本 2
1.1.3Windows CE 6.0概述 2
1.1.4嵌入式開發流程 4
1.2 開發環境概述 4
1.2.1 Visual Studio 2005的Visual C++——Windows CE開發環境概述 4
1.2.2 示例程式HelloWorld 5
1.3 Windows CE附帶遠程工具概述 10
第2章 圖形編程 14
2.1 設備環境類 14
2.2 圖形對象類(GDI) 15
2.3 繪製各種圖形 27
2.4 繪製點陣圖 38
2.4.1 CDC繪圖函式描述 38
2.4.2 動畫效果 43
2.4.3 抓屏 44
2.4.4 圖形顯示特技 47
2.5 顯示壓縮格式圖片 50
2.5.1 SHLoadImageFile方法 50
2.5.2 Imaging技術 51
2.6 簡單二維曲線示例 62
2.6.1 二維曲線類C2Dgraph的創建 62
2.6.2 使用二維曲線類C2DGraph繪製曲線 72
第3章 對話框控制項 75
3.1 常用控制項 75
3.1.1 微調按鈕 75
3.1.2 滑動條 78
3.1.3 進度條 81
3.1.4 列表視圖控制項 82
3.1.5 樹控制項 91
3.2 創建圖形顯示控制項 97
3.3 創建LED數字顯示控制項 105
第4章 進程 114
4.1 進程 114
4.1.1 進程概述 114
4.1.2 進程創建 114
4.1.3 進程終止 117
4.1.4 其他進程函式 118
4.1.5 “進程列舉並管理”實例 119
4.2進程間通訊129
第5章 執行緒 148
5.1 執行緒 148
5.1.1 執行緒概述 148
5.1.2 執行緒優先權148
5.1.3 執行緒API函式149
5.2 執行緒同步 151
5.2.1 未使用執行緒同步 152
5.2.2 利用事件同步 155
5.2.3 利用互斥同步 158
5.2.4 利用臨界區同步 161
5.2.5 利用信號量同步 163
第6章 檔案 166
6.1 檔案基本操作 166
6.2 檔案綜合操作示例 176
6.3記憶體映射檔案187
6.3.1 記憶體映射檔案概述 187
6.3.2 利用記憶體映射檔案實現進程間通訊 190
6.4檔案系統管理 198
6.5 註冊表編程 203
6.5.1 註冊表簡介 203
6.5.2 註冊表API函式 203
6.5.3 註冊表操作舉例 207
第7章 多媒體編程 211
7.1DirectShow介紹 211
7.1.1DirectShow技術框架 212
7.1.2 過濾器(Filter) 212
7.1.3 Filter Graph Manager 213
7.1.4Pin214
7.1.5 DirectShow 接口定義介紹 214
7.2媒體播放器示例 215
7.3 攝像頭捕捉示例 236
7.3.1 攝像頭捕捉概述 236
7.3.2 攝像頭捕捉示例 238
第8章 Windows CE基礎資料庫編程 255
8.1 EDB概述 255
8.1.1 裝配數據卷 256
8.1.2 卸載資料庫卷 257
8.1.3 創建資料庫 257
8.1.4 創建會話對象 259
8.1.5 打開資料庫 259
8.1.6 事務操作 262
8.1.7 刪除資料庫 263
8.1.8枚舉資料庫卷以及資料庫 264
8.1.9 查找或移動記錄 267
8.1.10 寫記錄 270
8.1.11 讀取記錄 271
8.1.12 刪除記錄 272
8.1.13 流操作 272
8.2 資料庫操作綜合示例 274
第9章 SQLCE資料庫編程 310
9.1 SQL Server FOR CE的介紹 310
9.1.1 SQLCE簡介 310
9.1.2 SQL Server CE 3.0的安裝 311
9.1.3 SQLCE 3.0連線配置 313
9.2OLEDB編程訪問SQLCE 3.0 318
9.2.1 OLE DB 概述 318
9.2.2 OLEDB 編程 319
9.3 SQLCE遠程數據訪問 332
9.3.1 Pull(拉數據) 333
9.3.2 Push(推數據) 334
9.3.3 Submit(遠程T-SQL操作) 335
9.4 遠程數據訪問綜合示例 335
第10章 串口編程 351
10.1 串口概述 351
10.2 串口編程API函式介紹 352
10.3 CE串口綜合示例 360
10.4 GPS編程示例 378
第11章 網路編程概述 398
11.1套接字編程基礎 398
11.1.1WinSock初始化和釋放 399
11.1.2 創建套接字 401
11.1.3 關閉套接字 401
11.1.4 綁定套接字 402
11.1.5 監聽套接字 403
11.1.6 等待連線 404
11.1.7 建立連線 405
11.1.8 傳送數據 405
11.1.9 接收數據 406
11.1.10 設定套接字模式 407
11.1.11SelectI/O模型 408
11.2PING編程 410
11.2.1 PING編程概述 410
11.2.2 PING編程示例 411
11.3RAS撥號編程 414
11.3.1 建立撥號連線414
11.3.2 關閉撥號連線 418
11.3.3 列舉已建立的活動連線 419
11.3.4 列舉電話簿條目 420
第12章 UDP編程 422
12.1 UDP編程概述 422
12.2 UDP編程示例 422
第13章 TCP編程 435
13.1 TCP編程概述 435
13.2 TCP客戶端示例 435
13.3 TCP伺服器端示例 451
第14章 DLL編程 473
14.1 DLL概述 473
14.2 DLL的調用 474
14.2.1 靜態調用 474
14.2.2 動態調用 474
14.3 DLL的創建 475
14.3.1 Windows CE DLL的創建 476
14.3.2 基於MFC的Regular DLL的創建 481
14.3.3 資源DLL 486
第15章 COM編程 490
15.1 COM基本知識概述 490
15.1.1 什麼是COM 490
15.1.2 什麼是接口 490
15.1.3 COM基本結構 491
15.2 使用ATL創建COM示例 492
15.2.1 ATL對COM支持概述 492
15.2.2 ATL創建COM對象示例 493
15.2.3 創建客戶端調用CEComServer 497
15.3 可連線點對象及示例 499
15.3.1 可連線點對象概述 499
15.3.2 連線點示例 501
15.4 創建ActiveX控制項509
15.4.1ActiveX概述 509
15.4.2 使用MFC嚮導創建一個簡單的ActiveX控制項 509
……
第1章 Windows CE及開發環境概述 1
1.1 Windows CE概述 1
1.1.1 Windows CE嵌入式系統概述 1
1.1.2 Windows CE版本 2
1.1.3Windows CE 6.0概述 2
1.1.4嵌入式開發流程 4
1.2 開發環境概述 4
1.2.1 Visual Studio 2005的Visual C++——Windows CE開發環境概述 4
1.2.2 示例程式HelloWorld 5
1.3 Windows CE附帶遠程工具概述 10
第2章 圖形編程 14
2.1 設備環境類 14
2.2 圖形對象類(GDI) 15
2.3 繪製各種圖形 27
2.4 繪製點陣圖 38
2.4.1 CDC繪圖函式描述 38
2.4.2 動畫效果 43
2.4.3 抓屏 44
2.4.4 圖形顯示特技 47
2.5 顯示壓縮格式圖片 50
2.5.1 SHLoadImageFile方法 50
2.5.2 Imaging技術 51
2.6 簡單二維曲線示例 62
2.6.1 二維曲線類C2Dgraph的創建 62
2.6.2 使用二維曲線類C2DGraph繪製曲線 72
第3章 對話框控制項 75
3.1 常用控制項 75
3.1.1 微調按鈕 75
3.1.2 滑動條 78
3.1.3 進度條 81
3.1.4 列表視圖控制項 82
3.1.5 樹控制項 91
3.2 創建圖形顯示控制項 97
3.3 創建LED數字顯示控制項 105
第4章 進程 114
4.1 進程 114
4.1.1 進程概述 114
4.1.2 進程創建 114
4.1.3 進程終止 117
4.1.4 其他進程函式 118
4.1.5 “進程列舉並管理”實例 119
4.2進程間通訊129
第5章 執行緒 148
5.1 執行緒 148
5.1.1 執行緒概述 148
5.1.2 執行緒優先權148
5.1.3 執行緒API函式149
5.2 執行緒同步 151
5.2.1 未使用執行緒同步 152
5.2.2 利用事件同步 155
5.2.3 利用互斥同步 158
5.2.4 利用臨界區同步 161
5.2.5 利用信號量同步 163
第6章 檔案 166
6.1 檔案基本操作 166
6.2 檔案綜合操作示例 176
6.3記憶體映射檔案187
6.3.1 記憶體映射檔案概述 187
6.3.2 利用記憶體映射檔案實現進程間通訊 190
6.4檔案系統管理 198
6.5 註冊表編程 203
6.5.1 註冊表簡介 203
6.5.2 註冊表API函式 203
6.5.3 註冊表操作舉例 207
第7章 多媒體編程 211
7.1DirectShow介紹 211
7.1.1DirectShow技術框架 212
7.1.2 過濾器(Filter) 212
7.1.3 Filter Graph Manager 213
7.1.4Pin214
7.1.5 DirectShow 接口定義介紹 214
7.2媒體播放器示例 215
7.3 攝像頭捕捉示例 236
7.3.1 攝像頭捕捉概述 236
7.3.2 攝像頭捕捉示例 238
第8章 Windows CE基礎資料庫編程 255
8.1 EDB概述 255
8.1.1 裝配數據卷 256
8.1.2 卸載資料庫卷 257
8.1.3 創建資料庫 257
8.1.4 創建會話對象 259
8.1.5 打開資料庫 259
8.1.6 事務操作 262
8.1.7 刪除資料庫 263
8.1.8枚舉資料庫卷以及資料庫 264
8.1.9 查找或移動記錄 267
8.1.10 寫記錄 270
8.1.11 讀取記錄 271
8.1.12 刪除記錄 272
8.1.13 流操作 272
8.2 資料庫操作綜合示例 274
第9章 SQLCE資料庫編程 310
9.1 SQL Server FOR CE的介紹 310
9.1.1 SQLCE簡介 310
9.1.2 SQL Server CE 3.0的安裝 311
9.1.3 SQLCE 3.0連線配置 313
9.2OLEDB編程訪問SQLCE 3.0 318
9.2.1 OLE DB 概述 318
9.2.2 OLEDB 編程 319
9.3 SQLCE遠程數據訪問 332
9.3.1 Pull(拉數據) 333
9.3.2 Push(推數據) 334
9.3.3 Submit(遠程T-SQL操作) 335
9.4 遠程數據訪問綜合示例 335
第10章 串口編程 351
10.1 串口概述 351
10.2 串口編程API函式介紹 352
10.3 CE串口綜合示例 360
10.4 GPS編程示例 378
第11章 網路編程概述 398
11.1套接字編程基礎 398
11.1.1WinSock初始化和釋放 399
11.1.2 創建套接字 401
11.1.3 關閉套接字 401
11.1.4 綁定套接字 402
11.1.5 監聽套接字 403
11.1.6 等待連線 404
11.1.7 建立連線 405
11.1.8 傳送數據 405
11.1.9 接收數據 406
11.1.10 設定套接字模式 407
11.1.11SelectI/O模型 408
11.2PING編程 410
11.2.1 PING編程概述 410
11.2.2 PING編程示例 411
11.3RAS撥號編程 414
11.3.1 建立撥號連線414
11.3.2 關閉撥號連線 418
11.3.3 列舉已建立的活動連線 419
11.3.4 列舉電話簿條目 420
第12章 UDP編程 422
12.1 UDP編程概述 422
12.2 UDP編程示例 422
第13章 TCP編程 435
13.1 TCP編程概述 435
13.2 TCP客戶端示例 435
13.3 TCP伺服器端示例 451
第14章 DLL編程 473
14.1 DLL概述 473
14.2 DLL的調用 474
14.2.1 靜態調用 474
14.2.2 動態調用 474
14.3 DLL的創建 475
14.3.1 Windows CE DLL的創建 476
14.3.2 基於MFC的Regular DLL的創建 481
14.3.3 資源DLL 486
第15章 COM編程 490
15.1 COM基本知識概述 490
15.1.1 什麼是COM 490
15.1.2 什麼是接口 490
15.1.3 COM基本結構 491
15.2 使用ATL創建COM示例 492
15.2.1 ATL對COM支持概述 492
15.2.2 ATL創建COM對象示例 493
15.2.3 創建客戶端調用CEComServer 497
15.3 可連線點對象及示例 499
15.3.1 可連線點對象概述 499
15.3.2 連線點示例 501
15.4 創建ActiveX控制項509
15.4.1ActiveX概述 509
15.4.2 使用MFC嚮導創建一個簡單的ActiveX控制項 509
……
序言
Microsoft Windows CE是一個緊湊、高效和可擴展的作業系統,適用於多種嵌入式產品。它是擁有多執行緒、多任務、確定性的實時、完全搶先式優先權的作業系統環境,專門面向只有有限資源的硬體系統。同時,它的模組化設計方式使得系統開發人員和套用開發人員能夠使用它來定製多種多樣的產品,例如客戶電子設備、專用工業控制器以及嵌入式通信設備等。
Windows CE經過10多年的風風雨雨,產生了幾個比較重要的里程碑,分別是Windows CE 3.0、Windows CE 4.2、Windows CE 5.0、Windows CE 6.0,至今Windows CE 3.0和Windows CE 4.2依舊在一些工業和商業中服役著。本書將重點基於Windows CE 5.0和Windows CE 6.0來介紹Windows CE應用程式的開發,其中絕大部分示例代碼依舊適應於Windows CE 3.0、Windows CE 4.2等老的Windows CE作業系統。
從Windows CE 5.0開始,Windows CE 5.0之上的應用程式開發,微軟推薦使用Microsoft Visual Studio 2005的Visual C++開發工具,之前我們大都採用EmbeddedVisual C++(EVC)開發工具。採用VS 2005的Visual C++開發基於Windows CE的智慧型應用程式比EVC更加方便智慧型。
目前,已經面世的Windows CE類開發書籍並不是很多,限制了許多讀者的學習空間,而本書由淺入深、循序漸進的介紹方式,理論與實際相結合的說明方法,相信會為讀者帶來耳目一新的感覺。
《EVC高級編程及其套用開發》一書是作者在2005年編著的第一本關於Windows CE應用程式開發方面的書籍,本書在《EVC高級編程及其套用開發》的基礎上進行更新升級,以適應Windows CE的發展以及開發工具的升級。
本書示例基於Windows Mobile 6平台進行講述演示,這些示例也可極其方便地套用到Windows CE 4.2、Windows CE 5.0、Windows CE 6.0等Windows CE標準平台。全書共分15章,分別為Windows CE以及開發環境概述、圖形編程、對話框控制項、進程、執行緒、檔案、多媒體編程、Windows CE基礎資料庫編程、SQLCE 3.0資料庫編程、串口編程、網路編程概述、UDP編程、TCP編程、DLL編程以及COM編程。讀者在具備一定的C++知識的基礎上,通過本書的學習,可以快速提高Windows CE的編程能力和實際開發水平。
本書主要由汪兵編寫,同時參與部分編寫工作的還有李存斌、陳鵬、李洪、郭曉鵬、樊建平、譚顯東、董威、李眾、母德寶、劉天星、胡喆、林金鐘、賴少梅等。在本書編寫過程中,得到了中國水利水電出版社計算機編輯室全體同志的大力支持和幫助,在此一併表示衷心的感謝。
由於時間倉促及作者水平有限,書中錯誤和不妥之處在所難免,敬請廣大讀者批評指正。
作 者
Windows CE經過10多年的風風雨雨,產生了幾個比較重要的里程碑,分別是Windows CE 3.0、Windows CE 4.2、Windows CE 5.0、Windows CE 6.0,至今Windows CE 3.0和Windows CE 4.2依舊在一些工業和商業中服役著。本書將重點基於Windows CE 5.0和Windows CE 6.0來介紹Windows CE應用程式的開發,其中絕大部分示例代碼依舊適應於Windows CE 3.0、Windows CE 4.2等老的Windows CE作業系統。
從Windows CE 5.0開始,Windows CE 5.0之上的應用程式開發,微軟推薦使用Microsoft Visual Studio 2005的Visual C++開發工具,之前我們大都採用EmbeddedVisual C++(EVC)開發工具。採用VS 2005的Visual C++開發基於Windows CE的智慧型應用程式比EVC更加方便智慧型。
目前,已經面世的Windows CE類開發書籍並不是很多,限制了許多讀者的學習空間,而本書由淺入深、循序漸進的介紹方式,理論與實際相結合的說明方法,相信會為讀者帶來耳目一新的感覺。
《EVC高級編程及其套用開發》一書是作者在2005年編著的第一本關於Windows CE應用程式開發方面的書籍,本書在《EVC高級編程及其套用開發》的基礎上進行更新升級,以適應Windows CE的發展以及開發工具的升級。
本書示例基於Windows Mobile 6平台進行講述演示,這些示例也可極其方便地套用到Windows CE 4.2、Windows CE 5.0、Windows CE 6.0等Windows CE標準平台。全書共分15章,分別為Windows CE以及開發環境概述、圖形編程、對話框控制項、進程、執行緒、檔案、多媒體編程、Windows CE基礎資料庫編程、SQLCE 3.0資料庫編程、串口編程、網路編程概述、UDP編程、TCP編程、DLL編程以及COM編程。讀者在具備一定的C++知識的基礎上,通過本書的學習,可以快速提高Windows CE的編程能力和實際開發水平。
本書主要由汪兵編寫,同時參與部分編寫工作的還有李存斌、陳鵬、李洪、郭曉鵬、樊建平、譚顯東、董威、李眾、母德寶、劉天星、胡喆、林金鐘、賴少梅等。在本書編寫過程中,得到了中國水利水電出版社計算機編輯室全體同志的大力支持和幫助,在此一併表示衷心的感謝。
由於時間倉促及作者水平有限,書中錯誤和不妥之處在所難免,敬請廣大讀者批評指正。
作 者