【发布时间】:2011-05-25 05:53:18
【问题描述】:
我有一个 DLL 文件。如何查看该 DLL 中的函数?
【问题讨论】:
-
这个链接服务器很好 [view-contents-of-a-dll][1] [1]: stackoverflow.com/questions/6210305/view-contents-of-a-dll
我有一个 DLL 文件。如何查看该 DLL 中的函数?
【问题讨论】:
你可以试试 Visual Studio 中的对象浏览器。
选择编辑自定义组件集。从那里,您可以从各种 .NET、COM 或项目库中进行选择,或者只需通过 Browse 导入外部 DLL。
【讨论】:
View。是的,它不起作用(为什么会它,它是微软)
如果一个 DLL 是用一种 .NET 语言编写的,并且如果您只想查看哪些函数,那么项目中有对这个 DLL 的引用。
然后双击引用文件夹中的DLL,然后你会在OBJECT EXPLORER窗口中看到它有什么功能。
如果您想查看该 DLL 文件的源代码,您可以使用反编译器应用程序,例如 .NET reflector。
【讨论】:
没有告诉我们这个 DLL/程序集来自什么语言,我们只能猜测。
那么.NET Reflector 怎么样。
【讨论】:
.NET ildasm
ildasm 帮助甚至转储方法体,但要编辑 .DLL,您还需要任何十六进制编辑器。
修复 Help Viewer v2.x 问题的 ildasm 示例:
错误:“更新内容时出错:文件 '???.cab' 未由 Microsoft 签名”
【讨论】:
dumpbin /IMPORTS <path-to-file> 应该提供导入该 DLL 的函数。 dumpbin /EXPORTS <path-to-file> 应该提供它导出的函数。【讨论】:
使用 JetBrains 的 dotPeek。
https://www.jetbrains.com/decompiler/
dotPeek 是基于 ReSharper 的免费工具。它可以可靠地反编译 将任何 .NET 程序集转换为 C# 或 IL 代码。
【讨论】:
对于 .NET DLL,您可以使用 ildasm
【讨论】:
使用免费的DLL Export Viewer,非常好用。
【讨论】:
对于本机代码,最好使用Dependency Walker。也可以使用 Visual Studio 附带的dumpbin 命令行实用程序。
【讨论】: