我有一个 DLL 文件。如何查看该 DLL 中的函数?
在不告诉我们这个 DLL/程序集来自哪种语言的情况下,我们只能猜测。
那 .NET 反射器呢。
对于本机代码,最好使用 依赖 Walker。还可以使用 VisualStudio 附带的 垃圾桶命令行实用工具。
使用免费的 导出查看器,很容易使用。
您可以在 VisualStudio 中尝试 对象浏览器。
选择 编辑自定义组件集。从那里,你可以选择各种各样的。NET、 COM 或项目库,或者只是通过浏览导入外部 DLL。
如果 DLL 是在。NET 语言,如果只想查看哪些函数,则在项目中有对此 DLL 的引用。
然后双击参考文件夹中的 DLL,然后您将看到它在 OBJECT EXPLORER 窗口中具有什么功能。
如果要查看该 DLL 文件的源代码,可以使用如下反编译应用程序。NET 反射器。
使用 dumpbin命令行。
dumpbin
dumpbin /IMPORTS <path-to-file>
dumpbin /EXPORTS <path-to-file>
对于.NET DLL,可以使用 强大
使用 JetBrains 的 dotPeek。
Https://www.jetbrains.com/decompiler/
DotPeek 是一个基于 ReSharper 的免费工具,它可以可靠地反编译 任何.NET 程序集转换为 C # 或 IL 代码。
.NET 的幻想
Ildasm 帮助,甚至转储方法主体,但编辑。 DLL 你还需要任何十六进制编辑器。
修复 Help Viewer v2.x 问题的 ildasm 示例: 错误: “更新内容时发生错误: Microsoft 没有对文件‘ ? ? ? cab’进行签名”
这里可能有图像 更多示例文件
为了不。NET dlls,在 Linux 系统上安装 binutils将显示 objdump命令,该命令可用于显示 dll 的信息。
binutils
objdump
objdump --private-headers <file.dll>
在输出中查找 Export Address Table部分。
Export Address Table