內容簡介
《Visual C++開發技術大全(第2版)》是一本Visual C++ 6.0綜合開發參考手冊,書中幾乎囊括了使用Visual C++進行程式開發的全部知識,同時在講解中結合了大量實用而又具有代表性的示例和典型套用。全書共分32章,包括認識Visual C++,C++語言基礎,C++語句控制,數組,函式,面向對象的程式設計,Win32 API,用戶界面設計,文檔與視圖,選單、工具列和狀態欄設計,通用對話框,高級控制項,ActiveX控制項,自製MFC控制項,圖形、圖像處理技術,多媒體技術,檔案操作技術,註冊表,ADO資料庫編程,數據查詢技術,圖表技術,列印技術,網路編程,Internet編程,串口數據通信,硬體相關,DLL動態程式庫,進程與執行緒,訊息處理技術,算法,輔助工具,C庫函式大全等。書中各部分技術既相互獨立又相互聯繫,可以逐步引導讀者深入學習並掌握Visual C++的編程知識、方法和技巧。
《Visual C++開發技術大全(第2版)》附有配套光碟,光碟提供了書中示例和典型套用實例的全部原始碼,所有原始碼都經過精心調試,在Windows 2000下測試通過,保證能夠正常運行。
《Visual C++開發技術大全(第2版)》內容精練、重點突出、實例豐富,是各級別程式開發人員的必備參考書,同時也非常適合大、中專院校師生閱讀。
圖書目錄
第1篇 Visual C++基礎篇
第1章 認識Visual C++ 2
1.1 Visual C++概述 3
1.1.1 Visual C++簡介 3
1.1.2 Visual C++發展歷程 3
1.1.3 Visual C++語言新特性 3
1.2 Visual C++集成開發環境 4
1.2.1 認識Visual C++開發環境 4
1.2.2 Visual C++選單介紹 5
1.2.3 Visual C++工具列 13
1.2.4 Visual C++控制項面板 15
1.2.5 開新視窗(New) 16
1.2.6 工作區視窗(Workspace) 18
1.2.7 代碼編輯器(Code Editor) 19
1.2.8 代碼瀏覽器(Source Browser) 21
1.2.9 選項視窗(Options) 21
1.3 定製開發環境 26
1.3.1 定製選單 26
1.3.2 定製工具列 27
1.3.3 定製代碼編輯器 28
1.4 應用程式的開發過程 29
1.4.1 製作一個簡單的MFC應用程式 29
1.4.2 工程檔案列表 32
第2章 C++語言基礎 33
2.1 C++檔案構成 34
2.1.1 C++頭檔案 34
2.1.2 C++源檔案 34
2.2 程式設計規範 34
2.2.1 注釋 34
2.2.2 命名 35
2.2.3 空白 35
2.2.4 縮進 36
2.3 程式設計基礎 36
2.3.1 關鍵字 36
2.3.2 標識符 37
2.3.3 常量 37
2.3.4 變數 38
2.3.5 變數的存儲類型 39
2.3.6 宏定義 40
2.4 基本數據類型 40
2.4.1 數值類型 40
2.4.2 字元類型 41
2.4.3 布爾類型 41
2.4.4 數組類型 41
2.4.5 枚舉類型 41
2.4.6 結構體類型 42
2.4.7 共用體類型 43
2.4.8 檔案類型 45
2.4.9 pair類型 48
2.4.10 指針類型 48
2.4.11 引用類型 49
2.4.12 自定義類型 50
2.5 類型轉換 50
2.6 運算符 50
2.6.1 賦值運算符 51
2.6.2 算術運算符 51
2.6.3 邏輯運算符 52
2.6.4 關係運算符 52
2.6.5 自增自減運算符 53
2.6.6 位運算符 53
2.6.7 逗號運算符 54
2.6.8 條件運算符 55
2.6.9 sizeof運算符 55
2.6.10 new和delete運算符 56
2.6.11 結合性與優先權 56
2.7 表達式 57
第3章 C++語句控制 58
3.1 語句的構成 59
3.1.1 語句的構成 59
3.1.2 複合語句 59
3.2 順序結構程式設計 60
3.3 選擇結構程式設計 60
3.3.1 if語句 60
3.3.2 switch語句 62
3.4 循環結構程式設計 65
3.4.1 goto語句 65
3.4.2 while語句 66
3.4.3 do...while語句 67
3.4.4 for語句 68
3.5 其他控制語句 68
3.5.1 break語句 68
3.5.2 continue語句 69
3.5.3 exit語句 69
3.5.4 return語句 70
3.6 異常處理語句 71
第4章 數組 74
4.1 數組的概念 75
4.2 一維數組 75
4.2.1 一維數組的聲明 75
4.2.2 一維數組元素的引用 75
4.2.3 一維數組的基本操作 76
4.3 二維數組及多維數組 77
4.3.1 二維數組的聲明 77
4.3.2 二維數組的引用 77
4.3.3 二維數組的基本操作 77
4.3.4 多維數組的聲明和引用 79
4.4 指向數組的指針 79
4.4.1 指向一維數組的指針 79
4.4.2 指向二維數組的指針 79
4.5 指針數組 80
4.6 數組的操作 81
4.6.1 數組的輸入 82
4.6.2 數組的輸出 82
4.6.3 數組的排序 82
4.6.4 數組的插入 83
4.6.5 數組的刪除 84
4.7 數組套用 85
4.7.1 順序查找 85
4.7.2 有序數組折半查找 86
第5章 函式 88
5.1 函式的聲明和定義 89
5.1.1 函式的聲明 89
5.1.2 函式的定義 89
5.1.3 函式的調用 89
5.2 參數的默認值 90
5.3 形參表可變的函式 90
5.4 參數傳遞方式 91
5.4.1 值傳遞 91
5.4.2 引用傳遞 92
5.4.3 常量參數 93
5.5 利用數組作為函式參數 94
5.6 內聯函式 95
5.7 函式的遞歸調用 95
5.8 函式重載 96
5.9 函式指針 97
5.9.1 函式指針 97
5.9.2 函式指針數組 97
5.10 函式模板 98
5.11 局部變數與全局變數 99
第2篇 用戶界面設計篇
第6章 面向對象的程式設計 101
6.1 類 102
6.1.1 類的概念 102
6.1.2 類的聲明 102
6.2 對象 102
6.2.1 對象的聲明和實例化 102
6.2.2 類與對象的關係 102
6.2.3 類成員的訪問 102
6.2.4 類成員的保護 102
6.2.5 實現類的方法 103
6.3 構造函式和析構函式 104
6.3.1 默認構造函式 104
6.3.2 重載構造函式 104
6.3.3 複製構造函式 105
6.3.4 析構函式 106
6.4 繼承 107
6.4.1 單一繼承 107
6.4.2 覆蓋成員函式 109
6.4.3 虛函式 111
6.4.4 純虛函式 112
6.4.5 多重繼承 113
6.5 高級方法 117
6.5.1 內聯方法 117
6.5.2 靜態成員數據和靜態方法 117
6.5.3 友元類和友元函式 118
6.5.4 const方法 120
6.5.5 運算符重載 121
6.6 模板 123
6.6.1 模板的聲明和實例化 123
6.6.2 模板的實現 123
6.6.3 模板套用 123
第7章 Win32 API 125
7.1 句柄的介紹 126
7.2 API函式簡介 126
7.3 常用API函式 127
7.4 API調用 140
7.5 利用API開發Win32應用程式 141
第8章 用戶界面設計 146
8.1 控制項的畫法 147
8.1.1 放置和選定控制項 147
8.1.2 控制項的縮放與移動 147
8.1.3 控制項的複製與刪除 147
8.1.4 控制項的對齊 147
8.2 常用MFC控制項 149
8.2.1 靜態控制項CStatic 149
8.2.2 編輯框控制項CEdit 152
8.2.3 按鈕控制項CButton 156
8.2.4 列表框控制項CListBox 158
8.2.5 組合框控制項CComboBox 161
8.2.6 滾動條控制項CScrollBar 163
8.2.7 進度條控制項CProgressCtrl 167
8.2.8 時間控制項CDateTimeCtrl 168
8.3 對話框設計 170
8.3.1 對話框簡介 170
8.3.2 模態對話框與非模態對話框 171
8.3.3 對話框資源設計 171
8.3.4 對話框常用方法 172
8.3.5 向對話框類中添加成員函式 178
8.3.6 向對話框中添加控制項訊息處理函式 179
8.3.7 利用對話框設計登錄視窗 179
8.3.8 共享對話框資源 181
第9章 文檔與視圖 183
9.1 文檔/視圖結構簡介 184
9.1.1 文檔/視圖結構概述 184
9.1.2 創建文檔/視圖結構應用程式 184
9.2 文檔/視圖結構的創建 185
9.2.1 文檔模板的創建 185
9.2.2 文檔的創建 186
9.2.3 框架與視圖的創建 188
9.3 文檔模板 190
9.3.1 文檔管理器 190
9.3.2 文檔模板 192
9.4 文檔對象 194
9.4.1 文檔對象的主要方法 194
9.4.2 文檔的初始化 195
9.4.3 保存文檔 195
9.4.4 文檔的命令處理 196
9.4.5 文檔的銷毀 197
9.5 視圖對象 199
9.5.1 視圖對象的主要方法 199
9.5.2 視圖的初始化 200
9.5.3 視圖的繪製 200
9.5.4 視圖的銷毀 201
9.6 框架視窗 203
9.6.1 框架對象的主要方法 203
9.6.2 框架的初始化 204
9.6.3 命令訊息處理 204
9.7 文檔/視圖的典型套用 205
9.7.1 利用文檔/視圖結構進行列印 205
9.7.2 修改文檔/視圖結構默認的列印預覽 209
第10章 選單、工具列和狀態欄設計 212
10.1 選單 213
10.1.1 選單資源的設計 213
10.1.2 選單的命令處理 214
10.1.3 選單的主要方法 214
10.1.4 動態創建選單 217
10.1.5 具有圖示的選單 218
10.1.6 自繪彈出選單 222
10.2 工具列 224
10.2.1 工具列設計 224
10.2.2 工具列按鈕的命令處理 225
10.2.3 工具列的主要方法 226
10.2.4 動態創建工具列 227
10.2.5 具有熱點效果的工具列 228
10.2.6 具有提示功能的工具列 229
10.2.7 具有下拉按鈕的工具列 230
10.3 狀態欄 233
10.3.1 狀態欄的主要方法 233
10.3.2 動態創建狀態欄 234
10.3.3 在狀態欄中顯示滾動字幕 235
第11章 通用對話框 237
11.1 檔案對話框 238
11.1.1 檔案對話框的主要方法 238
11.1.2 檔案對話框的典型套用 240
11.2 查找、替換對話框 240
11.2.1 查找、替換對話框的主要方法 240
11.2.2 查找、替換對話框的典型套用 242
11.3 字型對話框 243
11.3.1 字型對話框的主要方法 243
11.3.2 字型對話框的典型套用 244
11.4 顏色對話框 245
11.4.1 顏色對話框的主要方法 245
11.4.2 顏色對話框的典型套用 245
11.5 列印對話框 246
11.5.1 列印對話框的主要方法 246
11.5.2 列印對話框的典型套用 248
11.6 頁面設定對話框 249
11.6.1 頁面設定對話框的主要方法 250
11.6.2 頁面設定對話框的典型套用 250
11.7 定製通用對話框 252
11.7.1 檔案瀏覽對話框 252
11.7.2 Windows新型打開對話框 253
11.7.3 顯示時鐘的檔案對話框 253
11.7.4 具有圖像預覽功能的檔案對話框 254
第12章 高級控制項 256
12.1 標籤控制項CTabCtrl 257
12.1.1 標籤控制項的主要屬性 257
12.1.2 標籤控制項的主要方法 257
12.1.3 標籤控制項的典型套用 259
12.2 圖像列表控制項CImageList 261
12.2.1 圖像列表控制項的主要方法 261
12.2.2 圖像列表控制項的典型套用 263
12.3 列表視圖控制項CListCtrl 264
12.3.1 列表視圖控制項的主要屬性 264
12.3.2 列表視圖控制項的主要方法 264
12.3.3 列表視圖控制項的典型套用 268
12.4 樹視圖控制項CTreeCtrl 270
12.4.1 樹視圖控制項的主要屬性 270
12.4.2 樹視圖控制項的主要方法 271
12.4.3 樹視圖控制項的典型套用 274
第13章 ActiveX控制項 277
13.1 ActiveX控制項介紹 278
13.2 添加ActiveX控制項 278
13.3 自製ActiveX控制項 278
13.3.1 創建ActiveX控制項 278
13.3.2 繪製ActiveX控制項視窗 280
13.3.3 為ActiveX控制項添加屬性 281
13.3.4 為ActiveX控制項添加方法 282
13.3.5 為ActiveX控制項添加事件 282
13.3.6 為ActiveX控制項添加屬性頁 283
13.3.7 註冊ActiveX控制項 284
13.3.8 使用自製的ActiveX控制項 284
13.4 常用ActiveX控制項 285
13.4.1 利用CAdodc控制項運算元據庫 285
13.4.2 利用DataGrid控制項顯示數據集數據 287
13.4.3 利用CBarCodeCtrl控制項列印條形碼 289
13.4.4 利用CWebBrowser2控制項瀏覽網頁 290
第14章 自製MFC控制項 293
14.1 特殊的按鈕控制項 294
14.1.1 熱點按鈕控制項 294
14.1.2 圓形按鈕控制項 296
14.2 自定義編輯控制項 298
14.2.1 只允許輸入數字的編輯框 298
14.2.2 具有點陣圖背景的編輯框 299
14.3 點陣圖背景列表框 300
14.4 顏色選擇組合框 302
14.5 自繪滾動條控制項 303
14.6 可以顯示百分比的進度條控制項 308
14.7 自繪滑塊控制項 309
14.8 似Windows資源管理器的列表控制項 311
14.9 三態效果樹控制項 316
第3篇 檔案、圖形與多媒體篇
第15章 圖形、圖像處理技術 320
15.1 圖形設備接口 321
15.2 GDI對象 321
15.2.1 畫筆CPen 321
15.2.2 畫刷CBrush 324
15.2.3 點陣圖CBitmap 326
15.2.4 區域CRgn 328
15.2.5 字型CFont 332
15.2.6 設備上下文CDC 334
15.2.7 調色板CPalette 340
15.3 常用圖像存儲格式 342
15.3.1 點陣圖 342
15.3.2 圖示 343
15.3.3 GIF圖像 344
15.4 文本輸出 346
15.4.1 在指定位置輸出文本 346
15.4.2 在指定區域輸出文本 347
15.4.3 利用定位點輸出文本 348
15.4.4 設定字型、顏色及對齊方式 349
15.4.5 設定文本背景透明 351
15.5 繪製圖形圖像 352
15.5.1 利用線條繪製表格 352
15.5.2 繪製多邊形 353
15.5.3 填充區域 354
15.5.4 填充選區 355
15.5.5 線條的漸變 355
15.5.6 區域的漸變 356
15.5.7 繪製點陣圖 357
15.5.8 顯示JPEG 359
15.6 GDI+程式設計 360
15.6.1 使用GDI+為圖像添加水印 360
15.6.2 使用GDI+進行圖像轉換 362
第16章 多媒體技術 365
16.1 視頻捕捉 366
16.1.1 VFW簡介 366
16.1.2 視窗類AVICap 366
16.1.3 AVI格式 367
16.1.4 VFW視頻捕捉流程 370
16.1.5 視頻捕捉視窗 371
16.1.6 視頻捕捉設定 372
16.1.7 AVICap回調函式 372
16.1.8 利用攝像頭進行圖像採集 373
16.2 DirectShow程式設計 374
16.2.1 DirectShow簡介 374
16.2.2 Filter的註冊 375
16.2.3 DirectShow事件通知機制 375
16.2.4 利用Direct Show進行音頻捕捉 375
16.3 控制項在多媒體方面的套用 379
16.3.1 利用CAnimateCtrl播放動畫 379
16.3.2 播放Flash動畫 381
16.3.3 利用CAnimation控制項播放AVI檔案 384
16.3.4 利用CMediaPlayer2控制項播放多媒體檔案 385
16.3.5 利用RealOne控制項製作媒體播放器 388
第17章 檔案操作技術 392
17.1 數據的串列化 393
17.1.1 檔案類CFile 394
17.1.2 已分享檔案類CShareFile 397
17.1.3 數據流類CMonikerFile 398
17.1.4 檔案流類CStdioFile 399
17.1.5 檔案查找類CFileFind 400
17.2 INI檔案 402
17.2.1 INI檔案的設計結構和數據類型 402
17.2.2 讀取和寫入INI檔案 403
第18章 註冊表 408
18.1 註冊表的基礎知識 409
18.2 註冊表函式 409
18.3 CRegKey類 418
18.4 註冊表的典型套用 419
18.4.1 將套用軟體的使用次數寫入註冊表 419
18.4.2 通過註冊表最佳化系統 420
第4篇 資料庫技術篇
第19章 ADO資料庫編程 424
19.1 ADO概述 425
19.2 ADO對象 425
19.2.1 連線對象Connection 425
19.2.2 命令對象Command 426
19.2.3 記錄集對象Recordset 427
19.2.4 參數對象Parameter 428
19.3 利用ADO對象運算元據庫 429
19.3.1 連線資料庫 429
19.3.2 獲取記錄集數據 432
19.3.3 遍歷記錄集 433
19.3.4 向記錄集中添加數據 435
19.3.5 修改記錄集數據 438
19.3.6 刪除記錄集數據 439
19.4 數據添加 440
19.4.1 將圖片添加到資料庫 440
19.4.2 將聲音檔案添加到資料庫 443
19.4.3 將電子表格內容添加到資料庫 445
19.5 刪除記錄 448
19.5.1 刪除符合條件的記錄 448
19.5.2 刪除所有記錄 449
19.6 更新記錄 449
19.6.1 更新符合條件的記錄 449
19.6.2 為空欄位設定默認數據 450
第20章 數據查詢技術 452
20.1 簡單查詢 453
20.1.1 去除重複行 453
20.1.2 條件查詢 456
20.1.3 計算列查詢 457
20.1.4 用TOP子句查詢前幾個記錄 457
20.1.5 數據分組統計 458
20.2 模糊查詢 459
20.2.1 單個字元匹配查詢 460
20.2.2 指定範圍內單個字元匹配查詢 460
20.2.3 多個字元匹配查詢 461
20.2.4 利用模糊查詢實現聯想錄入 462
20.3 時間段查詢 465
20.3.1 利用Between…and進行時間段查詢 465
20.3.2 利用關係表達式進行時間段查詢 466
20.3.3 利用日期函式進行查詢 467
20.4 聚集函式查詢 468
20.4.1 利用聚集函式SUM查詢 468
20.4.2 利用聚集函式AVG查詢 469
20.4.3 利用聚集函式COUNT查詢 470
20.5 視圖 470
20.5.1 視圖的簡單套用 471
20.5.2 利用視圖簡化查詢 472
20.5.3 利用視圖修改數據 473
第21章 圖表技術 474
21.1 圖表的基本用法 475
21.1.1 認識MSChart控制項 475
21.1.2 圖表的組成 475
21.1.3 通過屬性視窗設定圖表外觀 476
21.1.4 MSChart控制項的常用方法 476
21.2 圖表與數據的關聯 478
21.2.1 與數據源關聯 478
21.2.2 與記錄關聯 479
21.3 圖表的複製貼上 479
21.3.1 複製圖表 479
21.3.2 貼上圖表 481
21.4 不同類型圖表的典型套用 481
21.4.1 柱形圖表分析商品銷售情況 481
21.4.2 對比圖表分析 482
21.4.3 折線圖表分析產品價格趨勢 482
21.4.4 餅型圖表分析商品日銷售額 483
21.4.5 三維圖表示例 484
第22章 列印技術 486
22.1 基本概念 487
22.1.1 印表機介紹 487
22.1.2 解析度 487
22.1.3 設備環境 488
22.1.4 映射模式 491
22.2 基於文檔、視圖結構的列印 492
22.2.1 文檔、視圖結構列印流程 492
22.2.2 列印圖像 496
22.2.3 自定義列印預覽 499
22.3 基於對話框結構的列印 500
22.3.1 獲取印表機DC 501
22.3.2 列印對話框及其控制項中的數據 502
22.3.3 列印窗體 503
22.4 列印控制 504
22.4.1 橫向列印 504
22.4.2 設定列印表格的邊線及字型 505
22.5 格式列印 508
22.5.1 圖表列印 508
22.5.2 發票列印 509
22.5.3 假條套打 513
22.5.4 條形碼列印 515
第5篇 網路通信篇
第23章 網路編程 518
23.1 網路編程基礎 519
23.1.1 OSI參考模型 519
23.1.2 TCP/IP協定簇 519
23.1.3 套接字簡介 520
23.1.4 客戶、伺服器模式 521
23.2 套接字函式 521
23.2.1 accpet函式 521
23.2.2 bind函式 521
23.2.3 closesocket函式 522
23.2.4 connect函式 522
23.2.5 htons函式 522
23.2.6 htonl函式 522
23.2.7 inet_addr函式 523
23.2.8 listen函式 523
23.2.9 recv函式 523
23.2.10 select函式 523
23.2.11 send函式 524
23.2.12 socket函式 524
23.2.13 WSAStartup函式 524
23.2.14 WSACleanup函式 525
23.2.15 WSAAsyncSelect函式 525
23.3 套接字函式使用技巧 525
23.3.1 套接字的斷開重連 525
23.3.2 設定逾時連線 527
23.3.3 釋放套接字資源 527
23.4 WinSock類 528
23.4.1 CAsyncSocket類 528
23.4.2 CSocket類 531
23.5 開發網路應用程式 532
23.5.1 利用Windows Socket API開發網路應用程式 532
23.5.2 利用WinSock類開發網路應用程式 535
第24章 Internet編程 540
24.1 Internet編程技術 541
24.1.1 通信應用程式設計接口MAPI 541
24.1.2 WinInet編程 546
24.1.3 Interent信息伺服器IIS編程 558
24.2 Internet程式開發 568
24.2.1 利用MAPI傳送電子郵件 568
24.2.2 下載FTP伺服器上的檔案 572
24.2.3 開發ISAPI伺服器擴展程式 573
24.3 常用網路技術 575
24.3.1 HTTP多執行緒檔案下載 575
24.3.2 修改計算機的網路名稱 577
24.3.3 利用TAPI實現網路撥號 578
第25章 串口數據通信 581
25.1 串口通信基礎 582
25.1.1 串口通信原理 582
25.1.2 串口通信的特點 582
25.1.3 串口通信的傳輸方式 582
25.1.4 串口通信同步技術 582
25.1.5 串列接口標準 583
25.2 用API函式實現串口編程 584
25.2.1 API函式串口編程簡介 584
25.2.2 常用串口編程API函式 584
25.2.3 用API函式實現串口通信 593
25.3 MSComm控制項串口通信開發 596
25.3.1 MSComm控制項簡介 596
25.3.2 MSComm控制項常用方法 596
25.3.3 MSComm控制項常用事件 598
25.3.4 利用MSComm控制項開發串口程式 598
第6篇 Windows編程篇
第26章 硬體相關 601
26.1 加密狗、加密鎖 602
26.1.1 加密狗和加密鎖介紹 602
26.1.2 向加密狗中寫入數據 602
26.1.3 使用加密狗進行用戶身份驗證 603
26.1.4 向加密鎖中寫入數據 604
26.1.5 使用加密鎖進行用戶身份驗證 605
26.2 IC卡、ID卡 606
26.2.1 IC卡、ID卡介紹 606
26.2.2 讀寫IC卡中數據 607
26.2.3 使用ID卡進行考勤 610
26.3 攝像頭、雲台 612
26.3.1 使用攝像頭進行監控 612
26.3.2 使用攝像頭製作監控錄像 614
26.3.3 使用雲台控制監控 615
26.4 條碼掃描器、數據採集器 619
26.4.1 利用條碼掃描器設計圖書借閱 619
26.4.2 使用數據採集器進行庫存檔點 621
26.5 簡訊貓 622
26.5.1 簡訊貓介紹 623
26.5.2 利用簡訊貓群發簡訊 623
26.5.3 使用簡訊貓進行自動回復 624
26.6 語音卡 628
26.6.1 語音卡介紹 628
26.6.2 語音卡電話呼叫系統 628
26.6.3 語音卡實現來電顯示 632
26.6.4 利用語音卡實現電話錄音 635
26.6.5 利用語音卡實現自助服務 637
26.7 指紋頭、遊戲桿 640
26.7.1 指紋頭介紹 640
26.7.2 利用指紋頭進行身份識別 640
26.7.3 遊戲桿介紹 643
26.7.4 使用遊戲桿開發貪吃蛇遊戲 644
第27章 DLL動態程式庫 650
27.1 動態程式庫簡介 651
27.1.1 DLL的構成 651
27.1.2 DLL映射到進程空間 651
27.2 創建動態程式庫 652
27.2.1 創建MFC動態程式庫 652
27.2.2 創建Win32靜態程式庫 654
27.2.3 創建Win32動態程式庫 656
27.3 動態程式庫中的資源 658
27.3.1 資源的名稱和類型 658
27.3.2 資源模組 658
27.3.3 在模組中查找和載入資源 660
27.3.4 修改執行檔中的資源 661
27.4 鉤子函式 663
27.4.1 鉤子技術 663
27.4.2 鉤子類型和範圍 663
27.4.3 安裝和解除鉤子 663
27.4.4 鉤子套用實例 666
第28章 進程與執行緒 670
28.1 基礎知識 671
28.1.1 什麼是進程 671
28.1.2 什麼是執行緒 671
28.1.3 執行緒的生命周期 671
28.2 進程記憶體管理 672
28.2.1 進程的創建 672
28.2.2 虛擬記憶體空間 674
28.2.3 進程間記憶體共享 674
28.3 執行緒技術 677
28.3.1 用戶界面執行緒 677
28.3.2 工作者執行緒 677
28.4 執行緒操作 677
28.4.1 創建執行緒 677
28.4.2 終止執行緒 678
28.4.3 執行緒間通信 679
28.4.4 執行緒同步 680
第29章 訊息處理技術 686
29.1 訊息映射 687
29.1.1 基本概念 687
29.1.2 訊息映射表 687
29.1.3 訊息映射宏 687
29.2 訊息處理 695
29.2.1 處理標準視窗訊息 695
29.2.2 處理命令訊息 696
29.2.3 處理反射訊息 697
29.2.4 傳送訊息 698
29.2.5 自定義訊息 700
29.2.6 跨進程處理訊息 702
第7篇 輔助開發篇
第30章 算法 705
30.1 算法概述 706
30.1.1 什麼是算法 706
30.1.2 算法的特點 706
30.1.3 算法的描述方法 706
30.2 排序算法 707
30.2.1 選擇法排序 707
30.2.2 冒泡法排序 708
30.2.3 交換法排序 709
30.2.4 插入法排序 710
30.2.5 快速排序 711
30.3 轉換類算法 712
30.3.1 8421碼轉換 712
30.3.2 進制轉換 713
30.3.3 數字金額轉換為大寫漢字 716
30.3.4 提取漢字的拼音簡碼 718
30.3.5 漢字與區位碼之間的相互轉換 719
30.4 套用類算法 720
30.4.1 身份證升位算法 720
30.4.2 怎樣存錢利息最多算法 721
30.4.3 根據貸款利率和還款年限計算每個月的還款額度 723
第31章 輔助工具 726
31.1 ActiveX Control Test Container 727
31.2 API Text Viewer 728
31.3 DataObject Viewer 729
31.4 DDE Spy 729
31.5 Depends 730
31.6 DocFile Viewer 730
31.7 Error Lookup 731
31.8 OLE Client Test 731
31.9 OLE Server Test 732
31.10 OLE View 732
31.11 Process Viewer 733
31.12 ROT Viewer 733
31.13 Spy++ 734
31.14 Tracer 735
31.15 WinDiff 735
31.16 Windows NT Symbols Setup 736
31.17 ZoomIn 737
第32章 C庫函式大全 738
32.1 數學函式 739
32.2 字元函式和字元串函式 745
32.2.1 字元函式 745
32.2.2 字元串函式 747
32.3 時間日期函式 752
32.4 類型轉換函式 755
32.5 檔案目錄操作函式 758
32.6 記憶體操作函式 759
32.7 輸入輸出函式 760
實例索引 768