我有一个 dll 并且可以使用依赖 walker 看到函数名称,那么我如何判断该函数是在_stdcall
约定还是in _cdecl
约定中呢?
我问这个问题是因为我注意到有很多关于何时使用_stdcall
以及何时使用_cdecl
约定来导出 DLL 中的函数的讨论。
有DLL的源代码就可以了,但是只有一个DLL文件的情况下呢?
我有一个 dll 并且可以使用依赖 walker 看到函数名称,那么我如何判断该函数是在_stdcall
约定还是in _cdecl
约定中呢?
我问这个问题是因为我注意到有很多关于何时使用_stdcall
以及何时使用_cdecl
约定来导出 DLL 中的函数的讨论。
有DLL的源代码就可以了,但是只有一个DLL文件的情况下呢?
MSDN 已详细记录了所有 VC++命名约定。从那里开始。
可以覆盖导出命名,因此它可能不是您区分事物的完美方式。您还可以反汇编这些函数,并密切关注它是如何使用寄存器和堆栈来快速弄清楚的。