激情久久久_欧美视频区_成人av免费_不卡视频一二三区_欧美精品在欧美一区二区少妇_欧美一区二区三区的

服務器之家:專注于服務器技術及軟件下載分享
分類導航

PHP教程|ASP.NET教程|Java教程|ASP教程|編程技術|正則表達式|C/C++|IOS|C#|Swift|Android|VB|R語言|JavaScript|易語言|vb.net|

服務器之家 - 編程語言 - 易語言 - 詳解易語言的鉤子(鉤子HOOK與APIHOOK區(qū)別)

詳解易語言的鉤子(鉤子HOOK與APIHOOK區(qū)別)

2022-01-12 15:00易語言教程網(wǎng) 易語言

在本篇文章中我們給大家分享了易語言中鉤子的概念以及相關知識點內(nèi)容,有興趣的朋友們可以學習下。

在本篇內(nèi)容里我們給大家詳細分析了易語言中間的鉤子概念以及HOOK與APIHOOK區(qū)別

鉤子 原英文名稱 Hook ,鉤子的意思是指攔截或截獲。作用就是攔截程序中交互的數(shù)據(jù),先經(jīng)過我們預定的鉤子處理接口程序,處理過后,再交還給原處理程序,或者干脆阻止,吃掉這些數(shù)據(jù),讓原處理程序什么也得不到。

鉤子原來是Windows操作系統(tǒng)常用來檢查系統(tǒng)與程序間通信的一些數(shù)據(jù)是否到達目標時用的,為不傳之密,后來隨著一些高手們的研究,逐漸的發(fā)現(xiàn)了這些秘密的技術并且公布了出來。同時還有更多的人在掌握了這些技術后,用在自已的軟件開發(fā)中,實現(xiàn)出奇招而超過其它同類軟件的功能而贏得市場。。 鉤子技術的種類上很多.

HOOK API和HOOK技術完全不同。盡管它們都是鉤子。HOOK鉤的是消息,它在系統(tǒng)將消息傳遞給應用程序之前截獲它,然后進行操作、或修改消息、或停止消息 的傳遞;

而HOOK API截獲的是應用程序?qū)ο到y(tǒng)API的調(diào)用,它在應用程序?qū)ο到y(tǒng)API的調(diào)用之前截獲此調(diào)用動作,讓其轉(zhuǎn)而調(diào)用我們所定義的函數(shù)(內(nèi)容可能是進行一些操作 后再調(diào)用原系統(tǒng)API)。

關于HOOK技術,微軟為我們提供了現(xiàn)成的API,有固定的使用步驟。

而對于HOOK API技術,微軟并沒有向我們提供類似的API,沒有那么簡潔的步驟可供我們參考,也許是因為微軟并不希望我們用這樣的手段編程,所以相對要麻煩一些。

WINDOWS的鉤子函數(shù)可以認為是WINDOWS的主要特性之一。利用它們,您可以捕捉您自己進程或其它進程發(fā)生的事件。通過“鉤掛”,您可以給WINDOWS一個處理或過濾事件的回調(diào)函數(shù),該函數(shù)也叫做“鉤子函數(shù)”,當每次發(fā)生您感興趣的事件時,WINDOWS都將調(diào)用該函數(shù)。一共有兩種類型的鉤子:局部的和遠程的。

局部鉤子僅鉤掛您自己進程的事件。

遠程的鉤子還可以將鉤掛其它進程發(fā)生的事件。遠程的鉤子又有兩種:

基于線程的 它將捕獲其它進程中某一特定線程的事件。簡言之,就是可以用來觀察其它進程中的某一特定線程將發(fā)生的事件。
系統(tǒng)范圍的 將捕捉系統(tǒng)中所有進程將發(fā)生的事件消息。 當您創(chuàng)建一個鉤子時,WINDOWS會先在內(nèi)存中創(chuàng)建一個數(shù)據(jù)結(jié)構(gòu),該數(shù)據(jù)結(jié)構(gòu)包含了鉤子的相關信息,然后把該結(jié)構(gòu)體加到已經(jīng)存在的鉤子鏈表中去。新的鉤子將加到老的前面。當一個事件發(fā)生時,如果您安裝的是一個局部鉤子,您進程中的鉤子函數(shù)將被調(diào)用。如果是一個遠程鉤子,系統(tǒng)就必須把鉤子函數(shù)插入到其它進程的地址空間,要做到這一點要求鉤子函數(shù)必須在一個動態(tài)鏈接庫中,所以如果您想要使用遠程鉤子,就必須把該鉤子函數(shù)放到動態(tài)鏈接庫中去。當然有兩個例外:工作日志鉤子和工作日志回放鉤子。這兩個鉤子的鉤子函數(shù)必須在安裝鉤子的線程中。原因是:這兩個鉤子是用來監(jiān)控比較底層的硬件事件的,既然是記錄和回放,所有的事件就當然都是有先后次序的。所以如果把回調(diào)函數(shù)放在DLL中,輸入的事件被放在幾個線程中記錄,所以我們無法保證得到正確的次序。故解決的辦法是:把鉤子函數(shù)放到單個的線程中,譬如安裝鉤子的線程。

鉤子一共有14種,以下是它們被調(diào)用的時機:

WH_CALLWNDPROC 當調(diào)用SendMessage時
WH_CALLWNDPROCRET 當SendMessage的調(diào)用返回時
WH_GETMESSAGE 當調(diào)用GetMessage 或 PeekMessage時
WH_KEYBOARD 當調(diào)用GetMessage 或 PeekMessage 來從消息隊列中查詢WM_KEYUP 或 WM_KEYDOWN 消息時
WH_MOUSE 當調(diào)用GetMessage 或 PeekMessage 來從消息隊列中查詢鼠標事件消息時
WH_HARDWARE 當調(diào)用GetMessage 或 PeekMessage 來從消息隊列種查詢非鼠標、鍵盤消息時
WH_MSGFILTER 當對話框、菜單或滾動條要處理一個消息時。該鉤子是局部的。它時為那些有自己的消息處理過程的控件對象設計的。
WH_SYSMSGFILTER 和WH_MSGFILTER一樣,只不過是系統(tǒng)范圍的
WH_JOURNALRECORD 當WINDOWS從硬件隊列中獲得消息時
WH_JOURNALPLAYBACK 當一個事件從系統(tǒng)的硬件輸入隊列中被請求時
WH_SHELL 當關于WINDOWS外殼事件發(fā)生時,譬如任務條需要重畫它的按鈕.
WH_CBT 當基于計算機的訓練(CBT)事件發(fā)生時
WH_FOREGROUNDIDLE 由WINDOWS自己使用,一般的應用程序很少使用
WH_DEBUG 用來給鉤子函數(shù)除錯

延伸 · 閱讀

精彩推薦
  • 易語言易語言獲取指定磁盤的名稱

    易語言獲取指定磁盤的名稱

    今天小編就為大家分享一篇關于易語言獲取指定磁盤的名稱,小編覺得內(nèi)容挺不錯的,現(xiàn)在分享給大家,具有很好的參考價值,需要的朋友一起跟隨小編來...

    易語言幫助手冊12662022-01-04
  • 易語言易語言在畫板中寫出指定文本當畫板中已滿會自動滾屏

    易語言在畫板中寫出指定文本當畫板中已滿會自動滾屏

    今天小編就為大家分享一篇關于易語言在畫板中寫出指定文本當畫板中已滿會自動滾屏,小編覺得內(nèi)容挺不錯的,現(xiàn)在分享給大家,具有很好的參考價值,...

    易語言幫助手冊9092022-01-12
  • 易語言易語言設置進度條邊框樣式的方法

    易語言設置進度條邊框樣式的方法

    今天小編就為大家分享一篇關于易語言設置進度條邊框樣式的方法,小編覺得內(nèi)容挺不錯的,現(xiàn)在分享給大家,具有很好的參考價值,需要的朋友一起跟隨...

    易語言幫助手冊4422022-01-20
  • 易語言一步一步跟我學易語言之第二個易程序菜單設計

    一步一步跟我學易語言之第二個易程序菜單設計

    今天小編就為大家分享一篇關于的一步一步跟我學易語言之第二個易程序菜單設計,小編覺得內(nèi)容挺不錯的,現(xiàn)在分享給大家,具有很好的參考價值,需要...

    易語言幫助手冊7092021-06-17
  • 易語言易語言關于程序進程和線程的基礎知識

    易語言關于程序進程和線程的基礎知識

    今天小編就為大家分享一篇關于易語言關于程序進程和線程的基礎知識,小編覺得內(nèi)容挺不錯的,現(xiàn)在分享給大家,具有很好的參考價值,需要的朋友一起...

    三葉資源網(wǎng)6662022-02-24
  • 易語言一步一步跟我學易語言之關于變量

    一步一步跟我學易語言之關于變量

    今天小編就為大家分享一篇關于一步一步跟我學易語言之關于變量,小編覺得內(nèi)容挺不錯的,現(xiàn)在分享給大家,具有很好的參考價值,需要的朋友一起跟隨...

    易語言幫助手冊10822021-06-17
  • 易語言實例操作易語言載入窗口

    實例操作易語言載入窗口

    在本文中小編給大家整理的是關于易語言載入窗口的教程和步驟內(nèi)容,需要的可以跟著學習下...

    易語言教程網(wǎng)19162022-03-02
  • 易語言易語言生成exe文件的方法

    易語言生成exe文件的方法

    在本篇內(nèi)容中小編給大家分享的是關于易語言生成exe文件的方法知識點,需要的朋友們參考下。...

    易語言教程網(wǎng)14792022-03-01
主站蜘蛛池模板: 思思久而久而蕉人 | 97porn| 成人三级免费电影 | 中文字幕在线看第二 | www深夜成人| 成人毛片网| 国产免费高清在线视频 | 国产精品久久久久久久久粉嫩 | 欧美特黄一级高清免费的香蕉 | 久久国产中文字幕 | 俄罗斯16一20sex牲色另类 | 91免费无限观看 | 天堂在线中文资源 | 久久国产精品影视 | 中国a级黄色片 | 青青草成人av | 黄色电影免费提供 | 91精品国产91热久久久做人人 | lutube成人福利在线观看污 | 国产精品一二区 | 九九色网站| 在线免费av网站 | 性少妇videosexfreexx | 爱高潮www亚洲精品 国产一区二区三区视频免费 | 亚洲aⅴ在线观看 | 99久久自偷自偷国产精品不卡 | 极品国产91在线网站 | 一级看片免费视频 | 毛片av网| 一区二区免费网站 | 欧美视频一区二区三区在线观看 | 亚洲一区二区三区在线播放 | 国产视频软件在线 | 欧美 国产 亚洲 卡通 综合 | 免费看一区二区三区 | 最近免费中文字幕在线视频2 | www.成人在线 | 国产jjizz一区二区三区视频 | 久久精品站 | 欧美亚洲国产成人综合在线 | 欧美极品欧美精品欧美视频 |