摘要: //Author:Alex(Yock.W)
//轉載請署名出處
前言 基礎知識
本系列文章會對常用的幾種API HOOK方法進行全面的分析。
Hook是什么?
鉤子(Hook),是Windows消息處理機制的一個平臺,應用程序可以在上面設置子程以監視指定窗口的某種消息,而且所監視的窗口可以是其他進程所創建的。當消息到達后,在目標窗口處理函數之前處理它。鉤子機制允許應用程序截獲處理window消息或特定事件。
鉤子實際上是一個處理消息的程序段,通過系統調用,把它掛入系統。每當特定的消息發出,在沒有到達目的窗口前,鉤子程序就先捕獲該消息,亦即鉤子函數先得到控制權。這時鉤子函數即可以加工處理(改變)該消息,也可以不作處理而繼續傳遞該消息,還可以強制結束消息的傳遞。
Hook原理
每個Hook都有一個關聯的鏈表,由系統維護,鏈表指針指向被Hook子程調用的回調函數:
LRESULT WINAPI HookCallBack
閱讀全文