-- 會員 / 註冊 --  
 帳號:
 密碼:
  | 註冊 | 忘記密碼
3/26 新書到! 3/19 新書到! 3/14 新書到! 12/12 新書到!
購書流程Q & A站務留言版客服信箱
3ds MaxMayaRhinoAfter EffectsSketchUpZBrushPainterUnity
PhotoShopAutoCadMasterCamSolidWorksCreoUGRevitNuke
C#CC++Java遊戲程式Linux嵌入式PLCFPGAMatlab
駭客資料庫搜索引擎影像處理FluentVR+ARANSYS深度學習
單晶片AVROpenGLArduinoRaspberry Pi電路設計CadenceProtel
HadoopPythonStm32CortexLabview手機程式AndroidiPhone
可查書名,作者,ISBN,3dwoo書號
詳細書籍分類

深入淺出Windows API程序設計:核心編程篇

( 簡體 字)
作者:王端明類別:1. -> 程式設計 -> 綜合
譯者:
出版社:人民郵電出版社深入淺出Windows API程序設計:核心編程篇 3dWoo書號: 55908
詢問書籍請說出此書號!

有庫存
NT售價: 750

出版日:7/1/2022
頁數:598
光碟數:0
站長推薦:
印刷:黑白印刷語系: ( 簡體 版 )
加入購物車 加到我的最愛
(請先登入會員)
ISBN:9787115571595
作者序 | 譯者序 | 前言 | 內容簡介 | 目錄 | 
(簡體書上所述之下載連結耗時費功, 恕不適用在台灣, 若讀者需要請自行嘗試, 恕不保證)
作者序:

譯者序:

前言:

內容簡介:

本書是 Windows API 程序設計的進階圖書,內容包括多線程編程,內存管理,文件、驅動器和目錄操作,進程,剪貼板,動態鏈接庫,INI 配置文件和注冊表操作,Windows 異常處理,WinSock 網絡編程,其他常用Windows API 編程知識,PE 文件格式深入剖析。通過閱讀本書,讀者可以對 Windows 程序設計有更加深入的認識,并將其應用到實際場景中。
本書適合有一定經驗的 Windows API 程序開發人員閱讀,也可以作為培訓學校的教材使用。
目錄:

第 1章 多線程編程 1
1.1 使用多線程的必要性 2
1.2 多線程編程 5
1.3 線程的終止及其他相關函數 8
1.4 線程間的通信 10
1.4.1 全局變量 11
1.4.2 自定義消息 11
1.4.3 事件對象 15
1.4.4 手動和自動重置事件對象 22
1.5 線程間的同步 25
1.5.1 用戶模式線程同步 28
1.5.2 內核模式線程同步 36
第 2章 內存管理 48
2.1 保護模式的分段與分頁管理機制 50
2.2 獲取系統信息與內存狀態 53
2.3 虛擬地址空間管理函數 56
2.3.1 虛擬地址空間的分配與釋放 57
2.3.2 改變頁面保護屬性 60
2.3.3 查詢頁面信息 61
2.4 堆管理函數 62
2.4.1 私有堆的創建和釋放 63
2.4.2 在堆中分配和釋放內存塊 64
2.4.3 其他堆管理函數 67
2.4.4 在C++中使用堆 68
2.5 其他內存管理函數 70
第3章 文件、驅動器和目錄操作 72
3.1 基本概念 73
3.1.1 與硬盤存儲有關的幾個重要概念 73
3.1.2 分區、邏輯驅動器、文件系統和卷 74
3.1.3 文件名、目錄、路徑和當前目錄 76
3.2 文件操作 77
3.2.1 創建和打開文件 77
3.2.2 讀寫文件 80
3.2.3 文件指針 83
3.2.4 文件屬性 85
3.2.5 復制文件 87
3.2.6 移動文件(目錄)、刪除文件 90
3.2.7 無緩沖I/O 93
3.3 邏輯驅動器和目錄 94
3.3.1 邏輯驅動器操作 94
3.3.2 目錄操作 96
3.3.3 環境變量 102
3.3.4 SHFileOperation函數 106
3.3.5 監視目錄變化 107
3.3.6 獲取硬盤序列號 112
3.3.7 可移動硬盤和U盤監控 118
3.3.8 獲取主板和BIOS序列號 121
3.4 內存映射文件 127
3.4.1 內存映射文件相關函數 128
3.4.2 通過內存映射文件在多個進程間共享數據 134
3.4.3 使用內存映射文件來處理大型文件 136
3.5 APC異步過程調用 137
第4章 進程 143
4.1 創建進程 143
4.2 多個進程間共享內核對象 150
4.3 進程終止 153
4.4 進程間通信 154
4.4.1 WM_COPYDATA 154
4.4.2 管道 159
4.4.3 郵件槽 164
4.5 進程枚舉 165
4.5.1 TlHelp32系列函數 165
4.5.2 EnumProcesses函數 177
4.5.3 進程環境塊PEB 181
4.6 進程調試 185
4.6.1 讀寫其他進程的地址空間 185
4.6.2 獲取一個以暫停模式啟動的進程模塊基地址 189
4.6.3 調試API 193
4.6.4 內存補丁 199
4.6.5 線程環境 204
4.7 窗口間諜 207
4.8 示例:一個程序退出時刪除自身 213
第5章 剪貼板 215
5.1 剪貼板常用函數與消息 215
5.1.1 基本剪貼板函數 215
5.1.2 剪貼板相關的消息 218
5.2 使用剪貼板進行進程間通信 220
5.2.1 Clipboard寫入端 221
5.2.2 Clipboard讀取端 226
5.3 監視剪貼板內容變化 230
5.3.1 相關函數和消息 230
5.3.2 剪貼板監視程序ClipboardMonitor 232
5.3.3 監視剪貼板的新方法 235
第6章 動態鏈接庫 236
6.1 靜態鏈接庫 236
6.2 動態鏈接庫 237
6.2.1 創建DLL項目 238
6.2.2 在可執行模塊中使用DLL 244
6.2.3 入口點函數DllMain 246
6.2.4 延遲加載DLL 248
6.3 線程局部存儲 252
6.3.1 動態TLS 253
6.3.2 靜態TLS 256
6.4 Windows鉤子 258
6.5 在同一個可執行文件的多個實例間共享變量 265
6.6 注入DLL 267
6.6.1 通過Windows鉤子注入DLL 267
6.6.2 通過創建遠程線程注入DLL 276
6.6.3 通過函數轉發器機制注入DLL 283
6.6.4 通過CreateProcess函數寫入ShellCode注入DLL 290
6.6.5 通過調試器寫入ShellCode注入DLL 293
6.6.6 通過APC機制注入DLL 293
6.6.7 通過輸入法機制注入DLL 293
6.7 Shadow API技術 299
6.8 Hook API技術 304
6.8.1 隨機數 304
6.8.2 通過遠程線程注入DLL實現API Hook 306
6.8.3 通過全局消息鉤子注入DLL實現進程隱藏 322
第7章 INI配置文件和注冊表操作 328
7.1 INI配置文件 329
7.1.1 鍵值對的創建、更新與刪除 329
7.1.2 獲取鍵值 330
7.1.3 管理小節 331
7.2 注冊表操作 335
7.2.1 子鍵的打開、關閉、創建和刪除 337
7.2.2 鍵值項的創建或設置、查詢和刪除 340
7.2.3 子鍵、鍵值項的枚舉 344
7.2.4 注冊表應用:程序開機自動運行設置文件關聯 347
第8章 Windows異常處理 349
8.1 結構化異常處理 349
8.1.1 try-except語句 349
8.1.2 GetExceptionCode和GetExceptionInformation 354
8.1.3 利用結構化異常處理進行反調試 358
8.1.4 軟件異常 360
8.2 向量化異常處理(全局) 361
8.2.1 向量化異常處理簡介 361
8.2.2 利用向量化異常處理實現基于斷點的API Hook 362
8.3 頂層未處理異常過濾(全局) 367
8.4 向量化繼續處理(全局) 368
第9章 WinSock網絡編程 374
9.1 OSI參考模型和TCP/IP協議簇 374
9.1.1 OSI參考模型 374
9.1.2 TCP/IP協議簇 377
9.1.3 套接字網絡編程接口 379
9.2 IP地址、網絡字節順序和WinSock的地址表示方式 380
9.2.1 IP地址和端口 380
9.2.2 網絡字節順序 381
9.2.3 WinSock的地址表示方式 381
9.3 WinSock網絡編程 383
9.3.1 TCP網絡編程的一般步驟 384
9.3.2 TCP服務器程序 390
9.3.3 TCP客戶端程序 395
9.3.4 UDP編程 399
9.3.5 P2P技術 402
9.4 WinSock異步I/O模型 403
9.4.1 阻塞模式下的多線程多客戶端套接字編程 404
9.4.2 select模型 414
9.4.3 WSAAsyncSelect模型 419
9.4.4 WSAEventSelect模型 424
9.4.5 Overlapped模型 431
9.4.6 完成端口模型 447
9.4.7 深入介紹I/O完成端口 456
9.4.8 深入介紹線程池 463
9.5 IPHelper API及其他函數 474
9.5.1 獲取本地計算機的網絡適配器信息 475
9.5.2 其他函數 478
9.5.3 校對時間程序 480
9.6 系統網絡連接的啟用和禁用 482
第 10章 其他常用Windows API編程知識 489
10.1 快捷方式 489
10.2 程序開機自動啟動 491
10.2.1 將程序的快捷方式寫入開機自動啟動程序目錄 491
10.2.2 創建任務計劃實現開機自動啟動 493
10.2.3 創建系統服務實現開機自動啟動 493
10.3 用戶賬戶控制 508
10.3.1 自動提示用戶提升權限 510
10.3.2 利用ShellExecuteEx函數以管理員權限啟動程序 512
10.3.3 繞過UAC提權提示以管理員權限運行 513
10.4 用戶界面特權隔離 514
10.5 窗口的查找與枚舉 515
10.6 實現任務欄通知區域圖標與氣泡通知 517
第 11章 PE文件格式深入剖析 520
11.1 DOS頭(DOS MZ頭和DOSStub塊) 521
11.2 PE頭(IMAGE_NT_HEADER32結構) 522
11.3 節表(節區信息結構IMAGE_SECTION_HEADER列表) 531
11.4 64位可執行文件格式PE32+ 537
11.5 導入表 538
11.6 導出表 547
11.7 重定位表 552
11.8 模擬PE加載器直接加載可執行文件到進程內存中執行 555
11.9 線程局部存儲表 563
11.10 加載配置信息表 568
11.11 資源表 569
11.12 延遲加載導入表 577
11.13 校驗和與CRC 577
11.14 64位程序中如何書寫匯編代碼(以獲取CPUID為例) 580
11.15 Detours-master庫 583
11.15.1 注入DLL的編寫 583
11.15.2 將注入DLL加載到目標進程中 586
11.15.3 編輯可執行文件 591
11.16 通過修改模塊導入表中的IAT項來Hook API 592
序: