首页 新闻 会员 周边 捐助

如何修改Assembly中的代码

0
悬赏园豆:50 [已解决问题] 解决于 2011-05-17 13:10

有一个Assembly,没有源代码,想修改其中一个地方调用的方法名,通什么工具可以修改?

问题补充:

后来通过ildasm/ilasm完成的,详见:操作步骤:用ildasm/ilasm修改IL代码

dudu的主页 dudu | 高人七级 | 园豆:29732
提问于:2011-05-16 16:25
< >
分享
最佳答案
0

相信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



收获园豆:50
邀月 | 高人七级 |园豆:25475 | 2011-05-16 22:02
用了ILDASM
dudu | 园豆:29732 (高人七级) | 2011-05-17 13:10
其他回答(3)
0

Reflector的Reflexil插件

-==NoWay.==- | 园豆:210 (菜鸟二级) | 2011-05-16 16:33
0

使用Reflector.exe反编译不就可以了嘛~~~~~

nothing better | 园豆:235 (菜鸟二级) | 2011-05-16 16:34
0

test

博客园团队 | 园豆:5402 (大侠五级) | 2011-05-17 14:26
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册