保捱科技网
您的当前位置:首页YJX基础44 __declspec(naked)

YJX基础44 __declspec(naked)

来源:保捱科技网

(在写驱动时)如果函数前不加__declspec(naked)

编译时编译器会自作主张补上栈移动和return,这样会破坏栈平衡

void __declspec(naked) NTSTATUS _MyNtGetThreadContext(HANDLE hThread, PCONTEXT pcontext)
{
    __asm{

                jmp                dword ptr[g_NtGetThreadContext]

                //add esp ,8         编译器会试图破坏栈平衡

                //ret

                }
}

因篇幅问题不能全部显示,请点此查看更多更全内容