注冊(cè) | 登錄讀書(shū)好,好讀書(shū),讀好書(shū)!
讀書(shū)網(wǎng)-DuShu.com
當(dāng)前位置: 首頁(yè)出版圖書(shū)科學(xué)技術(shù)計(jì)算機(jī)/網(wǎng)絡(luò)操作系統(tǒng)WindowsWindows高級(jí)編程指南(第三版)

Windows高級(jí)編程指南(第三版)

Windows高級(jí)編程指南(第三版)

定 價(jià):¥99.00

作 者: (美)Jeffrey Richter;王書(shū)洪譯
出版社: Microsoft Press
叢編項(xiàng): 微軟版權(quán)圖書(shū)
標(biāo) 簽: Windows

購(gòu)買這本書(shū)可以去


ISBN: 9787302033288 出版時(shí)間: 1999-06-01 包裝: 平裝
開(kāi)本: 787*1092 1/16 頁(yè)數(shù): 805 字?jǐn)?shù):  

內(nèi)容簡(jiǎn)介

  內(nèi)容簡(jiǎn)介本書(shū)以詳盡的資料和大量的范例深入討論了有關(guān)32位Windows編程的高級(jí)問(wèn)題,包括進(jìn)程和線程的管理、Win32的內(nèi)存管理、消息處理、動(dòng)態(tài)鏈接庫(kù)、文件系統(tǒng)和設(shè)備輸入輸出、結(jié)構(gòu)化異常處理、Unicode等,并重點(diǎn)討論了Windows95和WindowsNT在實(shí)現(xiàn)上的不同之處,其中包含了大量的編程技巧。本書(shū)可供高等院校計(jì)算機(jī)專業(yè)的師生和廣大的計(jì)算機(jī)編程人員使用。

作者簡(jiǎn)介

  JeffreyRichterJeffreyRichter是一位在全球享有盛譽(yù)的技術(shù)作家,尤其在Windows/.NET領(lǐng)域有著杰出的貢獻(xiàn)。他的第一本W(wǎng)indows著作Windows3:ADeveloper'sGuide大獲好評(píng),從而聲名遠(yuǎn)揚(yáng)。之后,他又推出了經(jīng)典著作《Windows高級(jí)編程指南》和《Windows核心編程》。如今這兩本書(shū)早已成為Windows程序設(shè)計(jì)領(lǐng)域的顛峰之作,培育了幾代軟件開(kāi)發(fā)設(shè)計(jì)人員。他的每一本新作問(wèn)世,我們都有理由相信這是一本巨著,我們想要的一切盡在其中。Jeffery是Wintellect公司的創(chuàng)始人之一,也是MSDN雜志.NET專欄的特邀編輯?,F(xiàn)在他正領(lǐng)導(dǎo)開(kāi)發(fā)該公司的.NET程序設(shè)計(jì)課程,向大眾推廣.NET技術(shù)。因?yàn)樗?999年開(kāi)始就參與了微軟.NET框架開(kāi)發(fā)組的咨詢工作,與這些一線人員一起經(jīng)歷了.NET的孕育與誕生,所以他對(duì).NET思想的領(lǐng)悟、對(duì).NET的細(xì)節(jié)熟稔,是其他任何作家難以企及的。他是.NET著作領(lǐng)域中當(dāng)之無(wú)愧的一面旗幟。>>更多作品

圖書(shū)目錄

第0章  緒論
0.1  關(guān)于應(yīng)用程序范例
0.1.1  用C語(yǔ)言編寫(xiě)程序
0.1.2  Message Cracker Macros(消息拆析宏)
0.1.3  有關(guān)16位Windows編程的知識(shí)
0.1.4  在Windows 95下運(yùn)行應(yīng)用程序范例
0.1.5  不相關(guān)代碼
0.1.6  范例應(yīng)用程序的獨(dú)立性
0.1.7  STRICT編譯
0.1.8  錯(cuò)誤檢查
0.1.9  沒(méi)有錯(cuò)誤
0.1.10  測(cè)試平臺(tái)和環(huán)境
0.1.11  Unicode
0.2  安裝范例程序
0.2.1  配套的CD-ROM盤(pán)
第1章  WIN 32 API和支持它的平臺(tái)
1.1  夢(mèng)想一下:Win 32 API
1.2  Win 32s
1.3  Windows NT
1.4  Windows 95
1.5  Windows CE
1.6  現(xiàn)實(shí):Win 32 API
第2章  內(nèi)核對(duì)象
2.1  什么是內(nèi)核對(duì)象
2.1.1  使用計(jì)數(shù)
2.1.2  安全
2.2  進(jìn)程的內(nèi)核對(duì)象句柄表
2.2.1  創(chuàng)建內(nèi)核對(duì)象
2.2.2  關(guān)閉內(nèi)核對(duì)象
2.3  在進(jìn)程間共享內(nèi)核對(duì)象
2.3.1  對(duì)象句柄繼承
2.3.2  改變句柄標(biāo)志
2.3.3  命名對(duì)象
2.3.4  復(fù)制對(duì)象句柄
第3章  進(jìn)程
3.1  編寫(xiě)第一個(gè)Win 32應(yīng)用程序
3.1.1  進(jìn)程的實(shí)例句柄
3.1.2  進(jìn)程的前一個(gè)實(shí)例的句柄
3.1.3  進(jìn)程的命令行
3.1.4  進(jìn)程的環(huán)境變量
3.1.5  進(jìn)程的錯(cuò)誤模式
3.1.6  進(jìn)程的當(dāng)前驅(qū)動(dòng)器和目錄
3.1.7  系統(tǒng)版本
3.2  CreateProcess函數(shù)
3.2.1  lpszApplicationName和lpszCommandline
3.2.2  lpsaProcess,lpsaThread和fInheritHandles
3.2.3  fdwCreate
3.2.4  lpvEnvironment
3.2.5  lpszCurDir
3.2.6  lpsiStartInfo
3.2.7  lppiProcInfo
3.3  終止進(jìn)程
3.3.1  ExitProcess函數(shù)
3.3.2  Terminate Process函數(shù)
3.3.3  進(jìn)程中的所有線程結(jié)束了
3.3.4  進(jìn)程終結(jié)時(shí)發(fā)生的事情
3.4   子進(jìn)程
3.4.1  運(yùn)行分離的子進(jìn)程
第4章  線程
4.1  何時(shí)創(chuàng)建線程
4.2  何時(shí)不用創(chuàng)建線程
4.3  編寫(xiě)第一個(gè)線程函數(shù)
4.3.1  線程的棧
4.3.2  線程的CONTEXT結(jié)構(gòu)
4.3.3  線程的執(zhí)行時(shí)間
4.4  CreateThread函數(shù)
4.4.1  lpsa
4.4.2  cbstack
4.4.3  lpStartAddr和lpvThreadParm
4.4.4  fdwCreate
4.4.5  lpIDThread
4.5  終止線程
4.5.1  Exit Thread函數(shù)
4.5.2  TerminateThread函數(shù)
4.5.3  進(jìn)程終結(jié)
4.5.4  線程終結(jié)時(shí)的情況
4.6  識(shí)別自己的身份
4.7  系統(tǒng)如何調(diào)度線程
4.7.1  使用Win 32 API怎樣賦優(yōu)先級(jí)
4.7.2  改變進(jìn)程的優(yōu)先級(jí)類
4.7.3  設(shè)定線程的相對(duì)優(yōu)先級(jí)
4.7.4  掛起和恢復(fù)線程
4.8  系統(tǒng)內(nèi)部情況
4.9  進(jìn)程、線程和C運(yùn)行時(shí)庫(kù)
4.9.1  應(yīng)避免使用的C運(yùn)行時(shí)函數(shù)
第5章  Win 32內(nèi)存結(jié)構(gòu)
5.1  虛地址空間
5.1.1  Windows 95如何劃分進(jìn)程的地址空間
5.1.2  Windows NT如何劃分進(jìn)程的地址空間
5.2  地址空間中的區(qū)域
5.3  在區(qū)域內(nèi)提交物理存儲(chǔ)
5.4  物理存儲(chǔ)
5.4.1  不包含在頁(yè)面文件中的物理存儲(chǔ)
5.5  保護(hù)屬性
5.5.1  寫(xiě)拷貝訪問(wèn)
5.5.2  特殊的訪問(wèn)保護(hù)屬性標(biāo)志
5.6  小結(jié)
5.6.1  區(qū)域的內(nèi)部
5.7  Windows 95的地址空間的不同
第6章  虛擬內(nèi)存
6.1  系統(tǒng)信息
6.1.1  系統(tǒng)信息范例應(yīng)用程序
6.2  虛擬內(nèi)存狀態(tài)
6.2.1  虛擬內(nèi)存狀態(tài)范例應(yīng)用程序
6.3  確定地址空間的狀態(tài)
6.3.1  VMQuery函數(shù)
6.3.2  虛擬內(nèi)存映射范例應(yīng)用程序
第7章  在應(yīng)用程序中使用虛擬內(nèi)存
7.1  在地址空間中保留區(qū)域
7.2  在保留區(qū)域中提交存儲(chǔ)
7.3  同時(shí)保留區(qū)域和提交物理存儲(chǔ)
7.4  何時(shí)提交物理存儲(chǔ)
7.5  釋放物理存儲(chǔ)和釋放區(qū)域
7.5.1  何時(shí)釋放物理存儲(chǔ)
7.5.2  虛擬內(nèi)存分配范例應(yīng)用程序
7.6  修改保護(hù)屬性
7.7  在RAM中鎖定物理存儲(chǔ)
7.8  重設(shè)物理存儲(chǔ)的內(nèi)容
7.9  線程的棧
7.9.1  Windows 95下的線程的棧
7.9.2  C運(yùn)行時(shí)庫(kù)的棧檢查函數(shù) 
第8章  內(nèi)存映射文件
8.1  內(nèi)存映射EXE和DLL
8.1.1  不被EXE或DLL的多個(gè)實(shí)例共享的靜態(tài)數(shù)據(jù)
8.2  內(nèi)存映射數(shù)據(jù)文件
8.2.1  方法1:一個(gè)文件,一個(gè)緩沖區(qū)
8.2.2  方法2:兩個(gè)文件,一個(gè)緩沖區(qū)
8.2.3  方法3:一個(gè)文件,兩個(gè)緩沖區(qū)
8.2.4  方法4:一個(gè)文件,零個(gè)緩沖區(qū)
8.3  使用內(nèi)存映射文件
8.3.1  第1步:創(chuàng)建或打開(kāi)文件內(nèi)核對(duì)象
8.3.2  第2步:創(chuàng)建文件映射內(nèi)核對(duì)象
8.3.3  第3步:將文件數(shù)據(jù)映射入進(jìn)程地址空間
8.3.4  第4步:從進(jìn)程地址空間中解除文件數(shù)據(jù)映射
8.3.5  第5步和第6步:關(guān)閉文件映射對(duì)象和文件對(duì)象
8.3.6  用內(nèi)存映射文件處理大文件
8.4  內(nèi)存映射文件和一致性
8.4.1  文件倒置范例應(yīng)用程序
8.4.2  指定內(nèi)存映射文件的基本地址
8.5  內(nèi)存映射文件和Win 32實(shí)現(xiàn)
8.5.1  使用內(nèi)存映射文件在進(jìn)程間共享數(shù)據(jù)
8.5.2  由頁(yè)面文件支持的內(nèi)存映射文件
8.5.3  內(nèi)存映射文件共享范例應(yīng)用程序
8.6  稀疏提交的內(nèi)存映射文件
第9章  堆
9.1  什么是Win 32堆
9.1.1  進(jìn)程的缺省堆
9.1.2  創(chuàng)建自己的Win 32堆
9.1.3  創(chuàng)建Win 32堆
9.1.4  釋放Win 32堆
9.1.5  在C++時(shí)使用堆
9.1.6  其他一些堆函數(shù)
9.2  16位Windows堆函數(shù)
第10章  線程同步
10.1  線程同步概述
10.2  最壞的事情
10.2.1  創(chuàng)建監(jiān)臨界區(qū)
10.2.2  使用臨界區(qū)
10.2.3  臨界區(qū)范例應(yīng)用程序
10.3  用內(nèi)核對(duì)象同步線程
10.3.1  互斥量
10.3.2  互斥量范例應(yīng)用程序
10.3.3  信號(hào)量
10.3.4  超市范例應(yīng)用程序
10.3.5  事件
10.3.6  Bucket of Balls范例應(yīng)用程序
10.3.7  SWMRG復(fù)合同步對(duì)象
10.3.8  Bucket范例源代碼
10.3.9  Document Statistics范例應(yīng)用程序
10.3.10  可等的計(jì)時(shí)器
10.4  線程掛起
10.4.1  Sleep
10.4.2  異步文件I/O
10.4.3  WaitForLnputIdle
10.4.4  MsgWaitForMultipleObjects
10.4.5  WaitForDebugEvent
10.4.6  SignalObjectAndWait
10.4.7  Interlocked函數(shù)族
第11章  窗口消息和異步輸入
11.1  多任務(wù)
11.1.1  搶先式調(diào)度
11.2  線程隊(duì)列和消息處理
11.2.1  Win 32消息隊(duì)列結(jié)構(gòu)
11.2.2  向線程的消息隊(duì)列投遞消息
11.2.3  發(fā)送消息給窗口
11.2.4  喚醒線程
11.3  用消息發(fā)送數(shù)據(jù)
11.3.1  CopyData范例應(yīng)用程序
11.4  非序列化輸入
11.4.1  輸入如何被非序列化
11.5  局部輸入狀態(tài)
11.5.1  鍵盤(pán)輸入和焦點(diǎn)
11.5.2  鼠標(biāo)光標(biāo)管理
11.5.3  局部輸入狀態(tài)實(shí)驗(yàn)范例應(yīng)用程序
第12章  動(dòng)態(tài)鏈接庫(kù)
12.1  創(chuàng)建動(dòng)態(tài)鏈接
12.1.1  映射DLL到進(jìn)程的地址空間
12.2  DLL的進(jìn)入/退出函數(shù)
12.2.1  DLL_PROCESS_ATTACH
12.2.2  DLL_PROCESS_DATACH
12.2.3  DLL_THREAD_ATTACH
12.2.4  DLL_THREAD_DETACH
12.2.5  系統(tǒng)如何序列化對(duì)DllMain的調(diào)用
12.2.6  DllMain和C運(yùn)行時(shí)庫(kù)
12.3  從DLL中輸出函數(shù)和變量
12.4  從DLL中引入函數(shù)和變量
12.4.1  DLL的頭文件
12.5  創(chuàng)建DLL供非Visual C++工具使用
12.6  在EXE或DLL映射之間共享數(shù)據(jù)
12.6.1  EXE或DLL中的節(jié)
12.6.2  ModUse范例應(yīng)用程序
12.6.3  MultInst范例應(yīng)用程序
第13章  線程局部存儲(chǔ)
13.1  動(dòng)態(tài)線程局部存儲(chǔ)
13.1.1  使用動(dòng)態(tài)線程局部存儲(chǔ)
13.1.2  動(dòng)態(tài)線程局部存儲(chǔ)范例應(yīng)用程序
13.2  靜態(tài)線程局部存儲(chǔ)
13.2.1  靜態(tài)線程局部存儲(chǔ)范例應(yīng)用程序
第14章  文件系統(tǒng)
14.1  Win 32的文件名約定
14.2  系統(tǒng)和卷操作
14.2.1  得到卷的特定信息
14.2.2  磁盤(pán)信息查看范例應(yīng)用程序
14.3  目錄操作
14.3.1  得到當(dāng)前目錄
14.3.2  改變當(dāng)前目錄
14.3.3  得到系統(tǒng)目錄
14.3.4  得到Windows目錄
14.3.5  創(chuàng)建和刪除目錄
14.4  拷貝、刪除、移動(dòng)和重命名文件
14.4.1  拷貝文件
14.4.2  刪除文件
14.4.3  移動(dòng)文件
14.4.4  重命名文件
14.5  查找文件
14.5.1  目錄漫游范例應(yīng)用程序
14.6  文件系統(tǒng)變化通知
14.6.1  文件變化范例應(yīng)用程序
14.7  操縱文件屬性
14.7.1  可執(zhí)行文件類型
14.7.2  文件屬性
14.7.3  文件大小
14.7.4  文件時(shí)間戳
14.8  創(chuàng)建臨時(shí)文件  
第15章  設(shè)備I/O
15.1  打開(kāi)和關(guān)閉設(shè)備
15.1.1  CreateFile
15.2  使用文件設(shè)備
15.2.1  定位文件指針
15.2.2  設(shè)置文件尾
15.2.3  加鎖和解鎖文件的區(qū)域
15.3  進(jìn)行同步I/O
15.3.1  向設(shè)備強(qiáng)制刷新數(shù)據(jù)
15.4  進(jìn)行異步I/O
15.5  使設(shè)備內(nèi)核對(duì)象有信號(hào)
15.6  使事件內(nèi)核對(duì)象有信號(hào)
15.7  告警I/O
15.7.1  告警I/O范例應(yīng)用程序
15.8  I/O完成端口
15.8.1  模擬完成I/O請(qǐng)求
15.8.2  I/O完成端口范例應(yīng)用程序
15.9  判斷I/O請(qǐng)求是否完成
15.10  取消未完成的I/O請(qǐng)求
第16章  結(jié)構(gòu)化異常處理
16.1  終止處理程序
16.1.1  理解終止處理程序
16.1.2  關(guān)于finally塊的一些注解
16.1.3  SEH終止范例應(yīng)用程序
16.2  異常過(guò)濾程序和異常處理程序
16.2.1  理解異常過(guò)濾程序和異常處理程序
16.2.2  EXCEPTION_EXECUTE_HANDLER
16.2.3  EXCEPTION_CONTINUE_EXECUTION
16.2.4  EXCEPTION_CONTINUE_SEARCH
16.2.5  全局展開(kāi)
16.2.6  停止全避展開(kāi)
16.2.7  關(guān)于異常過(guò)濾程序的進(jìn)一步討論
16.2.8  GetExceptionInformation
16.2.9  SEH異常范例應(yīng)用程序
16.2.10  SEH Sum范例應(yīng)用程序
16.3  軟件異常
16.3.1  SEH軟件異常范例應(yīng)用程序
16.3.2  未處理的異常
16.3.3  沒(méi)有附屬調(diào)試器的未和的異常
16.3.4  不顯示異常消息框
16.3.5  自己調(diào)用UnhandledExceptionFilter
16.3.6  Windows NT的未處理的內(nèi)核模式異常
第17章  Unicode
17.1  字符集
17.1.1  單字節(jié)和雙字節(jié)字符集
17.1.2  Unicode:寬字節(jié)字符集
17.2  為什么要使用Unicode
17.3  如何編寫(xiě)Unicode源代碼
17.3.1  Windows NT和Unicode
17.3.2  Windows 95和Unicode
17.3.3  C運(yùn)行時(shí)庫(kù)對(duì)Unicode的支持
17.3.4  Win 32定義的Unicode數(shù)據(jù)類型
17.3.5  Win 32中的Unicode和ANSI宏數(shù)
17.4  使你的程序能識(shí)別ANSI和Unicode
17.4.1  Win 32中的字符串函數(shù)
17.4.2  資源
17.4.3  文本
17.4.4  在Unicode和ANSI之間轉(zhuǎn)換字符串
17.4.5  Windows NT的窗口類和過(guò)程
第18章  打開(kāi)進(jìn)程邊界
18.1  為什么要打開(kāi)進(jìn)程邊界:一個(gè)例子
18.2  使用注冊(cè)表來(lái)注入DLL
18.3  使用Windows鉤來(lái)注入DLL
18.3.1  Desktop Item Position Savev工具
18.4  使用遠(yuǎn)程線程注入DLL
18.4.1  如何裝入一個(gè)DLL
18.5  影響其他進(jìn)程的Win   32函數(shù)
18.5.1  CreateRemoteThread
18.5.2  GetThreadContext和SetThreadContext
18.5.3  VirtualQueryEx和VirtualProtectEx
18.5.4  VirtualAllocEx和VirtualFreeEx
18.5.5  ReadProcessMemory和WriteProcessMemory
18.6  創(chuàng)建一個(gè)函數(shù)向任意進(jìn)程的地址空間注入DLL
18.6.1  版本0:為什么顯然的方法不能工作
18.6.2  版本1:手編的機(jī)器語(yǔ)言
18.6.3  版本2:AllocProcessMemory和CreateRemore Thread
18.6.4  ProcMem工具函數(shù)
18.6.5  InjectLib函數(shù)
18.7  測(cè)試InjectLib函數(shù)
18.7.1  注入庫(kù)范例應(yīng)用程序
18.7.2  映象遍歷動(dòng)態(tài)鏈接庫(kù)
18.8  小結(jié)
附錄 A  FIBERS
A.1  例程:計(jì)算器應(yīng)用程序
附錄 B MESSAGE CRACKERC
B.1  Message Crackers
B.2  Child Control宏
B.3  API宏
附錄 C 編程環(huán)境
C.1  CMNHDR.H頭文件
C.1.1  4級(jí)警告
C.1.1  Windows版本
C.1.2  STRICT宏
C.1.3  CPU Prtability宏
C.1.4  標(biāo)準(zhǔn)編碼(Unicode) 
C.1.5  chDIMOF宏
C.1.6  chBEGINTHEADEX宏
C.1.7  chASSERT 宏和chVERIFY宏
C.1.8  chHANDLE_DLGMSG宏
C.1.9  chassert宏和chVERIFY宏
C.1.10  chMB宏
C.1.11  chINITSTRUCT宏
C.1.12  chSETDLGICONS宏
C.1.13  chWARNIFUNICODEUNDERWIN 95宏
C.1.14  Pragma Message Helper宏
C.1.15  鏈接指令
C.2  在源文件中不能對(duì)項(xiàng)目進(jìn)行設(shè)置

本目錄推薦

掃描二維碼
Copyright ? 讀書(shū)網(wǎng) www.afriseller.com 2005-2020, All Rights Reserved.
鄂ICP備15019699號(hào) 鄂公網(wǎng)安備 42010302001612號(hào)