几年前,我为客户端编写了一个c#应用程序,但现在我已经没有源代码了。我所拥有的只是在客户端PC上部署的EXE。是否有一种方法可以从EXE生成c#源代码?


当前回答

Telerik JustDecompile是免费的,有一个从。net程序集创建项目的特性。

其他回答

反射器和它的插件FileDisassembler。

反射器将允许查看源代码。FileDisassembler将允许您将其转换为VS解决方案。

Telerik JustDecompile是免费的,有一个从。net程序集创建项目的特性。

你需要反射器。

Denis Bauer的Reflector和File Disassembler插件。它实际上从程序集生成源项目,其中Reflector本身只显示被分解的源。

我最近最喜欢的是JetBrains的dotPeek。

我很惊讶居然没人提到微软的“伊达姆”。它可能不像ILSpy或Reflector那样漂亮,但它随Visual Studio一起提供,因此许多开发人员已经拥有它。

要运行它(假设VS 2013,其他版本应该类似):

选择“开始>所有程序> Visual Studio 2013 > Visual Studio Tools”。 双击VS2013的开发人员命令提示符。 在生成的命令提示符中运行"ildasm"。 在工具中,选择文件>打开并打开可执行文件或DLL。

现在可以导航DLL结构了。双击类成员查看IL。使用File > Dump将IL导出到一个文件。