How can I open DLL files to see what is written inside?

I lost the solution of a class library. Can I open the DLL file which is created by the class library?

824090 次浏览

使用 VisualStudio 或资源编辑器打开 。 dll文件。

您不能获得准确的代码,但是您可以获得它的反编译版本。

最流行(也是最好的)的工具是 反光镜,但也有其他的.NET 反编译器(如 )。

您还可以使用 ILDASM反编译 CIL,它与.NETFrameworkSDK 工具捆绑在一起。

您最好使用反编译器,如 Redgate 的 .NET 反射器JetBrains锐利者反编译器。

还有一些开源软件,比如:

我想你已经下载了.NET 的反射器和这个文件生成器插件 http://filegenreflector.codeplex.com/,如果你这样做,

  1. 打开反射器.exe,

  2. Go to View and click Add-Ins,

  3. 在“外接程序”窗口中,单击“添加...”,

  4. 然后找到你下载的 dll

  5. Dll (带有 FileGenerator 插件) ,

  6. 然后关闭“外接程序”窗口。

  7. Go to File and click Open and choose the dll that you want to decompile,

  8. 打开它之后,它将出现在树视图中,

  9. 转到工具栏,单击“生成文件”(Crtl + Shift + G) ,

  10. 选择输出目录并根据您的需要选择适当的设置, 点击生成文件。

OR

使用 http://ilspy.net/

*.Dll 文件是用 WinZip7-Zip等打开的归档文件。这还不是全部。Dll 文件是归档文件。您可以使用。Dll 扩展。然而,大多数 Windows。Dll 文件生成为归档文件。例如,Windows > twain _ 32.dll 是一个归档文件。然而,吐温不是。如果您查看 twain.dll,您将看到 MZ 作为前三个记事本字符,表示 编译完毕 C 文件/程序或程序的一部分。而 MZ 似乎是一个档案馆。

还有,大部分。Exe 文件是大部分包含图标图像等的归档文件。对于文件和 Windows Installer 包,它们包含程序运行图像、电影等所需的所有信息,还包括目录,包括安装信息和纯文本文件。

我在这里有一个游戏,游戏,前情提要,它包含 Java 类文件和图像一个指针指向。运行一个。蝙蝠档案。很明显,你的。Bat 文件将从存档中运行一个 Javac调用并运行游戏。还有一些。包含 Java 类文件的 dll 归档文件。

[autorun]
ICON=AUTORUN\MINCRAFTLOGO.ICO
standard icon redirect here .ico is an image file within a .dll file within a .exe file. So the image seen on the .exe file is the minecraft logo. This is in a file called autorun.inf. Second example


[discstarter]
startpage=Autostart\Disk1.html
uselanguagestartpage=1
windowcaption=Solid Edge
licensee=Siemens PLM Software
productguid=05B227DF-DB00-4934-B3C8-40B7D8FAA54A
singleinstance=1
hidesplashscreen=1
noscrollbars=0
showstatusbar=1
splashscreentime=0
windowwidth=750
windowheight=775
buttondir=Autostart
toolbarcolor=16777215
toolbar=goback,goforward,gohome,print,exit
[autorun]
open=autostart.exe
icon=Autostart\ENGINE.ICO

这是 solidedge.exe Autostart 中包含的实心 Autorun.inf文件,它是 自动启动目录。Open = autostart.exe 指定要从原始 solidedge.exe 归档文件中运行的 autostart.exe 文件。下面是一个示例程序,它使用。Dll (动态链接库)文件: 创建和使用 DLL

它还显示了它们是如何创建的。如您所见,DLL 文件的内容是由 EXE 文件调用的,正如我前面解释的那样。还有一个教程在这里 演练: 创建并使用自己的动态链接库(C + +),并且,正如我前面所说,7-Zip 或 WinZip 将打开一个动态链接库作为一个档案文件,只要你有。Dll 文件。如果动态链接库的内容显然已经编译,则需要一个能够读取该文件的程序。

然而,自从。根据定义,DLL 文件只是存档库文件,DLL 文件本身应该是可读的,而不是编译后的 C 或 C # 文件,等等。基本上。Dll 文件是归档文件。当一个。Dll 文件是在 VisualStudio 中创建的。将创建 DLL 文件,并对存储在 DLL 文件中的任何信息进行加密。大多数情况下,这种加密是由 VisualStudio 自己处理的,通常不是手工编辑的。当你读到。Dll 文件内容作为。Exe 中,内容被自动解密。现在,当我们谈到编译程序时,我们把内容改成字节码,机器很容易解释。

此文件大小将小于相同内容的原始文件。但是,文件大小更大,表明文件实际上已经加密。它可能是为了阻止人们阅读他们的代码。因此,阅读。Dll 内容称为解密,而不是反编译。反编译将转换已经编译的。将 txt 文件转换为不可读的字节码。标准的使用。根据定义,dll 文件不是开源的,因为它涉及到字节代码的故意混淆。

按照下面的步骤..。

  1. 进入开始菜单。
  2. 类型 VisualStudio 工具
  3. 转到上面的文件夹。
  4. Visual Studio 2013的情况下,单击“ VS2013的开发者命令提示符” “ VisualStudio 命令提示符”(如 Visual Studio 2010)。
  5. 在命令提示符加载到屏幕之后,键入 ILDASM.EXE按 ENTER。
  6. 将打开一个 ILDASM窗口。将 .dll文件从文件夹拖到窗口。或单击菜单 档案新的。然后 add所需的 .dll文件。
  7. 在上述步骤之后,将显示清单和 .dll文件。双击这些文件以查看其中包含的内容。

Telerik 的 翻译: 奇芳翻译: 奇芳翻译: 奇芳翻译: 奇芳翻译: 奇芳翻译: 奇芳翻译: 奇芳翻译: 奇芳翻译: 奇芳翻译: 奇芳翻译: 奇芳翻译: 奇芳是我用过的最好的。只要你注册了电子邮件,它就是免费的。

我用的是 JetBrains 的 dotPeek软件,你也可以试试。