【问题标题】:What tool can decompile a DLL into C++ source code? [closed]什么工具可以将DLL反编译成C++源代码? [关闭]
【发布时间】:2010-11-22 06:33:17
【问题描述】:

我有一个停止工作的旧 DLL (log2vis.dll),我想查看它的内部,看看它使用了哪些对象。
DLL 是用 C++(不是 .NET)编写的。有没有反编译/反汇编 C++ 文件的工具?

【问题讨论】:

    标签: c++ dll decompiling


    【解决方案1】:

    这可能是不可能的,或者至少非常困难。 DLL 的内容(很多)不依赖于它是用 C++ 编写的;都是机器码。该代码可能已经过优化,因此原始源代码中存在的许多信息都消失了。

    也就是说,here 是一篇文章,其中包含了很多关于这样做的材料。

    【讨论】:

    • 这篇文章在今天仍然适用,但我建议将 cutter.re 作为对 C++ 二进制文件进行逆向工程的现代工具。
    【解决方案2】:

    【讨论】:

    • 这不是一个好产品。它会产生很多错误。
    【解决方案3】:

    我认为 C++ DLL 是一个机器代码文件。因此反编译只会产生汇编代码。如果您可以阅读并从中创建 C++,那么您就可以开始了。

    【讨论】:

    • 不是已经有一些东西可以将机器代码文件大致映射到 c 或 c++ 了吗?
    【解决方案4】:

    没有我知道的反编译器。 W32dasm 是不错的 Win32 反汇编器。

    【讨论】:

      【解决方案5】:

      实际上没有任何方法可以做到这一点,因为大多数有用的信息在编译过程中都被丢弃了。但是,您可能想查看this site,看看您是否可以找到某种从 DLL 中提取某些内容的方法。

      【讨论】:

        【解决方案6】:

        曾经最接近做这种事情的是 dissasembler,或调试信息 (Log2Vis.pdb)。

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 2011-09-23
          • 1970-01-01
          • 1970-01-01
          • 2019-09-20
          • 1970-01-01
          • 2016-06-06
          • 1970-01-01
          • 2014-06-26
          相关资源
          最近更新 更多