用 windbg 调试 .NET6 的coreclr源码时,可以轻松映射代码,但在调试 .NET8 时就不行了,该怎么办呢?
首先说一下原理,默认情况下缺省的 .srcpath
指向的是微软的源码服务器
,如果可以往外翻的话,可以直接下载,无需任何操作,如果不能翻的话,需要手工设置下远程路径为空,所以有两种方案。
1. 界面配置
将下面的三行代码丢到输入框即可,尤其是第一行代码。
srv*
D:\dream\runtime-8.0.2\coreclr\gc
D:\dream\runtime-8.0.2\coreclr\vm
2. 代码配置
也可以使用 windbg 自带的 .srcpath
命令设置,脚本如下:
.srcpath srv*;D:\dream\runtime-8.0.2\coreclr\gc;D:\dream\runtime-8.0.2\coreclr\