劫持代码:
//开始拦截
void Hook()
{
DetourRestoreAfterWith ();//恢复原来状态 ,
DetourTransactionBegin ();//拦截开始
DetourUpdateThread (GetCurrentThread());//刷新当前线程
//这里可以连续多次调用 DetourAttach,表明HOOK 多个函数
DetourAttach ((void **)&oldsystem , newsystem);//实现函数拦截 //修改这里就可以了
DetourTransactionCommit ();//拦截生效
}
//取消拦截
void UnHook()
{
DetourTransactionBegin ();//拦截开始
DetourUpdateThread (GetCurrentThread());//刷新当前线程
//这里可以连续多次调用 DetourDetach,表明撤销多个函数HOOK
DetourDetach ((void **)&oldsystem , newsystem); //撤销拦截函数
DetourTransactionCommit ();//拦截生效
}