日韩黑丝制服一区视频播放|日韩欧美人妻丝袜视频在线观看|九九影院一级蜜桃|亚洲中文在线导航|青草草视频在线观看|婷婷五月色伊人网站|日本一区二区在线|国产AV一二三四区毛片|正在播放久草视频|亚洲色图精品一区

分享

Detour3.0 win7 64bit下的安裝

 herowuking 2015-05-24

最近在做API hook相關(guān)的東西,用了inline hook后感覺不錯(cuò),但是查找資料發(fā)現(xiàn)inline hook并不穩(wěn)定

inline hook 的原理是在系統(tǒng)訪問一個(gè)函數(shù)的時(shí)候先替換原函數(shù)入口處的內(nèi)容跳轉(zhuǎn)到自己設(shè)計(jì)的hook函數(shù)中,然后在自己函數(shù)中進(jìn)行hook工作??墒窃诓⑿邢到y(tǒng)中,很可能有個(gè)線程就在這個(gè)時(shí)候調(diào)用了被自己改掉的系統(tǒng)函數(shù),出現(xiàn)我們無法預(yù)期的結(jié)果。

所以打算學(xué)習(xí)一下inline hook升級(jí)版:detour庫hook,其實(shí)hook過程原理基本一樣,只是微軟做了封裝和相關(guān)的沖突檢查,所以這種api hook穩(wěn)定些。

(當(dāng)然其他apihook方式還有modifying the Import Address Table (link provided later),using proxy DLLs and manifest files

用detour庫進(jìn)行hook必須先部署Detour,

電腦環(huán)境:win7 64bit

1.從http://research.microsoft.com/sn/detours下載detour professional 3.0?。?!不是Express版的哈~

2.安裝(此流程無腦)

3.生成detour.lib:安裝detour后,目錄中有src文件夾,把文件夾拷貝到\Microsoft Visual Studio 10.0\VC下

3.1打開cmd進(jìn)入Microsoft Visual Studio 10.0\VC\bin目錄輸入命令vcvars32.bat,運(yùn)行后可以設(shè)置好編譯環(huán)境

3.2切換到\Microsoft Visual Studio10.0\VC\SRC,然后輸入nmake指令(這里可能會(huì)有錯(cuò)誤 未找到文件“..\system.mak”,解決方法在下面)

4.部署lib文件,上一步\Microsoft Visual Studio10.0\VC\lib中會(huì)生成lib文件,將\Microsoft Visual Studio10.0\VC\src中的detours.h復(fù)制到..\include目錄下(如果include中沒有該頭文件)

整個(gè)部署完成了

detour的使用:

自己寫的源碼中添加如下內(nèi)容就可以使用detour了:

#include <detours .h> //*IMPORTANT: Look at path if compiler error

#pragma comment(lib, "detoured.lib")

#pragma comment(lib, "detours.lib")

未找到文件“..\system.mak”解決方法:
將detours安裝目錄中的system.makMakefile復(fù)制到Microsoft Visual Studio 10.0\VC目錄就解決了

技術(shù)相關(guān)更多文章猛擊:哇啦天堂論壇技術(shù)區(qū)

    本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn)。請(qǐng)注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊一鍵舉報(bào)。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評(píng)論

    發(fā)表

    請(qǐng)遵守用戶 評(píng)論公約

    類似文章 更多