Delphi API Hook的问题
Delphi(Pascal) code:
{一个修改IAT实现API挂钩的程序,}
library Hook;
uses
Windows,
w_Hook in 'w_Hook.pas';
{$R *.res}
function DllEntry(dwReason:LONGINT):DWORD;STDCALL;
begin
case dwReason of
DLL_PROCESS_ATTACH:
begin
w_Hook.IntallHook;
end;
end;
result := 0;
end;
begin
DllProc := @DllEntry;
DllEntry(DLL_PROCESS_ATTACH);
end.
/////////////////////////////////////////////////////////////////////////
unit w_Hook;
interface
uses
Windows,SysUtils,Classes;
type
PIMAGE_IMPORT_DESCRIPTOR = ^IMAGE_IMPORT_DESCRIPTOR;
IMAGE_IMPORT_DESCRIPTOR = record
OriginalFirstThunk : DWORD;
TimeDateStamp : DWORD;
ForwarderChain : DWORD;
Name : DWORD;
FirstThunk : DWORD;
end;
PIMAGE_THUNK_DATA = ^IMAGE_THUNK_DATA;
IMAGE_THUNK_DATA = record
Function_ : PDWORD;
end;
procedure IntallHook;STDCALL;
implementation
function MyMessageBox(hwnd:CARDINAL;lpmsg:pchar;lpcaption:pchar;nType:UINT):dword;stdcall;
begin
result := MessageBox(hwnd,'HOOK','HOOK',MB_OK);
end;
procedure IntallHook;STDCALL;
var
OpHeader : IMAGE_OPTIONAL_HEADER;
NtHeader : IMAGE_NT_HEADERS;
dosHeader : IMAGE_DOS_HEADER;
ImpHeader : PIMAGE_IMPORT_DESCRIPTOR;
hModule : CARDINAL;
thunk : PIMAGE_THUNK_DAT
相关问答:
delphi 异步线程怎么怎么实现?
请各位大佬帮忙!
最好有个实例!
多谢
你不同步就是异步了,还写啥
默认情况下,线程就是异步的…………*^_^*
估计楼主同步和异步概念都没弄清
真无语。。可 ......
由于客戶端有的文件經常更新(遠程的,不是局域網),
所以想寫個自動更新的 程序。
看網上的 方法資料,知道些方法,但不知道具體怎么寫。
......
Delphi
怎样获取网页部分内容(代码),并且显示出来!
(只是网页里面的一部分内容并不是全部)
没弄懂!
类似websever的功能?
估计是利用ie的接口。。。。。。。。
是类似websever的功能 ......
用DEDE打开一个DLL,找到需要的函数了,但是显示的都是汇编代码,看不懂,恳请高手驻足帮忙啊!
是一个KEYPRESS响应函数,功能是在按下enter后判断输入的字符,我想按照自己的需求跳转,但是
找不到位置,高手 ......