因为业务需求修改一个网页端接口(因为这个接口本身不是很复杂的接口),由于人员变动问题没有源码,现在需要修改一个接口的一个参数,没办法只能自己动手解决一下。
本身了解这个接口实现的功能(大概就是往数据库内插一条数据),由于某个参数控制这个数据的解决方式,现在需要变动一下。
1、工具VB Decompiler Pro(因为了解接口参数中含有中午,用这个可以看到中文信息)
2、系统自带的ildasm(用于生成il文件进行修改,因为本身dll反编译后也是不能够修改的)
3、ilasm(用于将修改后的il文件进行生成dll)
确定需要修改的位置下面开始直接先用工具一反编译文件定位下需要修改的大致方法与位置
因为业务逻辑不是很复杂 很快确定需要修改的位置 需要将“未下发”修改为“等待授权”
下面就用系统自带的ildasm打开dll文件
大致目录 C:\Program Files\Microsoft SDKs\Windows\v6.0A\Bin
转存储成il文件可用记事本打开进行编辑
由于il文件包含所有的内容 所以可以直接用之前的方法名进行搜索定位基本位置
需要注意“”中的内容都会反编译 包括'、)等特殊符号 确定哪里修改直接搜索汉字编码对应表进行修改保存即可最后用ilasm进行生成dll替换原来的dll即可 测试后完成功能变更
C:\Windows\Microsoft.NET\Framework\v2.0.50727\ilasm.exe 编译.il /output=输出.dll /dll
需要先进入到你第二步生成il的那个文件夹内执行 生成的文件会在il文件夹内
至此基本反编译工作完成 因为业务需求比较简单 不是很复杂所以很快可以完成,有复杂需求的可以稍微借鉴一下。第一次反编译文件记录一下。
网友评论