0

在 ILSpy 版本 2.3.1.1855 中,我正在尝试反编译 System.dll(以解决 HttpWebRequest 的问题)。这个 dll 在C:\Program Files (x86)\Microsoft.NET\SDK\CompactFramework\v3.5\WindowsCE. 我得到了类型和成员的列表,但没有代码。相反,此异常显示在 ILSpy 代码窗口中:

ICSharpCode.Decompiler.DecompilerException:反编译 System.Net.WebResponse System.Net.WebRequest::GetResponse() 时出错 ---> System.OverflowException:数组尺寸超出了支持的范围。ICSharpCode.Decompiler.ILAst.ILAstBuilder.StackSlot.ModifyStack(StackSlot[] stack, Int32 popCount, Int32 pushCount, ByteCode pushDefinition) 在 ICSharpCode.Decompiler.ILAst.ILAstBuilder.StackAnalysis(MethodDefinition methodDef) 在 ICSharpCode.Decompiler.ILAst.ILAstBuilder。在 ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(MethodDefinition methodDef, DecompilerContext 上下文中的 ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(IEnumerable`1 参数) 处构建(MethodDefinition methodDef,布尔优化,DecompilerContext 上下文,

有什么提示吗?

4

1 回答 1

2

这些只是存根。您需要反编译实际的 BCL 库,例如:

C:\Program Files (x86)\Microsoft.NET\SDK\CompactFramework\v3.5\Debugger\BCL\System.dll

于 2016-06-25T19:02:32.530 回答