WinDbg 加载 dotnet core 的 sos.dll 辅助调试方法
本文告诉大家如何加载 .NET Core 或 .NET 5 的 sos.dll 文件到 WinDbg 的方法
和 .NET Framework 或 dotnet core 2.0 不相同的是,当前的 sos.dll 是放在独立的 https://github.com/dotnet/diagnostics 仓库里面,也需要独立安装。好在 sos 通过 dotnet tool 进行分发,安装方法非常简单
请通过如下命令行命令进行安装
dotnet tool install -g dotnet-sos
以上是添加 dotnet sos 工具,接下来还需要调用此工具进行安装,请在命令行输入下面命令进行安装
dotnet sos install
如安装成功,那么大概会输出以下内容
Installing SOS to C:\Users\lindexi\.dotnet\sos
Creating installation directory...
Copying files from C:\Users\lindexi\.dotnet\tools\.store\dotnet-sos\5.0.236902\dotnet-sos\5.0.236902\tools\netcoreapp2.1\any\win-x64
Copying files from C:\Users\lindexi\.dotnet\tools\.store\dotnet-sos\5.0.236902\dotnet-sos\5.0.236902\tools\netcoreapp2.1\any\lib
Execute '.load C:\Users\lindexi\.dotnet\sos\sos.dll' to load SOS in your Windows debugger.
SOS install succeeded
如上面提示,当前可以在 WinDbg 通过如上命令进行加载 sos 文件
.load C:\Users\linde\.dotnet\sos\sos.dll
但是此文件默认是 x64 的,如果期望调试的应用是 x86 的,那么以上命令将会提示如下错误
.load C:\Users\linde\.dotnet\sos\sos.dll
The call to LoadLibrary(C:\Users\lindexi\.dotnet\sos\sos.dll) failed, Win32 error 0n193
"%1 不是有效的 Win32 应用程序。
此时的解决方法是去获取 x86 版本的 sos.dll 如下面命令
.load C:\Users\lindexi\.dotnet\tools\.store\dotnet-sos\5.0.236902\dotnet-sos\5.0.236902\tools\netcoreapp2.1\any\win-x86\sos.dll
需要自己去找放在 C:\Users\lindexi\.dotnet\tools\.store\dotnet-sos\ 文件夹的对应的 dotnet 版本的 sos 的 win-x86 版本的文件
WinDbg 加载 dotnet core 的 sos.dll 辅助调试方法的更多相关文章
- C#.Net 如何动态加载与卸载程序集(.dll或者.exe)0-------通过应用程序域AppDomain加载和卸载程序集
本博客中以“C#.Net 如何动态加载与卸载程序集(.dll或者.exe)”开头的都是引用莫问奴归处 微软装配车的大门似乎只为货物装载敞开大门,却将卸载工人拒之门外.车门的钥匙只有一把,若要获得还需要 ...
- visual studio 调试时提示 已加载“C:\Windows\SysWOW64\ntdll.dll”。无法查找或打开 PDB 文件。
问题描述 “Win32Project3.exe”(Win32): 已加载“D:\software\VS2013\VS2013 文档\Win32Project3\Debug\Win32Project3. ...
- 已加载“C:\Windows\SysWOW64\ntdll.dll”。无法查找或打开 PDB 文件。
“Win32Project3.exe”(Win32): 已加载“D:\software\VS2013\VS2013 文档\Win32Project3\Debug\Win32Project3.exe”. ...
- 已加载"C:\Windows\SysWOW64\msvcp120d.dll".无法查找或打开 PDB 文件.
已加载"C:\Windows\SysWOW64\msvcp120d.dll".无法查找或打开 PDB 文件. 今天使用vs2013遇到了这样的问题. 解决方案: 点调试. 然后选项 ...
- 百度编辑器ueditor 异步加载时,初始化没办法赋值bug解决方法
百度编辑器ueditor 异步加载时,初始化没办法赋值bug解决方法 金刚 前端 ueditor 初始化 因项目中使用了百度编辑器——ueditor.整体来说性能还不错. 发现问题 我在做一个编辑页面 ...
- 用UBOOT自带loadb命令加载应用程序到SDRAM中运行的方法
S3C44B0开发板中,用UBOOT自带loadb命令加载应用程序到SDRAM中运行的方法 1.开发板说明: 开发板上已有移植好的UBOOT运行. 2.交叉编译工具链为arm-linu-g ...
- windbg加载sos.dll
SOS.dll 中提供的 Son of Strike 扩展 (SOS),用于调试 WinDbg 中的托管代码.在启动了调试程序并将其附加到托管进程(或加载故障转储) .load C:\Windows\ ...
- WinDbg加载不同版本CLR
WinDbg调试.net2.0和.net4.0程序有所不同,因为.net4.0使用新版本的CLR.例如: mscoree.dll 变为 mscoree.dll 和 mscoreei.dll, msco ...
- windbg加载符号表
0x00 前言 在使用windbg调试windows中的程序时会经常碰到一些系统的dll里面的一些函数调用,有些函数是没有具体函数名的,这对于调试非常不利,基于此,微软针对windows也发布了很多系 ...
- C#.Net 如何动态加载与卸载程序集(.dll或者.exe)4-----Net下的AppDomain编程 [摘录]
最近在对AppDomain编程时遇到了一个问题,卸载AppDomain后,在内存中还保留它加载的DLL的数据,所以即使卸载掉AppDomain,还是无法更新它加载的DLL.看来只有关闭整个进程来更新D ...
随机推荐
- Commons-Collections1反序列化
JDK版本为jdk8u65 commons-collections版本为3.2.1 InvokerTransformer CC1的漏洞点在InvokerTransformer,InvokerTrans ...
- 记录--实时音视频功能简析(live-pusher与live-player)
这里给大家分享我在网上总结出来的一些知识,希望对大家有所帮助 使用须知 2017年下半年,微信6.5.21版本支持在线音视频功能.开发者可以通过两个音视频组件 和 实现实时地在线直播.视频通话.语音通 ...
- 借助Numpy,优化Pandas的条件检索代码
Numpy其实是最早的处理数据的Python库,它的核心ndarray对象,是一个高效的n维数组结构. 通过这个库,可以高效的完成向量和矩阵运算,由于其出色的性能,很多其他的数据分析,科学计算或者机器 ...
- vue初学核心基础
一.初识vue 1.vue的使用 导入vue之后创建vue模块,el属性表示控制区域的id名称,data表示该区域内的数据 在vue中我们都是用表中模板的标准语法来传递数据 <head> ...
- [ERROR] “不支持使用 SOAP 编码。SOAP 扩展元素包含 use=“encoded“ “ 无法解析 WSDL。
下载axis-1_4,地址https://archive.apache.org/dist/ws/axis/1_4/ 解压,进入D:\axis-1_4\lib 执行命令 java -cp mail.ja ...
- 攻防世界 gametime 使用IDA pro+OD动调
自学犟种琢磨动调的一个记录,算是第一次动调的新手向,大佬请飘过 题目 准备工作--IDA pro(32X) 下载得到一个exe文件,首先丢到PE里面--无壳,32bit 丢到IDA pro(x32)里 ...
- ARM之AXI总线协议初试
AXI总线协议的学习 1.AXI总线的初步认识 What is AXI? AXI is part of ARM AMBA, a family of micro controller buses fir ...
- 金仓数据库kbcrypto 插件实现sm加密算法
首先介绍一下sm4 算法 SM4 算法是对称加密算法,国标 GB/T 32907 对 SM4 对称加密算法进行了详细描述.SM4 算法密钥长度固定为128bit,加密解密采用相同的密钥,加解密速度较快 ...
- python爬虫反爬之快速配置免费IP代理池(ProxyPool)
关注我的公众号[靠谱杨阅读人生]回复ProxyPool可以免费获取网盘链接. 也可自行搜索下载:https://github.com/Python3WebSpider/ProxyPool.git 1. ...
- #排列组合,dp#AT2000 [AGC002F] Leftmost Ball
洛谷题目传送门 ATCODER传送门 分析 设\(dp[i][j]\)表示放完\(i\)个白球和\(j\)种有颜色的球的情况 首先\(dp[i][j]\)显然可以从\(dp[i-1][j]\)转移, ...