最近手头有个.NET项目遇到源码丢失的尴尬,正愁怎么把黑盒子里的逻辑扒拉出来,直到挖到了JetBrains家的dotPeek 2026这玩意儿,真得给大伙按头安利一下。这软件本质是个基于ReSharper引擎的免费反编译器,最绝的是它能像变魔术一样,把任意.NET程序集还原成对等的C#或IL代码,完全不用管那些晦涩的元数据。对于咱们这种经常要审计代码、研究开源库内部实现,或者在故障排查时急需从二进制文件里恢复逻辑结构的技术人员来说,它简直就是救命稻草。虽然它不能直接编辑编译代码,但能把反编译结果导出成Visual Studio项目,这点太友好了,相当于把丢失的源码瞬间找回,省下的时间够喝好几杯咖啡了。
这次2026版本升级得相当硬核,原生支持C# 14语法解析,连用户自定义的复合赋值运算符、无参数结构体构造函数这些新特性都能完整还原,不再是那种看着像代码其实全是乱码的半成品。它继承了ReSharper强大的导航能力,随便点一下符号就能跳转用法、查看依赖图,甚至还能当符号服务器用,配合PDB文件调试第三方库简直丝滑。安装上也很灵活,既有带版本管理的安装包,也有适合多机共享的便携版,快捷键方案还能自定义,完全不用被IDE束缚。总之,如果你不想再为找不到源码抓狂,或者想深入理解某个DLL到底在搞什么鬼,dotPeek绝对是那个能帮你打开黑盒子的钥匙,免费又强大,值得每个.NET开发者装到本地备用。
jetbrains dotpeek 2026是一款基于ReSharper的免费.NET反编译器和程序集浏览器,其最大的特色是可以可靠地将任意.RET程序集反编译为对等的C#或IL代码,支持查看 IL 指令、导航符号、查找用法、生成 Visual Studio 项目 (.csproj),主要用于代码审计、学习开源库实现、故障排查或从二进制恢复逻辑结构,但不具备代码编辑与编译执行功能,适用于.NET 开发者、逆向分析人员、需调试第三方库或恢复丢失源码的技术人员使用。
与上一版本相比,dotpeek 2026新版本原生支持 C# 14 语法解析,并优化了元数据导航体验。其中C# 14 语法方面,现在可以完整解析用户自定义复合赋值运算符,新增对无参数结构体构造函数的初步反编译支持,确保新语法代码可读性。还有支持无参数结构体构造函数,以及初步支持 C#14 扩展等功能。软件完全免费,无需许可证密钥,独立运行不依赖 IDE,有需要的可以免费下载体验。
一、.NET 反编译器
1、将 .NET 程序集反编译为 C#
dotPeek 是一款基于 ReSharper 捆绑反编译器的免费独立工具。 它可以可靠地将任意 .NET 程序集反编译为对等的 C# 或 IL 代码。
这款反编译器支持包括库 (.dll)、可执行文件 (.exe) 和 Windows 元数据文件 (.winmd) 在内的多种格式。
2、将反编译代码导出至 Visual Studio 项目
在反编译完程序集后,您可以将其另存为 Visual Studio 项目 (.csproj)。 如果您需要从旧程序集恢复丢失的源代码,此举可以为您节省大量的时间。
3、下载源代码并调试第三方代码
dotPeek 可以根据 PDB 文件识别本地源代码,或者从 Microsoft Reference Source Center 或 SymbolSource 等源服务器中获取源代码。
dotPeek 还可以作为符号服务器运行,为 Visual Studio 调试器提供调试程序集代码所需的信息。
二、、导航和搜索
dotPeek 从 ReSharper 继承了大量功能。 其中包括上下文和上下文非敏感导航、用法搜索以及不同的代码结构和层次结构视图。
1、查找任意符号的用例
使用 Find Usages(查找用法)可以搜索符号的所有用法,这些用法可以是方法、属性、局部变量或不同的实体。 借助 Find Results(查找结果)工具窗口,您可以对用法分组、在用法中导航以及将其在代码视图区域中打开。
2、跳转到类型、符号或任意对象
当您将脱字符号放在代码视图区域中的符号上时,dotPeek 可以通过 Navigate To(导航到)下拉菜单提供大量的上下文导航选项。
3、导航至相关代码
dotPeek 可为程序集列表中的所有程序集及其引用的所有程序集编制索引,并提供快速跳转至特定代码的功能。 例如,Go to Everything(转到所有内容)让您可以搜索程序集、命名空间、类型、成员或近期打开的文件。
一、新增功能
1、支持 C#14 用户自定义复合赋值运算符
2、初步支持 C#14 扩展
3、支持无参数结构体构造函数
二、高级功能
得益于其高级功能,dotPeek 远不止是一个反编译器。 使用 dotPeek,您还可以:
1、从程序集生成 Visual Studio 项目和 PDB 文件。
2、通过 类型层次结构和 类型依赖图探索类型之间的关系。
3、使用 dotPeek 作为 符号服务器调试已编译的程序集。
4、探索 与当前进程相关的 .NET 程序集。
一、安装和启动
dotPeek 可通过两种分发方式 下载 :作为 dotUltimate 安装程序的一部分,以及适用于 32 位和 64 位处理器的便携版本。 两种分发方式在功能上是等效的。
- 如果您希望在单台计算机上使用 dotPeek 并利用自动版本管理功能,基于安装程序的分发方式是一个安全的选择。
- 如果您更倾向于在多台计算机之间共享 dotPeek,例如使用闪存驱动器或 Dropbox 文件夹,则便携版本更适合。
安装完成后,您可以立即开始使用 dotPeek。 dotPeek 是免费软件,您无需任何许可证。
二、基本偏好设置
在 dotPeek 中,您可以通过快捷键控制一切。 请注意,dotPeek 提供了从 JetBrains ReSharper继承的两种键盘方案。 首先,您可能需要研究 分配给 dotPeek 命令的快捷键在这两种方案中的设置。 一旦选择了您偏好的方案,请在 dotPeek 选项的 环境 | 常规 页面上选择该方案。 在学习这些帮助页面时,您可以在页面右上角选择您偏好的方案,以便显示该方案的快捷键。
您可以快速配置代码查看器偏好设置,例如是否换行长行或显示行号,这些设置位于 视图 | 大纲 和 查看 | 选项 菜单中。
除了反编译库代码外,默认情况下,dotPeek 会自动查找、获取并显示本地或符号服务器上可用的原始源文件。 如果您只想查看反编译代码,请在 dotPeek 选项的 反编译器 页面上清除 尽可能使用符号文件中的源代码 复选框。
三、打开程序集
要开始使用任何程序集,您需要在 程序集资源管理器中打开它。 首次启动 dotPeek 时,您会看到主要的系统程序集已加载到此窗口中。 如果需要,您可以加载更多想要浏览的程序集——点击 打开 ThemedIcon.AssemblyAdd.Screen.(Gray).png 位于 程序集资源管理器 工具栏上,然后选择一个程序集文件,或者直接将程序集文件拖到 程序集资源管理器 窗口中。
四、浏览程序集
一旦所需的程序集出现在 程序集资源管理器 中,您可以通过依次展开程序集下显示的节点来开始研究其内容:命名空间、类型和委托,以及类型成员。
您可以双击类型和类型成员,在代码查看器中显示反编译代码(如果可用,也可以显示 原始源文件中的代码)。
在程序集节点下,您还可以找到 引用 和 资源 节点。 双击引用会加载引用的程序集(如果立即可用);双击 资源 节点下的条目会在代码查看器中打开相应资源的源表示,或将其传递给外部应用程序。
在类型和委托节点下,您会看到 基类型 节点,可以展开以显示当前类型的基类型和继承者。 这是浏览类型继承树的一种方式,通常会吸引具有 .NET Reflector背景的开发人员。
五、查看源代码
程序集代码以 C# 的形式显示在代码查看器中,代码查看器在 多个选项卡中显示源代码或反编译代码。 代码语法以 ReSharper 风格高亮显示,属性、类型、访问器和方法使用不同的颜色。 当您将光标放在分隔符(如大括号或括号)上时,它会与其对应的分隔符一起 高亮显示 ,从而突出显示您所在代码块的范围。
如果需要复制某些代码,您可以使用 扩展/收缩选择快捷键 Ctrl+Alt+→ / Ctrl+Alt+←或 选择包含声明快捷键 Ctrl+Shift+[选择所需的代码片段。
要在不打开声明的情况下获取符号的更多信息,请使用 快速文档 命令 Ctrl+Shift+F1。
六、导航和搜索
导航和搜索的范围包括当前加载在 程序集资源管理器窗口 中的所有程序集以及这些程序集引用的所有程序集。 请参见 导航已编译代码 以了解如何在已编译的程序集内执行导航。
使用 dotPeek 有多种搜索代码的方法。 在大多数情况下,您可以使用 全局搜索命令 Ctrl+T——只需按几下键,就能定位到范围内的程序集、类型和类型成员。 当您指定要搜索的符号时,请使用 CamelHumps——仅输入复合名称的首字母大写字母。
在众多导航命令中,最有帮助的是 转到声明 F12,该命令也可以通过 Ctrl 点击符号来使用。 如果您在符号的使用位置调用此命令,您将跳转到其声明;如果您在声明本身调用此命令,您将能够遍历范围内的所有符号使用情况。
应用信息
热门推荐
相关应用
实时热词
评分及评论
点击星星用来评分