多线程API函数钩子,多线程调用该API都会被拦截处理。
仅拦截当前线程调用的钩子建议使用 raw.apiHook
thread.apiHook(
"user32.dll",
"MessageBoxW",
"int(int,ustring,ustring,int)",
function(hwnd,text,caption,flag){
owner.callApi(hwnd, text, "API Hook: " + caption, flag)
/*可选通过 owner.callApi 调用原始函数,
结构体等回调时必须传为指针参数,
可通过 raw.mixin 修改修结构而不改变指针地址,
注意这是线程回调函数,库需要单独引入*/
return true;
}
).install();
安装钩子
卸载钩子