Visual C++技術內幕(第四版)修訂版

Visual C++技術內幕(第四版)修訂版

《Visual C++技術內幕(第4版)》是2009年清華大學出版社出版的圖書。

基本介紹

  • 中文名:Visual C++技術內幕(第四版)修訂版
  • 語言:中文
  • 出版時間:2009年 
  • 出版社:清華大學出版社 
  • ISBN:9787302197218
  • 定價:99 元
  • 裝幀:平裝
  • 印次:1-2
  • 印刷日期:2009-11-4
圖書簡介,圖書目錄,

圖書簡介

《Visual C++技術內幕(第4版)》是一本富有傳奇色彩的計算機圖書。它的作者不幸遇難,留下了第4版絕筆;它壓倒了第5、6版的鋒頭,現在要重印這一版本也說明了這一點。

圖書目錄

第一部分Windows、Visual C++和應用程式框架基礎
第一章Microsoft Windows和Visual C++3
1.1Windows的編程模式3
1.1.1訊息處理3
1.1.2Windows的圖形設備接口(GDI)4
1.1.3基於資源的程式設計4
1.1.4記憶體管理4
1.1.5動態連線庫(DLL)5
1.1.6Win32應用程式編程接口5
1.2Visual C++的組成5
1.2.1Microsoft Developer Studio 97和創建過程6
1.2.2資源編輯器——Workspace ResourceView8
1.2.3C/C++編譯器8
1.2.4資源編譯器9
1.2.5連線器9
1.2.6調試器9
1.2.7AppWizard9
1.2.8ClassWizard10
1.2.9源程式瀏覽器10
1.2.10在線上幫助11
1.2.11Windows診斷工具12
1.2.12原始碼控制12
1.2.13Gallery12
1.2.14Microsoft基本類庫4.21版13
1.2.15Microsoft ActiveX 模板庫13
第二章Microsoft基本類庫應用程式框架14
2.1為什麼要使用應用程式框架14
2.1.1學習曲線17
2.2什麼是應用程式框架18
2.2.1應用程式框架和MFC庫18
2.2.2應用程式框架示例18
2.3MFC庫訊息映射21
2.3.1文檔和視圖22
第二部分MFC庫中的視圖類
第三章從“Hello,world!\”著手學習AppWizard27
3.1什麼是視圖27
3.2單文檔界面(SDI)和多文檔界面(MDI)28
3.3“不做任何事情”的應用程式28
3.4CEx03aView視圖類32
3.5在視窗內繪圖——Windows的圖形設備接口32
3.5.1OnDraw成員函式33
3.5.2Windows設備環境33
3.5.3往EX03A程式中加入繪製代碼33
3.6資源編輯器簡介35
3.6.1ex03a.rc的內容35
3.6.2運行對話框資源編輯器36
3.7Win32 Debug目標和Win32 Release目標37
3.8允許診斷宏37
3.9對預編譯頭檔案的理解38
3.10兩種方法運行程式39
第四章基本事件處理、映射模式和滾動視圖40
4.1獲取用戶輸入——訊息映射函式40
4.1.1訊息映射40
4.1.2保存視圖的狀態類數據成員41
4.1.3初始化視圖類數據成員42
4.1.4使矩形區域無效42
4.1.5Windows的客戶區域42
4.1.6CRect,CPoint和CSize類的運算43
4.1.7一個點是否在矩形內43
4.1.8CRect的LPRECT操作符43
4.1.9一個點是否在橢圓內44
4.2EX04A示例程式44
4.3對EX04A使用ClassWizard48
4.3.1同時使用AppWizard和ClassWizard49
4.4映射模式51
4.4.1MM-TEXT映射模式52
4.4.2“固定比例”映射模式53
4.4.3“可變比例”映射模式53
4.4.4坐標變換54
4.4.5EX04B示例程式——轉換到MM-HIMETRIC映射模式56
4.5滾動視窗57
4.5.1視窗比人們所見到的要大57
4.5.2滾動條58
4.5.3滾動方式的選擇58
4.5.4OnInitialUpdate函式58
4.5.5接收鍵盤輸入58
4.5.6EX04C滾動示例程式59
4.6其他Windows訊息62
4.6.1WM-CREATE訊息62
4.6.2WM-CLOSE訊息63
4.6.3WM-QUERYENDSESSION訊息63
4.6.4WM-DESTROY訊息63
4.6.5WM-NCDESTROY訊息63
第五章圖形設備接口(GDI)、顏色及字型64
5.1設備環境類64
5.1.1顯示設備環境類CClientDC和CWindowDC65
5.1.2構造和析構CDC對象65
5.1.3設備環境的狀態66
5.1.4CPaint DC類66
5.2GDI對象67
5.2.1GDI對象的構造與析構67
5.2.2跟蹤GDI對象67
5.2.3庫存的GDI對象68
5.2.4GDI選擇的有效期69
5.3Windows的顏色映射70
5.3.1標準視頻圖形陣列(VGA)顯示卡70
5.3.2256色顯示卡71
5.3.316位顏色顯示卡71
5.3.424位顏色顯示卡72
5.4字型72
5.4.1字型是GDI對象72
5.4.2選擇字型72
5.4.3列印字型73
5.4.4顯示字型73
5.4.5顯示器的邏輯英寸和物理英寸73
5.4.6計算字元高度74
5.5EX05A示例程式75
5.5.1EX05A程式的組成元素78
5.6EX05B程式79
5.6.1EX05B程式的組成元素82
5.7EX05C示例程式——再次使用CScrollView82
5.7.1EX05C程式的組成元素86
5.7.2CScrollView的SetScaleToFitSize模式87
5.7.3在滾動視圖中使用邏輯twips映射模式88
第六章模式對話框和Windows通用控制項89
6.1模式和無模式對話框89
6.2資源和控制項90
6.3模式對話框的編程90
6.4包羅萬象的對話框——EX06A示例程式91
6.4.1創建對話框資源92
6.4.2ClassWizard和對話框類99
6.4.3將對話框與視圖相連線102
6.4.4深入理解EX06A應用程式104
6.5對話框程式的改進105
6.5.1獲得OnOK退出控制106
6.5.2OnCancel處理107
6.5.3和滾動條控制項掛上鉤107
6.6控制項的標識:CWnd指針和控制項ID109
6.7設定對話框的背景色和其中控制項的顏色109
6.8在對話框視窗內繪圖111
6.9在運行時加入對話框控制項111
6.10利用其他的控制項特性112
6.11Windows通用控制項112
6.11.1進度指示器控制項113
6.11.2滑桿條(Trackbar)控制項113
6.11.3微調按鈕控制項114
6.11.4列表控制項114
6.11.5樹狀控制項114
6.11.6WM-NOTIFY訊息115
6.12EX06B示例程式115
6.13其他Windows通用控制項125
第七章無模式對話框和Windows通用對話框類126
71無模式對話框126
711創建無模式對話框126
712用戶定義的訊息127
713對話框的歸屬127
714無模式對話框的例子——EX07A127
72CFormView類——另外一種可供選擇的無模式對話框134
73Windows通用對話框134
731直接使用CFileDialog類134
732從通用對話框類進行派生135
733嵌套對話框135
734使用CFileDialog的一個例子——EX07B135
735CFileDialog的其他可定製特性141
第八章使用ActiveX控制項142
81ActiveX控制項和普通的Windows控制項142
811普通的Windows控制項——參考體系142
812ActiveX控制項與普通控制項的相同點143
813ActiveX控制項與普通控制項的不同點——屬性和方法143
82安裝ActiveX控制項144
83日曆控制項145
84ActiveX控制項包容器編程147
841屬性訪問147
842ClassWizard為ActiveX控制項產生的C++類148
843AppWizard對ActiveX控制項的支持150
844ClassWizard和包容器對話框150
845對話框類數據成員和控制項類的用法150
846映射ActiveX控制項事件151
847把ActiveX控制項鎖定在記憶體里152
85EX08A示例程式——ActiveX控制項對話框包容器152
86ActiveX控制項在HTML檔案中的使用160
87在運行時創建ActiveX控制項160
88EX08B示例程式——Web瀏覽器ActiveX控制項161
89EX08C示例程式——一個完整的雙視窗瀏覽器165
810圖形屬性165
811約束屬性——改變通知166
812其他的ActiveX控制項167
第九章Win32記憶體管理168
91進程和記憶體空間168
911Windows 95進程地址空間170
912Windows NT進程地址空間170
92虛擬記憶體如何工作170
93VirtualAlloc函式——占用和保留記憶體173
94Windows堆和GlobalAlloc函式族173
95小記憶體堆,C++的new和delete操作符,-heapmin174
96記憶體映射檔案175
97訪問資源176
98管理動態記憶體的一些提示177
99常量數據的最佳化存儲177
第十章點陣圖179
101GDI點陣圖和與設備無關的點陣圖179
102彩色點陣圖和單色點陣圖180
103使用GDI點陣圖180
1031從資源中裝入GDI點陣圖180
1032顯示映射模式的作用181
1033對位進行伸縮處理182
1034EX10A示例程式182
104利用點陣圖改進螢幕顯示185
1041EX10B示例程式185
1042Windows動畫189
105DIB和CDib類190
1051關於調色板編程的術語190
1052DIB、象素和顏色表191
1053BMP檔案中DIB的結構192
1054DIB訪問函式193
1055CDib類193
1056DIB顯示性能198
1057EX10C示例程式199
106進一步使用DIB202
1061LoadImage函式202
1062DrawDibDraw函式203
107在按鈕上設定點陣圖204
1071EX10D示例程式205
1072進一步使用點陣圖按鈕208
第十一章Windows訊息處理和多執行緒編程209
111Windows訊息處理209
1111單執行緒程式處理訊息的過程209
1112交出控制210
1113計時器210
1114EX11A示例程式211
112空狀態處理214
113多執行緒編程215
1131編寫輔助執行緒函式和啟動執行緒215
1132主執行緒如何和輔助執行緒通話216
1133輔助執行緒如何和主執行緒通話217
1134EX11B示例程式217
1135用事件使執行緒同步219
1136EX11C示例程式219
1137執行緒阻塞221
1138排斥區222
1139互斥體(mutex)和信號(semaphore)223
11310用戶界面執行緒(UI執行緒)224
第三部分文檔視圖結構
第十二章選單、鍵盤加速鍵、復文本編輯控制項和屬性表227
121主框架視窗和文檔類227
122Windows的選單228
123鍵盤加速鍵229
124命令處理229
1241派生類中的命令訊息控制230
1242更新命令用戶界面訊息控制函式231
1243對話框傳送的命令231
125應用程式框架的內含選單項232
126選單項的允許/禁用232
127MFC文本編輯選擇233
1271CEditView類233
1272CRichEditView類233
1273CRichEditCtrl類233
128EX12A示例程式234
129屬性表239
1291創建屬性表239
1292屬性表數據交換239
1210改進EX12A示例程式240
1211Apply按鈕的處理過程254
1212CMenu類254
1213創建浮動的彈出式選單255
1214擴展命令處理256
第十三章工具列和狀態欄258
131控制欄和應用程式框架258
132工具列259
1321工具列點陣圖259
1322按鈕的狀態259
1323工具列和命令訊息260
1324工具列更新命令UI訊息控制函式261
133工具提示261
134尋找主框架視窗261
135EX13A工具列示例程式262
136狀態欄267
1361狀態欄的定義267
1362信息行268
1363狀態指示器268
1364獲得對狀態欄的控制268
137EX13B狀態欄示例程式269
第十四章可重用框架視窗基類275
141為什麼可重用基類難以設計275
142CPersistentFrame類276
143CFrameWnd類和ActivateFrame成員函式276
144PreCreateWindow成員函式277
145Windows註冊表278
146使用CString類280
147最大化視窗的位置281
148控制欄狀態和註冊表282
149靜態數據成員282
1410默認視窗矩形282
1411EX14A示例程式283
1412MDI應用程式中的持續框架289
第十五章文檔與視圖的分離291
15.1文檔\|視圖之間的相互作用函式291
15.1.1CView∷GetDocument函式291
15.1.2CDocumeat∷Update AllViews函式292
15.1.3CView∷OnUpdate函式293
15.1.4CView∷OnInitialUpdate函式293
15.1.5CDocument∷OnNewDocument函式293
15.2最簡單的文檔\|視圖應用程式294
15.3CFormView類294
15.4CObject類295
15.5診斷信息轉儲296
15.5.1TRACE宏296
15.5.2afxDump對象296
15.5.3信息轉儲環境及CObject類297
15.5.4未被刪除對象的自動信息轉儲298
15.6EX15A示例程式300
15.7更加高級的文檔\|視圖之間的相互作用307
15.8CDocument∷DeleteContents函式308
15.9CObList集合類308
15.9.1對先入先出列表使用CObList類309
15.9.2在CObList中進行疊代——POSITION變數310
15.9.3CTypedPtrList模板集合類311
15.9.4信息轉儲環境及集合類312
15.10EX15B示例程式313
15.10.1資源要求314
15.10.2代碼要求315
15.10.3CStudentDoc316
15.10.4CStudentView320
15.10.5測試EX15B應用程式330
15.11留給讀者的兩個練習330
第十六章讀和寫文檔——SDI應用程式331
16.1什麼是序列化331
16.1.1磁碟檔案和歸檔(Archives)332
16.1.2使類可序列化332
16.1.3編寫Serialize函式333
16.1.4從歸檔中載入——內嵌對象和指針334
16.1.5使集合序列化335
16.1.6Serialize函式和應用程式框架336
16.2SDI應用程式336
16.2.1Windows應用程式對象336
16.2.2文檔模板類337
16.2.3文檔模板資源339
16.2.4SDI文檔的多視圖339
16.2.5創建空文檔——CWinApp∷OnFileNew函式339
16.2.6文檔類的OnNewDocument函式340
16.2.7連線File Open與序列化代碼——OnFileOpen函式340
16.2.8文檔類的DeleteContents函式341
16.2.9將File Save和File Save As與序列化代碼相連線341
16.2.10文檔的“髒”標誌342
16.3EX16A——序列化SDI示例程式342
16.3.1CStudent343
16.3.2CEx16aApp343
16.3.3CFrameWnd348
16.3.4CStudentDoc352
16.3.5CStudentView353
16.3.6測試EX16A應用程式353
16.4從Explorer啟動及拖放354
16.4.1程式註冊354
16.4.2在文檔上雙擊滑鼠355
16.4.3允許拖放355
16.4.4程式啟動參數356
16.4.5試驗用Explorer啟動程式及拖放功能356
第十七章讀和寫文檔——MDI應用程式357
17.1MDI應用程式357
17.1.1一個典型的具有MFC庫風格的MDI應用程式357
17.1.2MDI應用程式對象360
17.1.3MDI文檔模板類360
17.1.4MDI框架視窗和MDI子視窗360
17.1.5主框架和文檔模板資源361
17.1.6創建空文檔——CWinApp∷OnFileNew函式362
17.1.7為現有文檔創建新的視圖362
17.1.8載入和存儲文檔363
17.1.9多文檔模板363
17.1.10Explorer啟動及拖放364
17.2EX17A示例程式364
17.2.1CEx17aApp365
17.2.2CMainFrame370
17.2.3CChildFrame373
17.2.4測試EX17A應用程式376
第十八章列印和列印預覽377
18.1Windows的列印377
18.1.1標準列印對話框377
1812互動選擇列印頁碼377
1813顯示頁和列印頁379
182列印預覽379
183有關印表機的程式設計380
18.3.1印表機設備環境和CView∷OnDraw函式380
18.3.2CView∷OnPrint函式380
1833準備設備環境——CView∷OnPrepareDC函式380
1834列印任務的開始和結束381
184EX18A示例程式——一個所見即所得的列印程式381
18.5讀取印表機矩形框388
18.6再看模板集合類——CArray類388
18.7EX18B示例程式——多頁列印程式389
第十九章切分視窗和多視圖395
19.1切分視窗395
19.2多視圖選擇395
19.3動態和靜態切分視窗396
19.4EX19A示例程式——具有單個視圖類的SDI動態切分396
19.4.1與切分有關的資源397
19.4.2CMainFrame397
19.4.3測試EX19A應用程式398
19.5EX19B示例程式——雙視圖類SDI靜態切分399
19.5.1CHexView399
19.5.2CMainFrame400
19.5.3測試EX19B應用程式400
196EX19C示例程式——切換沒有切分的視圖類401
19.6.1資源要求401
19.6.2CMainFrame401
19.6.3測試EX19C應用程式403
19.7EX19D示例程式——多視圖類MDI應用程式403
1971資源要求404
19.7.2CEx19dApp404
19.7.3CMainFrame405
1974測試EX19D應用程式406
第二十章上下文相關幫助407
20.1Windows的WinHelp程式407
20.1.1復文本格式(RTF)407
20.1.2編寫簡單的幫助檔案408
20.1.3改進的Table Of Contents412
202應用程式框架與WinHelp413
20.2.1調用WinHelp414
2022使用搜尋字元串414
2023從應用程式的選單調用WinHelp415
2024幫助上下文別名415
2025確定幫助上下文415
2026F1幫助416
2027Shift-F1 幫助416
2028訊息框幫助——AfxMessageBox函式417
20.2.9一般的幫助417
203幫助示例——不需要任何編程418
204MAKEHELP處理420
205幫助命令處理420
20.5.1F1處理過程421
20.5.2ShiftF1處理過程421
20.6幫助命令處理示例程式——EX20B422
20.6.1頭檔案要求422
20.6.2CStringView422
20.6.3CHexView423
20.6.4資源要求424
20.6.5幫助檔案要求424
20.6.6測試EX20B應用程式425
第二十一章動態連線庫426
211基本DLL理論426
2111導入如何與導出相匹配427
2112隱式連線和顯式連線427
2113符號連線和序號連線428
2114DLL入口點——DllMain429
2115實例句柄——裝載資源429
2116客戶程式如何找到DLL430
2117調試DLL430
212MFC DLL——擴展的和正規的430
2121共享的MFC DLL和Windows DLL431
2122MFC擴展DLL——導出類432
2123MFC擴展DLL資源搜尋的順序432
2124EX21A示例程式——MFC擴展DLL433
2125EX21B示例程式——DLL測試客戶程式435
2126MFC正規DLL——CWinApp派生類436
2127使用AFX-MANAGE-STATE宏436
2128MFC正規DLL資源搜尋順序436
2129EX21C示例程式——MFC正規DLL437
21210修改EX21B示例程式——加入代碼以測試ex21c.dll438
213自定義控制項DLL440
2131什麼是自定義控制項440
2132自定義控制項的視窗類440
2133MFC庫和WndProc函式441
2134自定義控制項通知訊息441
2135傳送給控制項的用戶定義訊息442
2136EX21D示例程式——自定義控制項442
2137再修改EX21B示例程式——加入代碼以測試ex21d.dll448
第二十二章不帶文檔或視圖類的MFC程式452
22.1EX22A示例程式——一個基於對話框的應用程式452
22.1.1應用程式類InitInstance函式454
22.1.2對話框類和程式圖示455
22.2EX22B示例——一個SDI應用程式456
22.2.1應用程式類InitInstance函式457
22.2.2CMainFrame類458
22.3EX22C示例程式——一個MDI應用程式458
22.3.1套用類程式InitInstance函式459
22.3.2CMainFrame類460
22.3.3CChildFrame類462
22.3.4資源要求462
22.4定製(Custom) AppWizard463
第四部分ActiveX:組件對象模型、自動化和OLE
第二十三章組件對象模型467
23.1ActiveX技術背景467
23.2組件對象模型(COM)468
23.2.1COM所解決的問題468
23.2.2COM的本質468
23.2.3什麼是COM接口469
23.2.4IUnknown接口和QueryInterface成員函式473
23.2.5引用計數:AddRef和Release函式475
23.2.6類廠(class factory)476
23.2.7CCmdTarget類477
23.2.8EX23A示例程式——一個模擬的COM478
23.3MFC庫中實際的COM486
23.3.1COM的CoGetClassObject函式486
23.3.2COM和Windows註冊表487
23.3.3運行時對象註冊488
23.3.4COM客戶程式如何調用進程內組件489
23.3.5COM客戶程式如何調用進程外組件491
23.3.6MFC接口宏493
23.3.7MFC的COleObjectFactory類494
23.3.8AppWizard/ClassWizard對COM進程內組件的支持494
23.3.9MFC COM客戶程式496
23.3.10EX23B示例程式——MFC COM進程內組件496
23.3.11EX23C示例程式——MFC COM客戶501
23.4包容、集合和繼承502
第二十四章自動化504
24.1C++與Visual Basic for Applications (VBA)之間的連線504
24.2自動化客戶和自動化組件505
24.3Microsoft Excel——一種比Visual Basic還好的Visual Basic505
24.4屬性(property)、方法(method)和集合(collection)507
24.5自動化所解決的問題508
24.6IDispatch接口508
24.7自動化程式設計的選擇509
24.8MFC IDispatch的實現510
24.9一個MFC自動化組件511
24.10一個MFC自動化客戶程式512
24.11使用編譯器#import指令的自動化客戶程式514
24.12VARIANT類型515
24.13COleVariant類517
24.14Invoke的參數和返回值的類型轉換519
24.15自動化示例521
24.15.1EX24A自動化組件EXE示例——不帶任何用戶界面521
24.15.2EX24B自動化組件DLL示例程式529
24.15.3EX24C SDI自動化組件EXE示例——帶用戶界面538
24.15.4EX24D自動化客戶示例程式544
24.15.5EX24E自動化客戶示例程式559
24.16VBA早綁定562
24.16.1註冊類型庫563
24.16.2組件如何註冊自己的類型庫564
24.16.3ODL檔案564
24.16.4Excel如何使用類型庫565
24.16.5為什麼使用早綁定567
24.16.6客戶組件的快速連線567
第二十五章統一數據傳輸——剪貼簿傳輸以及OLE拖放568
25.1IDataObject接口568
25.2IDataObject如何增強標準剪貼簿的支持568
25.3FORMATETC和STGMEDIUM結構569
25.3.1FORMATETC569
25.3.2STGMEDIUM570
25.3.3IDataObject接口成員函式570
25.4MFC統一數據傳輸支持571
25.4.1COleDataSource類572
25.4.2COleDataObject類573
25.4.3MFC數據對象剪貼簿傳輸574
25.5MFC CRectTracker類576
25.5.1CRectTracker類成員函式576
25.5.2CRectTracker類矩形坐標轉換577
25.6EX25A示例程式——數據對象剪貼簿577
25.6.1CMainFrame類578
25.6.2CEx25aDoc類578
25.6.3CEx25aView類578
25.7MFC拖放587
25.7.1傳輸的源方587
25.7.2傳輸的目標方587
25.7.3拖放的順序588
25.8EX25B示例程式——OLE拖放589
25.8.1CEx25bDoc類589
25.8.2CEx25bView類589
25.9Windows應用程式和拖放——Dobjview592
第二十六章結構化存儲593
26.1複合檔案593
26.2存儲(Storage)和IStorage接口594
26.2.1獲取IStorage指針596
26.2.2釋放STATSTG記憶體596
26.2.3對存儲對象的元素進行枚舉596
26.2.4進程間共享存儲597
26.3流(Stream)和IStream接口597
26.3.1IStream接口成員函式597
26.3.2IStream編程598
26.4ILockBytes接口599
26.5EX26A示例程式——結構化存儲599
26.5.1選單600
26.5.2CEx26aView類600
26.5.3輔助執行緒600
26.6結構化存儲和持久COM對象604
26.6.1IPersistStorage接口605
26.6.2IPersistStream接口606
26.6.3IPersistStream編程606
26.7EX26B示例程式——一個持久DLL組件607
26.8EX26C示例程式——一個持久存儲客戶程式613
26.9複合檔案碎片的處理617
26.10複合檔案的其他優點618
第二十七章OLE嵌入組件和包容器619
27.1嵌入和實地激活(可視編輯)619
27.2最小伺服器和完備伺服器(組件)——連結620
27.3可視編輯前景暗淡的一面620
27.4Windows圖元檔案和內嵌對象621
27.5組件程式的MFC OLE結構622
27.6EX27A示例程式——MFC實地激活最小伺服器623
27.6.1MDI嵌入組件627
27.6.2實地組件調整大小的思路628
27.7包容器組件相互作用628
27.7.1使用組件的IOleObject接口629
27.7.2裝入和保存組件自身的數據——組件文檔630
27.7.3剪貼簿數據傳輸630
27.7.4獲得組件的圖元檔案630
27.7.5進程內控制器的角色631
27.8組件狀態632
27.8.1包容器接口632
27.8.2通報連線633
27.8.3剪貼簿圖元檔案634
27.9接口簡要說明634
27.9.1IOleObject接口634
27.9.2IViewObject2接口635
27.9.3IOleClientSite接口635
27.9.4IAdviseSink接口636
27.10OLE輔助函式636
27.11OLE嵌入包容器應用程式637
27.11.1MFC對OLE包容器的支持637
27.11.2一些包容器限制638
27.11.3包容器特性638
27.12EX27B示例程式——嵌入包容器638
27.12.1CEx27bView類639
27.12.2CEx27bDoc類652
27.13EX27C示例程式——OLE嵌入組件660
27.13.1CEx27cView類661
27.13.2CEx27cDoc類661
第五部分資料庫管理
第二十八章Microsoft ODBC資料庫管理671
28.1資料庫管理的優勢671
28.2結構化查詢語言672
28.3ODBC標準673
28.3.1ODBC結構673
28.3.2ODBC SDK編程674
28.4MFC ODBC類——CRecordset和CDatabase675
28.4.1記錄集中關於行的計數677
28.4.2處理ODBC異常677
28.5學生註冊資料庫678
28.6EX28A記錄集示例程式678
28.7EX28A示例程式中的元素684
28.7.1記錄集類與應用程式之間的連線684
28.7.2CEx28aView類的OnInitialUpdate成員函式684
28.7.3CEx28aView類的OnDraw成員函式685
28.8篩選器和排序字元串686
28.9連線兩個資料庫表686
28.10MFC CRecordView類687
28.11EX28B記錄查看示例程式688
28.12多記錄集693
28.12.1EX28C多記錄集示例程式694
28.12.2參數化查詢695
28.13ODBC多執行緒696
28.14大批行數據獲取(bulk row fetch)696
28.15使用不帶綁定的記錄集696
第二十九章Microsoft Data Access Objects資料庫管理699
29.1DAO、COM和Microsoft Jet資料庫引擎699
29.2DAO和VBA699
29.3DAO和MFC700
29.4利用DAO可以打開什麼樣的資料庫701
29.5按ODBC模式使用DAO——快照和動態集701
29.6DAO表類型記錄集702
29.7DAO QueryDef和TableDef703
29.8DAO多執行緒情況703
29.9在滾動視窗中顯示資料庫的行703
29.9.1滾動顯示方法703
29.9.2一個行-視圖類704
29.9.3基類和派生類的分工處理705
29.9.4CRowView的純虛成員函式706
29.9.5其他的CRowView函式706
29.10動態記錄集的編程707
29.11EX29A示例程式708
29.11.1CEx29aApp709
29.11.2CMainFrame和CChildFrame709
29.11.3CEx29aDoc709
29.11.4CEx29aView716
29.11.5CTableSelect719
29.11.6CIsamSelect720
29.12EX29A資源檔案721
29.13運行EX29A程式722
第六部分Internet程式設計
第三十章TCP/IP、Winsock和WinInet725
30.1既針對COM也可以不需要COM725
30.2Internet基礎725
30.2.1網路協定——層726
30.2.2Internet協定726
30.2.3用戶報文協定727
30.2.4IP位址格式——網路位元組順序728
30.2.5傳輸控制協定729
30.2.6域名系統(Domain Name System)730
30.2.7HTTP基礎732
30.2.8FTP基礎734
30.2.9Internet和Intranet734
30.3建立自己的價值S| 99 的Intranet734
30.3.1NT檔案系統和檔案分配表735
30.3.2網路硬體735
30.3.3對Windows進行網路配置735
30.3.4Intranet的主機名——HOSTS檔案736
30.3.5測試Intranet——Ping程式736
30.3.6隻有一台計算機的Intranet——TCP/IP環形地址736
30.4Winsock737
30.4.1同步和異步Winsock編程737
30.4.2MFC Winsock類737
30.4.3Blocking Socket類737
30.4.4一個簡化了的HTTP伺服器程式745
30.4.5一個簡化了的HTTP客戶端程式747
30.5用CHttpBlockingSocket創建一個Web伺服器程式749
30.5.1EX30A伺服器限制749
30.5.2EX30A伺服器結構749
30.5.3使用Win32 TransmitFile函式750
30.5.4編譯和測試EX30A751
30.5.5使用Telnet752
30.6用CHttpBlockingSocket創建一個Web客戶端程式752
30.6.1EX30A Winsock客戶752
30.6.2EX30A對代理伺服器的支持753
30.6.3測試EX30A Winsock客戶753
30.7WinInet753
30.7.1WinInet相對於Winsock的優勢754
30.7.2MFC WinInet類754
30.7.3Internet會話狀態回調756
30.7.4一個簡化了的WinInet客戶程式757
30.8用MFC WinInet類創建一個Web客戶758
30.8.1EX30A WinInet Client #1——使用CHttpConnection758
30.8.2測試WinInet Client #1758
30.8.3EX30A WinInet Client #2——使用OpenURL759
30.8.4測試WinInet Client #2760
30.9異步Moniker檔案760
30.9.1Moniker760
30.9.2MFC CAsyncMonikerFile類760
30.9.3在程式中使用CAsyncMonikerFile類760
30.9.4異步moniker檔案和WinInet編程761
第三十一章Microsoft Internet Information Server編程763
31.1IIS的替代產品763
31.2Microsoft IIS763
31.2.1安裝和控制IIS763
31.2.2運行Internet Service Manager764
31.2.3IIS的安全性764
31.2.4IIS目錄765
31.2.5IIS日誌記錄766
31.2.6測試IIS766
31.3ISAPI伺服器擴展767
31.3.1通用網關接口和ISAPI767
31.3.2一個簡單的ISAPI伺服器擴展GET請求767
31.3.3HTML窗體——GET和POST768
31.3.4編寫ISAPI伺服器擴展DLL769
31.3.5MFC ISAPI伺服器擴展類770
31.4一個實際的ISAPI伺服器擴展——ex31a.dll771
31.4.1第一步——獲取定單772
31.4.2第二步——處理確認窗體775
31.4.3編譯並測試ex31a.dll776
31.4.4調試EX31A DLL776
31.5ISAPI 資料庫訪問777
31.6使用HTTP Cookie來連線事務778
31.6.1Cookie如何工作778
31.6.2ISAPI伺服器擴展如何處理Cookie779
31.6.3使用Cookie的一些問題779
31.7WWW鑑定779
31.7.1基本鑑定779
31.7.2Windows NT問訊/應答鑑定780
31.7.3安全套接字層(SSL)780
31.8ISAPI過濾器781
31.8.1編寫ISAPI過濾器DLL781
31.8.2MFC ISAPI過濾器類781
31.9ISAPI過濾器示例——ex31b.dll、ex31c.exe782
31.9.1選擇通知783
31.9.2把事務數據傳送到顯示程式783
31.9.3顯示程式785
31.9.4編譯並測試EX31B ISAPI過濾器785
第三十二章ActiveX文檔伺服器和Internet787
32.1ActiveX文檔理論787
32.1.1ActiveX文檔伺服器和OLE嵌入伺服器787
32.1.2從IE3中運行ActiveX文檔伺服器788
32.1.3ActiveX文檔伺服器和ActiveX控制項789
32.1.4ActiveX文檔伺服器和包容器的OLE接口790
32.1.5MFC對ActiveX文檔伺服器的支持790
32.2ActiveX文檔伺服器示例程式EX32A791
32.2.1EX32A第一階段——簡單的伺服器792
32.2.2調試ActiveX文檔伺服器792
32.2.3EX32A第二階段——加入WinInet調用792
32.3ActiveX文檔伺服器示例程式EX32B794
32.3.1在程式控制下產生POST請求799
32.3.2EX32B視圖類800
32.3.3編譯並測試EX32B802
32.3.4ActiveX文檔伺服器和VB Script802
32.4進一步使用ActiveX文檔伺服器803
附錄AMicrosoft基本類(MFC)庫中的訊息映射函式804
附錄BMFC庫運行時類識型和動態對象創建810

相關詞條

熱門詞條

聯絡我們