我正在使用裸函数和内联汇编程序代理方法调用。
__declspec(naked) void ProxyFunction()
{
static const unsigned int addressofRealFunction = 0x0041b200;
__asm
{
jmp [addressofRealFunction];
}
}
如何将其转换为 x64?在 visual studio 中,x64 没有内联汇编器或裸函数。
Naked 删除了程序集序言和结尾。我需要它来确保堆栈帧对于调用保持等效。
你会怎么做?
最佳答案
尝试直接编译它:
void ProxyFunction()
{
RealFunction();
}
查看编译器是否将其优化为裸跳转。可能吧。
关于c++ - 如何在 x64 Visual C++ 中执行裸函数和内联汇编程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26637755/