ILWorkbench

树形浏览程序集、读 C# 反编译、查看并编辑 IL 指令、增删类型成员——全部在本地完成,改完直接保存回 DLL 。
ILWorkbench

一个窗口搞定 「看」 和 「改」

开源 · MIT · 免安装 .NET · 通用二进制

树形浏览

程序集 → 模块 → PE / 类型引用 / 引用 / 资源 / 命名空间,层级与 dnSpy 一致;两万节点也能秒开,只有展开时才向磁盘要数据。

C# 反编译

由 ICSharpCode.Decompiler 输出,带语法高亮;行上只显示名字,完整签名与 metadata token 放在悬浮提示里。

IL 查看与编辑

逐条指令显示偏移、 opcode 与操作数;改常量、替换、插入、删除,随时可以重新加载放弃修改。

结构编辑

添加或删除类型、字段、方法,生成的 IL 一定合法;写回 DLL 后可以直接加载运行。

三步进入 ILWorkbench

ILWorkbench 是 macOS 应用:安装包是通用二进制,Apple Silicon 与 Intel 用同一个 DMG,并且不需要事先安装 .NET 。

1 下载 DMG

到 GitHub Releases 下载最新版,约 73 MB 。

2 拖进 「应用程序」

打开 DMG,把 ILWorkbench 拖到 Applications 文件夹,然后推出磁盘映像。

3 首次打开

安装包没有购买苹果开发者签名,首次打开请右键点击图标 →「打开」→ 再点一次 「打开」 。

如果系统提示 「无法验证开发者」,也可以在终端执行下面这行命令去掉隔离标记:

xattr -dr com.apple.quarantine /Applications/ILWorkbench.app

这一步只需要做一次,之后双击图标就能正常打开。

程序集信息
点程序集或模块节点,右侧显示程序集信息:文件路径、...
Read More "程序集信息"
IL 视图
逐条显示 IL 指令:偏移、 opcode 、操作数,...
Read More "IL 视图"
C# 视图
选中方法,右侧显示反编译出来的 C# 代码,带语法...
Read More "C# 视图"

开源、离线、可只读

把程序集交给它之前,你可能会关心这些:

  • 完整源码公开,MIT 许可;依赖也全部是 MIT(dnlib 、 ICSharpCode.Decompiler 、.NET 运行时)
  • 你的机器上不需要安装 .NET,反编译运行库已经打包在应用内部,arm64 与 x64 各一份
  • 只读写你自己打开的那个文件,应用本身不联网、不上传任何数据
  • 设置里可以关掉编辑能力,变成纯查看的只读模式,避免误改
  • 界面支持中文与 English 切换,包括左侧树上的标签
  • 已知限制如实写在下面的常见问题里,不藏着

安装前可能想知道

提示 「无法验证开发者」 怎么办?
这是没有购买苹果签名证书的正常现象。右键点击应用图标 →「打开」→ 再点一次 「打开」 即可,或者执行安装步骤里的 xattr 命令。
需要先安装 .NET 吗?
不需要。运行时是自包含打包的,应用自己带着 arm64 与 x64 两份助手,和系统里其它 .NET 环境互不影响。
为什么 「引用」 里有些程序集展开不了?
只有能在磁盘上找到对应文件的引用才能展开。 macOS 上一般没有 .NET Framework 的系统程序集 (mscorlib 、 System.Windows.Forms 等),所以它们只显示引用信息,这是环境限制。
保存会不会破坏原程序集?
建议先 「另存为」 再改。没有删过成员时会保留原始 metadata token;删除过成员会重新编号,状态栏会明确提示。改完直接运行原程序即可验证。
支持 Windows 或 Linux 吗?
目前只支持 macOS 13 及以上。 Windows 上 dnSpy 是更成熟的选择。
能像 dnSpy 那样调试吗?
不做调试器。这个工具专注三件事:看结构、看反编译、改 IL 并保存。

许可证与致谢

ILWorkbench 以 MIT 许可开源,完整源码在 GitHub 上公开。

依赖与致谢:dnlib(程序集读写与 IL 编辑) 、 ICSharpCode.Decompiler / ILSpy(C# 反编译引擎) 、.NET(自包含助手运行时) 、 dnSpy(交互与信息呈现方式的主要参考) 。

在 GitHub 上查看源码 →