注冊 | 登錄讀書好,好讀書,讀好書!
讀書網(wǎng)-DuShu.com
當(dāng)前位置: 首頁出版圖書科學(xué)技術(shù)計(jì)算機(jī)/網(wǎng)絡(luò)軟件與程序設(shè)計(jì)其他編程語言/工具Windows程序設(shè)計(jì)

Windows程序設(shè)計(jì)

Windows程序設(shè)計(jì)

定 價(jià):¥49.00

作 者: 王艷平編著
出版社: 人民郵電出版社
叢編項(xiàng):
標(biāo) 簽: Windows

ISBN: 9787115132055 出版時(shí)間: 2005-03-01 包裝: 膠版紙
開本: 26cm+光盤1片 頁數(shù): 444 字?jǐn)?shù):  

內(nèi)容簡介

  本書特色:·完完全會的教程,從編寫最簡單的“HellOWorld"到編寫復(fù)雜的Windows2000/XP下的防火墻·闡明用產(chǎn)模式下Win32程序的運(yùn)行原理,包含如何直接使用Win32API開發(fā)應(yīng)用程序·學(xué)習(xí)如何設(shè)計(jì)并實(shí)現(xiàn)框架和類。自制一個(gè)具降而微的MFC,準(zhǔn)確剖析了文持MFC工作的關(guān)鍵技術(shù)的內(nèi)部實(shí)現(xiàn)·詳細(xì)演示了C++語言中虛函數(shù)、靜態(tài)函數(shù)、繼承和類模板等高級特性的具體應(yīng)用·包含了對DLL注入技術(shù)、遠(yuǎn)程進(jìn)程技術(shù)、HOOKAPI技術(shù)及內(nèi)核模式程序設(shè)計(jì)的詳細(xì)講解·涉及到大量完整實(shí)例,是程序沒計(jì)人員理想的參考資料本書編寫的目的是為學(xué)習(xí)Windows編程的讀者提供一個(gè)良好的學(xué)習(xí)方法,循序漸進(jìn),最終使他們從根本上提高編程水平,有能力獨(dú)立開發(fā)出像Windows防火墻一樣復(fù)雜的應(yīng)用程序。本書首先介紹了Win32程序運(yùn)行原理和最基本的Win32API編程,然后通過模擬MFC中關(guān)鍵類、全局函數(shù)和宏定義的實(shí)現(xiàn)詳細(xì)講述了框架程序的設(shè)計(jì)方法和MFC的內(nèi)部工作機(jī)制,并指出了這些機(jī)制是如何對用戶程序造成影響的,最后完整講述了開發(fā)內(nèi)核驅(qū)動(dòng)和Windows防火墻的過程。全書語言嚴(yán)謹(jǐn)流暢,針對初學(xué)者的特點(diǎn),精心策劃、由淺到深,是學(xué)習(xí)Windows編程的理想書籍。

作者簡介

暫缺《Windows程序設(shè)計(jì)》作者簡介

圖書目錄

第1章  Windows程序設(shè)計(jì)基礎(chǔ) 1
 1.1  必須了解的東西 1
 1.1.1  Windows產(chǎn)品概述 1
 1.1.2  開發(fā)工具Visual C++ 1
 1.1.3  Windows資料來源——MSDN 2
 1.1.4  Win32 API簡介 2
 1.2  用Visual C++的基本用法 2
 1.2.1  應(yīng)用程序的類型 3
 1.2.2  第一個(gè)控制臺應(yīng)用程序 3
 1.2.3  API函數(shù)的調(diào)用方法 4
 1.3  本書推薦的編程環(huán)境 5
 1.4  代碼的風(fēng)格 6
 1.4.1  變量的命名 6
 1.4.2  代碼的對齊方式 7
 1.4.3  代碼的注釋 8
 第2章  Win32程序運(yùn)行原理 9
 2.1  CPU的保護(hù)模式和Windows系統(tǒng) 9
 2.1.1  Windows的多任務(wù)實(shí)現(xiàn) 9
 2.1.2  虛擬內(nèi)存 9
 2.1.3  內(nèi)核模式和用戶模式 10
 2.2  內(nèi)核對象 11
 2.2.1  內(nèi)核對象的引出 11
 2.2.2  對象句柄 12
 2.2.3  使用計(jì)數(shù) 12
 2.3  進(jìn)程的創(chuàng)建 12
 2.3.1  進(jìn)程(Process)和線程(Thread) 12
 2.3.2  應(yīng)用程序的啟動(dòng)過程 13
 2.3.3  CreateProcess函數(shù) 14
 2.3.4  創(chuàng)建進(jìn)程的例子 17
 2.4  進(jìn)程控制 18
 2.4.1  獲取系統(tǒng)進(jìn)程 18
 2.4.2  終止當(dāng)前進(jìn)程 20
 2.4.3  終止其他進(jìn)程 21
 2.4.4  保護(hù)進(jìn)程 22
 2.5  【實(shí)例】游戲內(nèi)存修改器 23
 2.5.1  實(shí)現(xiàn)原理 23
 2.5.2  編寫測試程序 25
 2.5.3  搜索內(nèi)存 25
 2.5.4  寫進(jìn)程空間 28
 2.5.5  提煉接口 28
 第3章  Win32程序的執(zhí)行單元 30
 3.1  多線程 30
 3.1.1  線程的創(chuàng)建 30
 3.1.2  線程內(nèi)核對象 33
 3.1.3  線程的終止 36
 3.1.4  線程的優(yōu)先級 37
 3.1.5  C/C++運(yùn)行期庫 40
 3.2  線程同步 41
 3.2.1  臨界區(qū)對象 41
 3.2.2  互鎖函數(shù) 44
 3.2.3  事件內(nèi)核對象 45
 3.2.4  線程局部存儲(TLS) 47
 3.3  設(shè)計(jì)自己的線程局部存儲 50
 3.3.1  CSimpleList類 51
 3.3.2  CNoTrackObject類 57
 3.3.3  CThreadSlotData類 58
 3.3.4  CThreadLocal類模板 67
 3.4  設(shè)計(jì)線程類——CWinThread 71
 3.5  【實(shí)例】多線程文件搜索器 80
 3.5.1  搜索文件的基本知識 81
 3.5.2  編程思路 83
 第4章  Windows圖形界面 90
 4.1  了解窗口 90
 4.2  第一個(gè)窗口程序 91
 4.2.1  創(chuàng)建Win32工程和MessageBox函數(shù) 91
 4.2.2  Windows的消息驅(qū)動(dòng) 93
 4.2.3  創(chuàng)建窗口 94
 4.2.4  分析主程序代碼 96
 4.2.5  處理消息的代碼 100
 4.3  一個(gè)“簡陋”的打字程序 102
 4.3.1  使用資源 102
 4.3.2  菜單和圖標(biāo) 104
 4.3.3  接收鍵盤輸入 105
 4.3.4  接收鼠標(biāo)輸入 108
 4.3.5  設(shè)置文本顏色和背景色 109
 4.4  GDI基本圖形 109
 4.4.1  設(shè)備環(huán)境(Device Context) 109
 4.4.2  Windows的顏色和像素點(diǎn) 112
 4.4.3  繪制線條 113
 4.4.4  繪制區(qū)域 117
 4.4.5  坐標(biāo)系統(tǒng) 118
 4.5  【實(shí)例】小時(shí)鐘 122
 4.5.1  基礎(chǔ)知識——定時(shí)器和系統(tǒng)時(shí)間 122
 4.5.2  時(shí)鐘程序 125
 4.5.3  移動(dòng)窗口 129
 4.5.4  使用快捷菜單 130
 第5章  框架管理基礎(chǔ) 134
 5.1  運(yùn)行時(shí)類信息(CRuntimeClass類) 134
 5.1.1  動(dòng)態(tài)類型識別和動(dòng)態(tài)創(chuàng)建 134
 5.1.2  DECLARE_DYNAMIC等宏的定義 139
 5.2  調(diào)試支持 141
 5.2.1  基本調(diào)試方法 141
 5.2.2  調(diào)試輸出 142
 5.2.3  跟蹤和斷言 143
 5.3  框架程序中的映射 144
 5.3.1  映射的概念 144
 5.3.2  內(nèi)存分配方式 145
 5.3.3  設(shè)計(jì)管理方式 148
 5.3.4  句柄映射的實(shí)現(xiàn) 155
 5.4  框架程序的狀態(tài)信息 156
 5.4.1  模塊的概念 156
 5.4.2  模塊. 線程的狀態(tài) 157
 5.5  框架程序的執(zhí)行順序 159
 5.5.1  線程的生命周期 159
 5.5.2  程序的初始化過程 162
 5.5.3  框架程序應(yīng)用舉例 165
 第6章  框架中的窗口 166
 6.1  CWnd類的引出 166
 6.2  窗口句柄映射 167
 6.2.1  向CWnd對象分發(fā)消息 167
 6.2.2  消息的傳遞方式 170
 6.3  創(chuàng)建窗口 172
 6.3.1  窗口函數(shù) 172
 6.3.2  注冊窗口類 173
 6.3.3  消息鉤子 175
 6.3.4  最終實(shí)現(xiàn) 180
 6.3.5  創(chuàng)建窗口的例子 182
 6.4  消息映射 184
 6.4.1  消息映射表 184
 6.4.2  DECLARE_MESSAGE_MAP等宏的定義 187
 6.5  消息處理 189
 6.5.1  使用消息映射宏 189
 6.5.2  消息的分發(fā)機(jī)制 192
 6.5.3  消息映射應(yīng)用舉例 195
 6.6  使用Microsoft基礎(chǔ)類庫 199
 6.7  【實(shí)例】窗口查看器 201
 6.7.1  窗口界面 201
 6.7.2  獲取目標(biāo)窗口的信息 206
 6.7.3  自制按鈕 210
 第7章  用戶界面設(shè)計(jì) 214
 7.1  對話框與子窗口控件基礎(chǔ) 214
 7.1.1  子窗口控件運(yùn)行原理 214
 7.1.2  對話框工作原理 217
 7.2  使用對話框和控件與用戶交互 219
 7.2.1  以對話框?yàn)橹鹘缑娴膽?yīng)用程序 219
 7.2.2  常用子窗口控件 223
 7.2.3  對話框與控件的顏色 224
 7.3  通用控件 225
 7.3.1  通用控件簡介 225
 7.3.2  使用通用控件 226
 7.3.3  使用狀態(tài)欄 230
 7.3.4  使用列表視圖 231
 7.3.5  使用進(jìn)度條 233
 7.4  通用對話框 235
 7.4.1  “打開”文件和“保存”文件對話框 235
 7.4.2  瀏覽目錄對話框 237
 7.5  使用框架程序簡化界面開發(fā) 239
 7.5.1  在框架程序中使用對話框 239
 7.5.2  CDialog類 242
 7.5.3  框架程序中的控件 244
 7.5.4  使用向?qū)?245
 7.6  【實(shí)例】目錄監(jiān)視器 246
 7.6.1  目錄監(jiān)視的基礎(chǔ)知識 247
 7.6.2  實(shí)例程序 247
 7.6.3  使用SkinMagic美化界面 254
 第8章  Windows文件操作和內(nèi)存映射文件 256
 8.1  文件操作 256
 8.1.1  創(chuàng)建和讀寫文件 256
 8.1.2  獲取文件信息 260
 8.1.3  常用文件操作 262
 8.1.4  檢查PE文件有效性的例子 264
 8.1.5  MFC的支持(CFile類) 266
 8.2  驅(qū)動(dòng)器和目錄 268
 8.2.1  驅(qū)動(dòng)器操作 268
 8.2.2  目錄操作 271
 8.3  使用注冊表 271
 8.3.1  注冊表的結(jié)構(gòu) 271
 8.3.2  管理注冊表 272
 8.3.3  注冊表API應(yīng)用舉例(設(shè)置開機(jī)自動(dòng)啟動(dòng)) 274
 8.3.4  ATL庫的支持(CRegKey類) 275
 8.4  內(nèi)存映射文件 276
 8.4.1  內(nèi)存映射文件相關(guān)函數(shù) 276
 8.4.2  使用內(nèi)存映射文件讀BMP文件的例子 278
 8.4.3  進(jìn)程間共享內(nèi)存 284
 8.4.4  封裝共享內(nèi)存類CShareMemory 286
 8.5  一個(gè)文件切割系統(tǒng)的實(shí)現(xiàn) 287
 8.5.1  通信機(jī)制 287
 8.5.2  分割合并機(jī)制 288
 8.5.3  接口函數(shù) 292
 8.5.4  最終實(shí)現(xiàn) 293
 8.6  【實(shí)例】文件切割器開發(fā)實(shí)例 298
 第9章  動(dòng)態(tài)鏈接庫和鉤子 306
 9.1  動(dòng)態(tài)鏈接庫 306
 9.1.1  動(dòng)態(tài)鏈接庫的概念 306
 9.1.2  創(chuàng)建動(dòng)態(tài)鏈接庫工程 306
 9.1.3  動(dòng)態(tài)鏈接庫中的函數(shù) 308
 9.1.4  使用導(dǎo)出函數(shù) 309
 9.2  Windows鉤子 312
 9.2.1  鉤子的概念 312
 9.2.2  鉤子的安裝與卸載 312
 9.2.3  鍵盤鉤子實(shí)例 314
 9.3  掛鉤API技術(shù)(HOOK API) 319
 9.3.1  實(shí)現(xiàn)原理 319
 9.3.2  使用鉤子注入DLL 319
 9.3.3  HOOK過程 320
 9.3.4  封裝CAPIHook類 325
 9.3.5  HOOK實(shí)例——進(jìn)程保護(hù)器 332
 9.4  其他常用的偵測方法 336
 9.4.1  使用注冊表注入DLL 336
 9.4.2  使用遠(yuǎn)程線程注入DLL 337
 9.4.3  通過覆蓋代碼掛鉤API 343
 9.5  【實(shí)例】用戶模式下偵測Win32 API的例子 346
 第10章  TCP/IP和網(wǎng)絡(luò)通信 351
 10.1  網(wǎng)絡(luò)基礎(chǔ)知識 351
 10.1.1  以太網(wǎng)(Ethernet) 351
 10.1.2  以太網(wǎng)接口堆棧 353
 10.1.3  服務(wù)器/客戶機(jī)模型 353
 10.2  Winsock接口 354
 10.2.1  套節(jié)字(Socket)的概念和類型 354
 10.2.2  Winsock的尋址方式和字節(jié)順序 354
 10.2.3  Winsock編程流程 356
 10.2.4  典型過程圖 359
 10.2.5  服務(wù)器和客戶方程序舉例 360
 10.2.6  UDP協(xié)議編程 363
 10.3  網(wǎng)絡(luò)程序?qū)嶋H應(yīng)用 364
 10.3.1  設(shè)置I/O模式 364
 10.3.2  TCP服務(wù)器實(shí)例 365
 10.3.3  TCP客戶端實(shí)例 374
 10.4  截?cái)r網(wǎng)絡(luò)數(shù)據(jù) 377
 10.4.1  DLL工程框架 378
 10.4.2  數(shù)據(jù)交換機(jī)制 379
 10.4.3  數(shù)據(jù)的過濾 381
 10.5  【實(shí)例】IP封包截獲工具IPPack源代碼分析 381
 10.5.1  主窗口界面 382
 10.5.2  注入DLL 385
 10.5.3  處理封包 389
 第11章  內(nèi)核模式程序設(shè)計(jì)與Windows防火墻開發(fā) 393
 11.1  Windows操作系統(tǒng)的體系結(jié)構(gòu) 393
 11.1.1  Windows 2000/XP組件結(jié)構(gòu)圖 393
 11.1.2  環(huán)境子系統(tǒng)和子系統(tǒng)DLL 394
 11.1.3  系統(tǒng)核心(core) 395
 11.1.4  設(shè)備驅(qū)動(dòng)程序 398
 11.2  服務(wù) 398
 11.2.1  服務(wù)控制管理器(Service Control Manager) 398
 11.2.2  服務(wù)控制程序(Service Control Program) 399
 11.2.3  封裝CDriver類 402
 11.3  開發(fā)內(nèi)核驅(qū)動(dòng)的準(zhǔn)備工作 406
 11.3.1  驅(qū)動(dòng)程序開發(fā)工具箱(Driver Development Kit, DDK) 407
 11.3.2  編譯和連接內(nèi)核模式驅(qū)動(dòng)的方法 407
 11.3.3  創(chuàng)建第一個(gè)驅(qū)動(dòng)程序 408
 11.4  內(nèi)核模式程序設(shè)計(jì)基礎(chǔ)知識 408
 11.4.1  UNICODE字符串 408
 11.4.2  設(shè)備對象 409
 11.4.3  驅(qū)動(dòng)程序的基本組成 410
 11.4.4  I/O請求包(I/O request packet, IRP)和I/O堆棧 410
 11.4.5  完整驅(qū)動(dòng)程序 413
 11.5  內(nèi)核模式與用戶模式交互 416
 11.5.1  擴(kuò)展派遣接口 416
 11.5.2  IOCTL應(yīng)用舉例 417
 11.6  IP過濾鉤子驅(qū)動(dòng) 421
 11.6.1  創(chuàng)建過濾鉤子(Filter-hook)驅(qū)動(dòng) 421
 11.6.2  IP過濾鉤子驅(qū)動(dòng)工程框架 424
 11.6.3  過濾列表 427
 11.6.4  編寫過濾函數(shù) 428
 11.6.5  注冊鉤子回調(diào)函數(shù) 430
 11.6.6  處理IOCTL設(shè)備控制代碼 432
 11.7  【實(shí)例】防火墻開發(fā)實(shí)例 433
 11.7.1  文檔視圖 433
 11.7.2  文檔對象 436
 11.7.3  視圖對象 438
 11.7.4  主窗口對象 440
 附錄  MFC結(jié)構(gòu)體系圖 444

本目錄推薦

掃描二維碼
Copyright ? 讀書網(wǎng) m.ranfinancial.com 2005-2020, All Rights Reserved.
鄂ICP備15019699號 鄂公網(wǎng)安備 42010302001612號