是否有任何本机 DLL 导出函数查看器? [英] Is there any native DLL export functions viewer?

查看:25
本文介绍了是否有任何本机 DLL 导出函数查看器?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

是否有免费的本地 Windows DLL 导出函数查看器,可以显示函数名称及其参数列表?

Is there any free native Windows DLL export functions viewer, which shows the function name, and a list of their parameters?

推荐答案

可以使用Dependency Walker查看函数名称.只有当它被装饰时,你才能看到函数的参数.请阅读常见问题解答中的以下内容:

you can use Dependency Walker to view the function name. you can see the function's parameters only if it's decorated. read the following from the FAQ:

如何查看函数的参数和返回类型?对于大多数功能,此信息根本不存在于模块中.Windows 的模块文件格式仅提供单个文本字符串来标识每个函数.没有结构化的方式来列出参数的数量、参数类型或返回类型.但是,有些语言会做一些称为函数装饰"或重整"的事情,这是将信息编码到文本字符串中的过程.例如,像 int Foo(int, int) 这样用简单修饰编码的函数可能会导出为 _Foo@8.8 指的是参数使用的字节数.如果使用C++修饰,函数将导出为?Foo@@YGHHH@Z,可以直接解码回函数的原始原型:int Foo(int, int).Dependency Walker 使用 Undecorate C++ 函数命令支持 C++ 取消修饰.

How do I view the parameter and return types of a function? For most functions, this information is simply not present in the module. The Windows' module file format only provides a single text string to identify each function. There is no structured way to list the number of parameters, the parameter types, or the return type. However, some languages do something called function "decoration" or "mangling", which is the process of encoding information into the text string. For example, a function like int Foo(int, int) encoded with simple decoration might be exported as _Foo@8. The 8 refers to the number of bytes used by the parameters. If C++ decoration is used, the function would be exported as ?Foo@@YGHHH@Z, which can be directly decoded back to the function's original prototype: int Foo(int, int). Dependency Walker supports C++ undecoration by using the Undecorate C++ Functions Command.

这篇关于是否有任何本机 DLL 导出函数查看器?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆