使用dotPeek反编译.net程序集会产生无效的语法

时间:2016-11-03 15:48:30

标签: c# decompiling dotpeek

我遇到了反编译.net程序集的问题。当我在dotPeek中打开程序集时,有一个名为frmMain的类,其中有几百个变量声明如下:

[SpecialName]
private static int \u0024STATIC\u0024SortByLengthAsc\u002402811241124\u0024xlen;

当我尝试将它导出到项目时,即使我将所有\ u0024更改为$,所有这些行都会出错(STATIC未定义)。我做错了吗?

1 个答案:

答案 0 :(得分:2)

不,这个程序集已被混淆,以防止人们(像你一样)偷看代码并可能偷窃'它。这些变量名在IL中是允许的,但在实际的C#代码中是不允许的,所以这就是它失败的原因。

我所知道的唯一补救方法是反向混淆工具,它知道混淆器如何混淆并试图扭转它。或者你可以手工完成,这通常需要花费很多时间,这证明了模糊处理能够得到回报。