乙個API攔截的例子

2021-06-09 03:06:39 字數 611 閱讀 3324

閒來無事,做乙個api攔截的簡單程式,目標是攔截exploer.exe的createprocess.當開啟桌面程式時,執行自定義的**。

首先需要確認的是,explorer.exe建立程序是用了什麼函式,建立程序自然想到用createprocess(createprocessa,createprocessw).

這裡我攔截的是createprocessw。

執行以下命令:

dumpbin /imports explorer.exe | findstr createprocess

會發現explorer.exe只引用了createprocessw,這就是要攔截的api,我的試驗機器是xp

大致過程如下,需開發乙個exe,乙個dll。

該exe查詢explorer.exe的pid,呼叫createremotethread,讓explorer.exe載入我們的dll,**在《windows核心程式設計》一書中可以找到。

該dll在被載入時執行api的位址替換,將createprocessw替換為我們自己的函式,函式原型和createprocessw一樣,裡面先執行我們自己的**,

再return createprocessw即可。

(需要關閉360,不然會失敗)

乙個struts spring的例子

第乙個struts spring的例子 呵呵剛學spring 寫還望各位大蝦指教!配置struts就不用說了吧,如果用myeclipse直接add一下就可以了.接下來就來配置讓它支援spring 可 一,新建專案後,開啟struts confing.xml在後面加人下面 簡單吧!二然後就開始寫我們的...

乙個sql的例子

select dbo.userinfo.username,dbo.userinfo.usertruename,dbo.userinfo.useremail,dbo.userinfo.usermobile,dbo.userinfo.usertelephone,dbo.userinfo.usercar,...

乙個API HOOK的例子

乙個api hook的例子 2010年07月20日 include include 執行緒操作api hinstance hinst 任務例項id hwnd mainfrmhwnd 主視窗控制代碼 hfont globalfont 字型 typedef struct remoteparam 視窗類名...