ilasm和ildasm
这两天使用了一次ilasm.exe和ildasm.exe,原因是公司官网所在服务器出现漏洞,服务器被种植了木马程序,公司运维以为是网站出了问题,让我帮助分析原因,一番操作后,让我惊奇万分。公司官网非自研而是专门的建站公司制作,当运维给我备份文件时,我发现2018年开发的网站使用的技术是运行.net framework2.0环境下,一下子给我搞懵了,仿佛突然回到了久远的2008年。我把自动备份的网站部署到测试服务器上,还能运行,就是无法通过oledb的方式访问Access数据库,作为一只程序猿,捉虫的兴趣就涌上来了,没有源代码怎么办?唯一的办法就是修改程序集文件了。找来了ilasm.exe和ildasm.exe这俩搭档,一顿猛操作后,成功修改了程序集,部署调试没有问题,感觉很好。不过,由于建站公司写的代码太垃圾,也失去了解决问题的兴趣,结果并没有解决.net framework2.0的网站在windows server 2019+iis10.0部署环境里,通过oledb方式访问Access数据库的问题。这篇文章主要记录ilasm.exe和ildasm.exe工具的使用方法。
1.ildasm.exe
作用:将xxx.dll文件转为中间语言文件,然后就可以修改中间语言文件中的内容。
步骤:
a)此程序位于C:\Program Files\Microsoft SDKs\Windows\v7.0A\bin\目录下,注意.net 4.0版本所在目录不同
b)找到ildasm.exe程序,双击运行,此时弹出操作窗口界面
c)打开程序集文件xxx.dll,菜单栏:文件 -> 打开,选中需要反编译的程序集文件
d)菜单栏:文件 -> 转储 ->确定
e)此时就可以编辑xxx.il文件了
2.ilasm.exe
作用:把ildasm转成的中间语言文件打包成xxx.dll程序集文件。
命令:ilasm xxx.il xxx.res /output=xxx.dll /dll
其实这两个工具早年就用过,那时候winform盛行,市面上流行基于winform开发的第三方组件,授权费用又比较高,怎么办?就只能自己动手了。后来随着web和手机app的盛行就很少使用这两个工具,如今再次使用却已生疏,为避免忘记故而写此文记录。
1.ildasm.exe
作用:将xxx.dll文件转为中间语言文件,然后就可以修改中间语言文件中的内容。
步骤:
a)此程序位于C:\Program Files\Microsoft SDKs\Windows\v7.0A\bin\目录下,注意.net 4.0版本所在目录不同
b)找到ildasm.exe程序,双击运行,此时弹出操作窗口界面
c)打开程序集文件xxx.dll,菜单栏:文件 -> 打开,选中需要反编译的程序集文件
d)菜单栏:文件 -> 转储 ->确定
e)此时就可以编辑xxx.il文件了
2.ilasm.exe
作用:把ildasm转成的中间语言文件打包成xxx.dll程序集文件。
命令:ilasm xxx.il xxx.res /output=xxx.dll /dll
其实这两个工具早年就用过,那时候winform盛行,市面上流行基于winform开发的第三方组件,授权费用又比较高,怎么办?就只能自己动手了。后来随着web和手机app的盛行就很少使用这两个工具,如今再次使用却已生疏,为避免忘记故而写此文记录。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· 【自荐】一款简洁、开源的在线白板工具 Drawnix