有一个Assembly,没有源代码,想修改其中一个地方调用的方法名,通什么工具可以修改?
后来通过ildasm/ilasm完成的,详见:操作步骤:用ildasm/ilasm修改IL代码。
相信dudu已经试过reflector或IlSpy。只所以不想反编译,可能有如下原因:
1、原代码混淆较好,编译后变量和方法名难于识别。
2、加密机制较好,无法轻易dump
如果确实无法获取源码,提供以下思路试试:
1、如果方法可以override,那是最理想不过了。
2、ILDASM
3、利用晚期绑定特性,在invoke前用GetMethods获取MethodInfo实例,再重新实例化一个新名称,不知道行不行?
http://msdn.microsoft.com/zh-cn/library/system.reflection.methodinfo_methods.aspx
Reflector的Reflexil插件
使用Reflector.exe反编译不就可以了嘛~~~~~
test