亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? 目錄.txt

?? Windows核心編程指導
?? TXT
字號:
目      錄
譯者序
前言
第一部分   程序員必讀
第1章   對程序錯誤的處理	1
1.1   定義自己的錯誤代碼	4
1.2   ErrorShow示例應用程序	5
第2章   Unicode	11
2.1   字符集	11
2.1.1   單字節與雙字節字符集	11
2.1.2   Unicode:寬字節字符集	12
2.2   為什么使用Unicode	13
2.3   Windows 2000與Unicode	13
2.4   Windows 98與Unicode	13
2.5   Windows CE與Unicode	14
2.6   需要注意的問題	14
2.7   對COM的簡單說明	14
2.8   如何編寫Unicode源代碼	15
2.8.1   C運行期庫對Unicode的支持	15
2.8.2   Windows定義的Unicode數據類型	17
2.8.3   Windows中的Unicode函數和ANSI
           函數	17
2.8.4   Windows字符串函數	19
2.9   成為符合ANSI和Unicode的應用程序	19
2.9.1   Windows字符串函數	19
2.9.2   資源	22
2.9.3   確定文本是ANSI文本還是Unicode
          文本	22
2.9.4   在Unicode與ANSI之間轉換字符串	23
第3章   內核對象	27
3.1   什么是內核對象	27
3.1.1   內核對象的使用計數	27
3.1.2   安全性	28
3.2   進程的內核對象句柄表	30
3.2.1   創建內核對象	30
3.2.2   關閉內核對象	32
3.3   跨越進程邊界共享內核對象	32
3.3.1   對象句柄的繼承性	32
3.3.2   改變句柄的標志	35
3.3.3   命名對象	36
3.3.4   終端服務器的名字空間	39
3.3.5   復制對象句柄	39
第二部分   編程的具體方法
第4章   進程	45
4.1   編寫第一個Windows應用程序	46
4.1.1   進程的實例句柄	49
4.1.2   進程的前一個實例句柄	50
4.1.3   進程的命令行	50
4.1.4   進程的環境變量	51
4.1.5   進程的親緣性	54
4.1.6   進程的錯誤模式	54
4.1.7   進程的當前驅動器和目錄	54
4.1.8   進程的當前目錄	55
4.1.9   系統版本	56
4.2   CreateProcess函數	58
4.2.1   pszApplicationName和
           pszCommandLine	59
4.2.2   psa Process、psa Thread和
           binherit Handles	60
4.2.3   fdwCreate	62
4.2.4   pvEnvironment	64
4.2.5   pszCurDir	64
4.2.6   psiStartInfo	64
4.2.7   ppiProcInfo	67
4.3   終止進程的運行	69
4.3.1   主線程的進入點函數返回	69
4.3.2   ExitProcess函數	69
4.3.3   TerminateProcess函數	70
4.3.4   進程終止運行時出現的情況	71
4.4   子進程	72
4.5   枚舉系統中運行的進程 	73
第5章   作業	91
5.1   對作業進程的限制	93
5.2   將進程放入作業	99
5.3   終止作業中所有進程的運行	99
5.4   查詢作業統計信息	100
5.5   作業通知信息	103
5.6   JobLab示例應用程序	104
第6章   線程的基礎知識	121
6.1   何時創建線程	121
6.2   何時不能創建線程	122
6.3   編寫第一個線程函數	123
6.4   CreateThread函數	124
6.4.1   psa	124
6.4.2   cbStack	124
6.4.3   pfnStartAddr和pvParam	125
6.4.4   fdwCreate	126
6.4.5   pdwThreadID	126
6.5   終止線程的運行	127
6.5.1   線程函數返回	127
6.5.2   ExitThread函數	127
6.5.3    TerminateThread函數	127
6.5.4    在進程終止運行時撤消線程	128
6.5.5   線程終止運行時發生的操作	128
6.6   線程的一些性質	129
6.7   C/C++運行期庫的考慮	131
6.7.1   Oops—錯誤地調用了Create Thread	138
6.7.2   不應該調用的C/C++運行期庫函數	138
6.8   對自己的ID概念應該有所了解	139
第7章   線程的調度、優先級和親緣性	142
7.1   暫停和恢復線程的運行	143
7.2   暫停和恢復進程的運行	144
7.3   睡眠方式	145
7.4   轉換到另一個線程	145
7.5   線程的運行時間	146
7.6   運用環境結構	148
7.7   線程的優先級	152
7.8   對優先級的抽象說明	153
7.9   程序的優先級	156
7.9.1   動態提高線程的優先級等級	158
7.9.2   為前臺進程調整調度程序	159
7.9.3   Scheduling Lab示例應用程序	160
7.10   親緣性	167
第8章   用戶方式中線程的同步	172
8.1   原子訪問:互鎖的函數家族	172
8.2   高速緩存行	177
8.3   高級線程同步	178
8.4   關鍵代碼段	180
8.4.1   關鍵代碼段準確的描述	182
8.4.2   關鍵代碼段與循環鎖	185
8.4.3   關鍵代碼段與錯誤處理	185
8.4.4   非常有用的提示和技巧	186
第9章   線程與內核對象的同步	190
9.1   等待函數	191
9.2   成功等待的副作用	194
9.3   事件內核對象	195
9.4   等待定時器內核對象	204
9.4.1   讓等待定時器給APC項排隊	207
9.4.2   定時器的松散特性	209
9.5   信標內核對象	210
9.6   互斥對象內核對象	211
9.6.1   釋放問題	213
9.6.2   互斥對象與關鍵代碼段的比較	214
9.6.3   Queue示例應用程序	214
9.7   線程同步對象速查表	223
9.8   其他的線程同步函數	224
9.8.1   異步設備I/O	224
9.8.2   WaitForInputIdle	224
9.8.3   MsgWaitForMultipleObjects (Ex)	225
9.8.4   WaitForDebugEvent	225
9.8.5   SingleObjectAndWait	226
第10章   線程同步工具包	228
10.1   實現關鍵代碼段:Optex	228
10.2   創建線程安全的數據類型和反信標	239
10.3   單個寫入程序/多個閱讀程序的保護	251
10.4   實現一個WaitForMultipleExpressions
       函數	259
第11章   線程池的使用	274
11.1   方案1:異步調用函數	275
11.2   方案2:按規定的時間間隔調用函數	277
11.3   方案3:當單個內核對象變為已通知狀態
           時調用函數	283
11.4   方案4:當異步I/O請求完成運行時調用
          函數	285
第12章   纖程	287
12.1   纖程的操作	287
12.2   Counter示例應用程序	289
第三部分   內 存 管 理
第13章   Windows的內存結構	299
13.1   進程的虛擬地址空間	299
13.2   虛擬地址空間如何分區	300
13.2.1   NuLL 指針分配的分區—適用于
             Windows 2000和Windows 98	300
13.2.2   MS-DOS/16位Windows 應用程序兼容
             分區—僅適用于Windows 98	301
13.2.3   用戶方式分區—適用于Windows 2000
             和Windows 98	301
13.2.4   64 KB禁止進入的分區—僅適用
             于Windows 2000	302
13.2.5   共享的MMF分區—僅適用于
             Windows 98	303
13.2.6   內核方式分區—適用于Windows 
             2000和Windows 98	303
13.3   地址空間中的區域	303
13.4    提交地址空間區域中的物理存儲器	304
13.5   物理存儲器與頁文件	304
13.6   保護屬性	307
13.6.1   Copy-On-Write 訪問	308
13.6.2   特殊的訪問保護屬性的標志	309
13.7   綜合使用所有的元素	309
13.7.1   區域的內部情況	312
13.7.2   與Windows 98地址空間的差別	315
13.8   數據對齊的重要性	319
第14章   虛擬內存	323
14.1   系統信息	323
14.2   虛擬內存的狀態	330
14.3   確定地址空間的狀態	336
14.3.1   VMQuery函數	337
14.3.2   虛擬內存表示例應用程序	343
第15章   在應用程序中使用虛擬內存	354
15.1   在地址空間中保留一個區域	354
15.2   在保留區域中的提交存儲器	355
15.3   同時進行區域的保留和內存的提交	356
15.4   何時提交物理存儲器	357
15.5   回收虛擬內存和釋放地址空間區域	358
15.5.1   何時回收物理存儲器	359
15.5.2   虛擬內存分配的示例應用程序	360
15.6   改變保護屬性	368
15.7   清除物理存儲器的內容	369
15.8      地址窗口擴展—適用于
             Windows 2000	372
第16章   線程的堆棧	385
16.1   Windows 98下的線程堆棧	387
16.2   C/C++運行期庫的堆棧檢查函數	389
16.3   Summation示例應用程序	390
第17章   內存映射文件	397
17.1   內存映射的可執行文件和DLL
           文件	397
17.1.1   可執行文件或DLL的多個實例
             不能共享靜態數據	398
17.1.2   在可執行文件或DLL的多個實
             例之間共享靜態數據	400
17.1.3   AppInst示例應用程序	404
17.2   內存映射數據文件	409
17.2.1   方法 1:一個文件,一個緩存	409
17.2.2   方法 2:兩個文件,一個緩存	409
17.2.3   方法 3:一個文件,兩個緩存	410
17.2.4   方法 4:一個文件,零緩存	410
17.3   使用內存映射文件	410
17.3.1   步驟 1:創建或打開文件內核
             對象	411
17.3.2   步驟 2:創建一個文件映射內核
             對象	412
17.3.3   步驟 3:將文件數據映射到進程
               的地址空間	414
17.3.4   步驟4:從進程的地址空間中撤消
             文件數據的映像	416
17.3.5   步驟 5和步驟 6:關閉文件映射對象
             和文件對象	417
17.3.6   文件倒序示例應用程序	418
17.4   使用內存映射文件來處理大文件	426
17.5   內存映射文件與數據視圖的相關性	427
17.6   設定內存映射文件的基地址	428
17.7   實現內存映射文件的具體方法	429
17.8   使用內存映射文件在進程之間共享
       數據	431
17.9   頁文件支持的內存映射文件	431
17.10   稀疏提交的內存映射文件	438
第18章   堆棧	451
18.1   進程的默認堆棧	451
18.2   為什么要創建輔助堆棧	452
18.2.1   保護組件	452
18.2.2   更有效的內存管理	453
18.2.3   進行本地訪問	453
18.2.4   減少線程同步的開銷	453
18.2.5   迅速釋放堆棧	453
18.3   如何創建輔助堆棧	454
18.3.1   從堆棧中分配內存塊	455
18.3.2   改變內存塊的大小	456
18.3.3   了解內存塊的大小	456
18.3.4   釋放內存塊	457
18.3.5   撤消堆棧	457
18.3.6   用C++程序來使用堆棧	457
18.4   其他堆棧函數	460
第四部分   動態鏈接庫
第19章    DLL基礎	463
19.1   DLL與進程的地址空間	464
19.2   DLL的總體運行情況	465
19.3   創建DLL模塊	467
19.3.1   輸出的真正含義是什么	469
19.3.2   創建用于非Visual C++工具
            的DLL	471
19.4   創建可執行模塊	472
19.5   運行可執行模塊	474
第20章   DLL的高級操作技術	477
20.1   DLL模塊的顯式加載和
          符號鏈接	477
20.1.1   顯式加載DLL模塊	478
20.1.2   顯式卸載DLL模塊	479
20.1.3   顯式鏈接到一個輸出符號	480
20.2   DLL的進入點函數	481
20.2.1   DLL_PROCESS_ATTACH通知	482
20.2.2   DLL_PROCESS_DETACH通知	483
20.2.3   DLL_THREAD_ATTACH通知	485
20.2.4   DLL_THREAD_DETACH通知	485
20.2.5   順序調用DllMain	486
20.2.6   DllMain與C/C++運行期庫	488
20.3   延遲加載DLL	489
20.4   函數轉發器	499
20.5   已知的DLL	499
20.6   DLL轉移	500
20.7   改變模塊的位置	501
20.8   綁定模塊	506
第21章   線程本地存儲器	509
21.1   動態TLS	509
21.2   靜態TLS	513
第22章   插入DLL和掛接API	515
22.1   插入DLL:一個例子	515
22.2   使用注冊表來插入DLL	517
22.3   使用Windows掛鉤來插入DLL	518
22.4   使用遠程線程來插入DLL	531
22.4.1   Inject Library 示例應用程序	534
22.4.2   Image Walk DLL	541
22.5   使用特洛伊DLL來插入DLL	544
22.6   將DLL作為調試程序來插入	544
22.7   用Windows 98上的內存映射文件
          插入代碼	544
22.8   用CreateProcess插入代碼	544
22.9   掛接API的一個示例	545
22.9.1   通過改寫代碼來掛接API	546
22.9.2   通過操作模塊的輸入節來掛接API	546
22.9.3   LastMsgBoxInfo示例應用程序	549
第五部分   結構化異常處理
第23章   結束處理程序	565
23.1   通過例子理解結束處理程序	566
23.2   Funcenstein1	566
23.3   Funcenstein2	566
23.4   Funcenstein3	568
23.5   Funcfurter1	568
23.6   突擊測驗:FuncaDoodleDoo	569
23.7   Funcenstein4	570
23.8   Funcarama1	571
23.9   Funcarama2	572
23.10   Funcarama3	572
23.11   Funcarama4:最終的邊界	573
23.12   關于finally塊的說明	574
23.13   Funcfurter2	575
23.14   SEH結束處理示例程序	576
第24章   異常處理程序和軟件異常	578
24.1   通過例子理解異常過濾器和異常處理
       程序	578
24.1.1   Funcmeister1	578
24.1.2   Funcmeister2	579
24.2   EXCEPTION_EXECUTE_HANDLER	580
24.2.1   一些有用的例子	581
24.2.2   全局展開	583
24.2.3   暫停全局展開	585
24.3   EXCEPTION_CONTINUE_
          EXECUTION	586
24.4   EXCEPTION_CONTINUE_
          SEARCH	588
24.5   Get Exception Code 	589
24.6   Get Exception Information	592
24.7   軟件異常	595
第25章   未處理異常和C++異常	598
25.1   即時調試	600
25.2   關閉異常消息框	601
25.2.1   強制進程終止運行	601
25.2.2   包裝一個線程函數	601
25.2.3   包裝所有的線程函數	601
25.2.4   自動調用調試程序	602
25.3  程序員自己調用UnhandledException
       Filter	602
25.4   UnhandledExceptionFilter函數的一些
       細節	603
25.5    異常與調試程序	604
25.6   C++異常與結構性異常的對比	618
第六部分   窗      口
第26章   窗口消息	623
26.1   線程的消息隊列	623
26.2   將消息發送到線程的消息隊列中	625
26.3    向窗口發送消息	626
26.4    喚醒一個線程	630
26.4.1   隊列狀態標志	630
26.4.2   從線程的隊列中提取消息的
             算法	631
26.4.3   利用內核對象或隊列狀態標
             志喚醒線程	634
26.5   通過消息發送數據	636
26.6   Windows如何處理ANSI/Unicode
       字符和字符串	642
第27章   硬件輸入模型和局部輸入狀態	645
27.1   原始輸入線程	645
27.2   局部輸入狀態	646
27.2.1   鍵盤輸入與焦點	647
27.2.2   鼠標光標管理	649
27.3   將虛擬輸入隊列同局部輸入狀態掛接
       在一起	651
27.3.1   LISLab 示例程序	652
27.3.2   LISWatch 示例程序	666
第七部分   附      錄
附錄A   建立環境	675
附錄B   消息分流器、子控件宏和API宏	686

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
粉嫩在线一区二区三区视频| 亚洲乱码国产乱码精品精98午夜| zzijzzij亚洲日本少妇熟睡| 国模冰冰炮一区二区| 久久99热99| 国产制服丝袜一区| 国产成人日日夜夜| 成人福利视频网站| 丁香天五香天堂综合| 国产91对白在线观看九色| 国产乱对白刺激视频不卡| 国产suv精品一区二区三区| 岛国精品在线播放| 99久久综合精品| 日本精品裸体写真集在线观看| 欧美在线视频全部完| 欧美女孩性生活视频| 91精品国产欧美一区二区| 日韩欧美的一区| 久久午夜国产精品| 亚洲日本丝袜连裤袜办公室| 亚洲第一成年网| 美女诱惑一区二区| 成人国产精品免费观看视频| 99re热这里只有精品视频| 欧美日韩一区二区三区不卡| 日韩欧美的一区| 国产精品天美传媒沈樵| 亚洲一区电影777| 久久av资源网| 97久久精品人人做人人爽50路| 欧美视频一区二区三区在线观看| 日韩女优av电影| **欧美大码日韩| 久久精品久久综合| 99久久精品免费看国产免费软件| 欧美日韩国产高清一区二区| 国产喷白浆一区二区三区| 亚洲一线二线三线视频| 激情欧美日韩一区二区| 一本高清dvd不卡在线观看| 欧美一二三区精品| 日韩伦理免费电影| 国产一区二区伦理| 欧美三级在线看| 中文字幕精品一区二区精品绿巨人| 亚洲成人一区二区在线观看| 东方欧美亚洲色图在线| 日韩欧美久久久| 亚洲18影院在线观看| bt欧美亚洲午夜电影天堂| 日韩欧美一级二级三级 | 天天综合网天天综合色| 成人app在线| 精品国产91洋老外米糕| 亚洲不卡一区二区三区| 99vv1com这只有精品| 精品国产第一区二区三区观看体验| 亚洲国产日产av| 91视视频在线观看入口直接观看www | 亚洲精品videosex极品| 国产一区二区h| 日韩欧美一区二区久久婷婷| 日韩成人免费在线| 宅男在线国产精品| 亚洲自拍另类综合| 91九色最新地址| 亚洲精品日日夜夜| 91激情五月电影| 亚洲精品一卡二卡| 色先锋aa成人| 亚洲精品乱码久久久久| 色综合色综合色综合色综合色综合| 欧美激情一二三区| 国产成人福利片| 国产片一区二区| 不卡一区二区中文字幕| 中文字幕的久久| 99久久99久久精品国产片果冻| 国产精品美女一区二区三区 | 久久成人麻豆午夜电影| 日韩精品一区二区三区视频播放 | 久久久久久电影| 国产黄色成人av| 国产精品女人毛片| 99re成人精品视频| 亚洲成av人片一区二区| 91.xcao| 精品在线免费视频| 国产日韩一级二级三级| 不卡一二三区首页| 一区二区三区在线视频免费| 欧美三级乱人伦电影| 日韩国产在线一| 日韩女优av电影| 成人免费不卡视频| 亚洲一卡二卡三卡四卡无卡久久| 欧美三级蜜桃2在线观看| 美腿丝袜亚洲综合| 国产精品久线观看视频| 91片在线免费观看| 日韩av成人高清| 中文字幕精品三区| 欧美剧在线免费观看网站| 久久99久久99精品免视看婷婷| 欧美国产精品劲爆| 欧美日韩免费电影| 国产伦精品一区二区三区免费迷| 国产免费观看久久| 精品视频一区二区不卡| 狠狠色丁香久久婷婷综| 亚洲女同女同女同女同女同69| 欧美精选午夜久久久乱码6080| 国产资源在线一区| 亚洲激情自拍偷拍| 精品国产第一区二区三区观看体验 | 欧美一级二级在线观看| 高清免费成人av| 日韩精品福利网| 日韩美女视频一区| 久久人人97超碰com| 欧美亚洲国产bt| 丁香一区二区三区| 麻豆成人91精品二区三区| 亚洲欧美日韩国产综合| 精品裸体舞一区二区三区| 在线视频中文字幕一区二区| 国产精品中文字幕日韩精品| 午夜精品久久久久久久99水蜜桃| 国产精品久久久久久亚洲伦| 日韩视频免费观看高清在线视频| 色综合久久综合网欧美综合网| 国产一区二三区好的| 无吗不卡中文字幕| 一区二区三区色| 国产精品成人在线观看| 久久精品一区四区| 日韩女优av电影| 日韩一级免费观看| 欧美浪妇xxxx高跟鞋交| 欧美综合亚洲图片综合区| av资源网一区| jizz一区二区| 成人一区二区三区| 国产91富婆露脸刺激对白| 国产精品一区免费在线观看| 久草精品在线观看| 久久成人免费网| 韩日精品视频一区| 国产在线一区二区综合免费视频| 蜜乳av一区二区| 激情综合色播激情啊| 六月婷婷色综合| 极品销魂美女一区二区三区| 青椒成人免费视频| 六月丁香婷婷色狠狠久久| 久久成人av少妇免费| 国产高清无密码一区二区三区| 国产福利一区二区三区视频在线| 国产一区二区三区免费看| 国产乱理伦片在线观看夜一区| 国产成人久久精品77777最新版本| 奇米综合一区二区三区精品视频| 日日摸夜夜添夜夜添亚洲女人| 日韩二区在线观看| 免费成人在线播放| 国产二区国产一区在线观看| 不卡的av在线播放| 在线观看视频一区二区| 91精品国产aⅴ一区二区| 精品免费日韩av| 欧美国产日韩在线观看| ...中文天堂在线一区| 午夜视频一区在线观看| 激情小说欧美图片| 91网页版在线| 欧美日韩精品福利| 精品盗摄一区二区三区| 中文字幕一区二区三区四区| 亚洲一区二区av电影| 国产麻豆精品久久一二三| 成人av电影在线网| 91精品国产综合久久久久久久久久 | 偷偷要91色婷婷| 国产精品自拍网站| 日本丰满少妇一区二区三区| 欧美日韩大陆一区二区| 久久久久久久久久久黄色| 自拍av一区二区三区| 麻豆成人久久精品二区三区小说| 大胆亚洲人体视频| 在线成人av网站| 中文字幕中文字幕一区二区 | 国产一区二区不卡| 欧美在线视频日韩| 欧美韩日一区二区三区| 日韩成人精品在线观看| 一本大道久久a久久精二百| 精品电影一区二区三区| 亚洲不卡在线观看|