2011-07-29 49 views
0

我使用了Reflector 6.8反汇编二进制文件。它显示类树视图。即使是类的方法的声明,但“扩展方法”错误出了一些错误,如“在条件表达式翻译期间的块语句计数0”生成代码中的.NET Reflector错误

然后我试图使用Telerik的JustDecompile(在测试版),它工作正常对于我所拥有的10-15个装配中的一个。但是对于另一个组件来说,它只会在内存中达到1.5 GB并挂起。

是否有任何其他稳定的反编译器可用于生成C#代码?

回答

3

我知道的唯一一个是IL Spy

您应该向Red Gate的家伙报告Reflector中的错误。

+0

谢谢。我报告。并试图ILSpy ..似乎工作良好。我注意到的一件事是,它在每个方法和属性开始时都引发了一些嵌套的while循环。虽然这个循环已经打破,它就像NOP一样。 while(true){while(!true){....} break; } :-) –

1

无操作循环可能是由一些混淆器添加的。

0

根据可用信息,我相信您可能正在使用混淆程序集。

当前Telerik JustDecompile测试版(2011.1.728.1)不支持反编译混淆程序集。尽管如此,它在反编译非混淆程序集方面非常高效,而且每次更新后其内存占用量都会变小。您观察到的内存使用情况并不常见。如果您可以通过电子邮件分享有关您使用的程序集的更多详细信息,我们将尝试重现并修复此特定情况(chris.eargle [at] telerik.com)。同时,如果您希望在未来对混淆程序集的JustDecompile更新中看到更多支持,请分享您对JustDecompile UserVoice的反馈,以便其他人可以投票赞成该想法:http://justdecompile.uservoice.com