.NET 反编译调试神器:dnSpy了解一下
.NET 反编译调试神器:dnSpy了解一下
如果客户环境出了问题,而又无法快速定位问题,可以借助dnSpy进行反编译调试跟踪。可以直接在服务器上进行调试。
可前往[dnSpy官网下载:https://github.com/0xd4d/dnSpy]或直接从我的[分享链接:https://1drv.ms/u/s!Ag9J9FrcQ96Zg-hU64GPaM-GtASMCA]下载(内置包含.NET Framework 4.7.1,若运行提示需要安装,可解压找到 .NETFramework4.7.1-x86-x64-AllOS-ENU.exe
安装)。
具体操作步骤如下所示:
-
添加系统环境变量,COMPLUS_ZapDisable = 1 (这个环境变量告诉.Net RunTime 忽略已经提前编译的源码.Net框架程序集,用JIT编译器编译的程序集代替。)
-
如果需要调试IIS进程,可进入
C:\Windows\System32\inetsrv
目录执行appcmd list wp
查看对应的应用程序池进程ID -
打开dnspy,调试-->附加到进程-->选择相应的进程ID-->附加(支持同时附加多个进程)
-
调试-->窗口-->模块-->搜索要调试的程序集-->双击
-
在程序集资源管理器找到要调试的类打开,打断点调试即可
-
右键要修改的类文件-->编辑类/方法-->修改类-->编译
-
文件-->保存模块-->选择要保存的路径-->保存
-
将保存的重新编译的程序集替换到目标路径即可
-
执行
iisreset
(若为IIS应用)
图一:配置环境变量
图二:获取IIS站点对应的进程ID
图三:如何附加进程并找到要调试的程序集
1) 附加进程
2)找到调试的程序集
图四:如何修改代码重新编译并导出程序集
1)修改代码2)重新编译
3) 导出程序集
*************转摘:https://www.jianshu.com/p/79171da13c99
*************转摘:http://url.cn/5cYG8zY
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 如何调用 DeepSeek 的自然语言处理 API 接口并集成到在线客服系统
· 【译】Visual Studio 中新的强大生产力特性
· 2025年我用 Compose 写了一个 Todo App