非托管函数挂钩、调用约定的堆栈/寄存器问题?
这不是 EasyHook 的特定功能,而是一般的挂钩功能。我想用这个签名挂钩一个函数: public: int __thiscall Connection_t::Send(unsigned int,unsigned…
无法理解 x86-64 函数前导码
我遇到了崩溃,在调查时我发现自己完全被以下代码阻止: 0000000000000a00 : a00: 55 push %rbp a01: 48 89 e5 mov %rsp,%rbp a04: 41 57 push %r15 a…
stdcall 可以有可变参数吗?
据我所知,只有 caller-clean-stack 约定可以使用变量参数。 顺便说一句,WinApi StringCchPrintfW 是这样声明的。(我删除了 SAL) __inline HRESULT…
与 ABI 调用约定和架构混淆
我对所有这些术语感到困惑: ABI、调用约定和硬件架构。 ABI 与架构相关:x86-64 的 ABI 与 i386 不同。 但是您也可以定义自己的调用约定 cdecl... 那…
什么是 OpenSolaris 系统调用调用约定 (x86)?
什么是 OpenSolaris 系统调用调用约定 (x86)? Fe 我想用 32 位程序集编写一个程序,在控制台上显示一个字符串。为此,我想使用“write”系统调用(第…
将调用约定从 cdecl 更改为 stdcall
在 VS2005 中,我使用 _cdecl 调用约定,并且项目构建时没有任何链接器错误。在将项目移植到 VS2008 时将调用约定更改为 _stdcall 后,出现以下错误:…
为什么有这么多不同的调用约定?
从历史上看,为什么似乎每个人和他们的弟弟都定义了自己的调用约定?你有 C、C++、Windows、Pascal、Fortran、Fastcall 以及可能还有无数其他我没有想…
WinCE 和 Linux 上的 ARM 调用约定?
WinCE 和 Linux 在 ARM 上使用相同的调用约定吗?有什么区别? 到目前为止我找到的文档并没有很好地解释。例如 http://msdn.microsoft.com/en-us/libr…
在 Linux 上从汇编代码调用 SDL/OpenGL
我正在汇编中编写一个简单的基于图形的程序以用于学习目的;为此,我打算使用 OpenGL 或 SDL。我正在尝试从程序集中调用 OpenGL/SDL 的函数。 问题是…