是否有任何IL编辑器来更改程序集的字节码?

时间:2012-04-27 10:29:34

标签: .net bytecode il disassembly

我已经检测到遗留第三方程序集上的一些缺陷,我们会在代码中对它们进行反编译。我想解决它们,但由于我没有源代码,我需要直接修改字节码。这些变化非常简单(对OR进行AND更改,对某些行进行NOP操作)。

有编辑要做这种事吗?使用十六进制编辑器进行工作将是最后一个选项,我会想知道我在光标周围有什么指示......

4 个答案:

答案 0 :(得分:4)

我认为您正在寻找.NET Reflector添加Reflexil的内容。看一下截图,它非常强大,它可以在运行时修改IL代码。反射器过去是免费的,你可能可以在某处获得一些旧版本。

答案 1 :(得分:3)

我假设程序集没有强名称,因为否则没有签名密钥就无法做到。

如果没有,听起来Ildasm会对你有用。您可以使用Ilasm反编译程序集,执行修改并再次组装它们。

另一个免费选项可能是Telerik的JustDecompile,其中“可以从反编译的程序集中创建一个Visual Studio项目。” - 我没有使用它,但这听起来像它反编译为源并创建一个可立即构建的项目。这将非常方便,因为您甚至不必使用IL。

答案 2 :(得分:3)

dnSpy,允许您修改IL和C#代码。查看他们的screenshots

答案 3 :(得分:0)

尝试简单的程序集资源管理器,它允许您编辑字节码,并默认工作更多生活Reflexil

https://sites.google.com/site/simpledotnet/simple-assembly-explorer

相关问题