vs2022 如何让.net库文件参与程序调试【可以.net库文件的源代码中设置断点,单步跟踪】
由于.net core 是开源的。所以可以让.net库文件参与程序调试。具体vs2022配置如下
1、设置VS2022 加载程序数据文件(.pdb俗称符号文件)
2)在“工具” >“选项” >“调试” >“常规”中禁用【启用“仅我的代码”】
3)在“工具” >“环境” >“文档” >勾选【在解决方案的管理器中显示杂项】点击完成,再次运行调试的时候,编译器就会从https://raw.githubusercontent.com/下载Dll库的源代码(仅限.net core)

2、Visual Studio 提供两种 加载模式:
- 自动加载所有模块的符号,除非排除:如标题所示,除非通过单击"指定排除的模块"将模块添加到排除列表中,否则 Visual Studio 将尝试为进程中的所有模块加载符号。如果您希望为进程中的几乎所有内容加载符号,或者由于内存或调试启动性能原因,您不希望加载少数非常大的符号,则通常需要此设置。
- 仅指定模块:默认情况下,此设置将加载磁盘上二进制文件旁边的符号,但不会尝试加载任何其他模块的符号,除非您通过单击"指定模块"将它们添加到包含列表中。例如,如果您想使用手动加载,但始终加载名称中带有"Microsoft"的任何内容的符号,则可以输入"*Microsoft*"
vs2022 默认是加载所有符号的,这大型项目中式很影响调试的。所以在大型项目中要设置成按需加载符号,如下操作:


符号未加载的一些常见原因包括:

- 符号路径未指向正确的位置
- 符号文件来自与进程中加载的模块版本不同的模块版本
- Visual Studio 要求符号文件来自与模块完全相同的内部版本。它无法加载来自不同版本的符号,即使源代码相同
- [仅限托管]"仅我的代码"设置阻止调试器加载符号文件
vs2022 如何让.net库文件参与程序调试【可以.net库文件的源代码中设置断点,单步跟踪】的更多相关文章
- ssis package 在调试状态中设置断点,程序 不进入断点 的解决方案
原文:ssis package 在调试状态中设置断点,程序 不进入断点 的解决方案 针对 SSIS intergation 项目 > 属性 > Debug >Run64bITRunt ...
- CodeBlocks 17.12 工程如何引用其他文件夹的头文件和源程序
假设你的工程名为project,目录为F:\test.但是你想在project中使用文件夹F:\library下面的一些头文件和源程序.由于这些头文件和源程序与工程project不在同一目录下面,所以 ...
- 第七篇:两个经典的文件IO程序示例
前言 本文分析两个经典的C++文件IO程序,提炼出其中文件IO的基本套路,留待日后查阅. 程序功能 程序一打印用户指定的所有文本文件,程序二向用户指定的所有文本文件中写入数据. 程序一代码及其注释 # ...
- 两个经典的文件IO程序示例
前言 本文分析两个经典的C++文件IO程序,提炼出其中文件IO的基本套路,留待日后查阅. 程序功能 程序一打印用户指定的所有文本文件,程序二向用户指定的所有文本文件中写入数据. 程序一代码及其注释 # ...
- JDK11 | 第五篇 : 启动单个Java源代码文件的程序
文章首发于公众号<程序员果果> 地址 : https://mp.weixin.qq.com/s/h1L4FmzVSix434gVt8Fc7w 一.简介 JEP330-启动单文件代码程序(L ...
- Windows程序调试系列: 使用VC++生成调试信息 转
Windows程序调试系列: 使用VC++生成调试信息 ZhangTao,zhangtao.it@gmail.com, 译自 “Generating debug information with Vi ...
- 【系统篇】从int 3探索Windows应用程序调试原理
探索调试器下断点的原理 在Windows上做开发的程序猿们都知道,x86架构处理器有一条特殊的指令——int 3,也就是机器码0xCC,用于调试所用,当程序执行到int 3的时候会中断到调试器,如果程 ...
- .NET应用程序调试—原理、工具、方法
阅读目录: 1.背景介绍 2.基本原理(Windows调试工具箱..NET调试扩展SOS.DLL.SOSEX.DLL) 2.1.Windows调试工具箱 2.2..NET调试扩展包,SOS.DLL.S ...
- 【matlab】MATLAB程序调试方法和过程
3.8 MATLAB程序的调试和优化 在MATLAB的程序调试过程中,不仅要求程序能够满足设计者的设计需求,而且还要求程序调试能够优化程序的性能,这样使得程序调试有时比程序设计更为复杂.MATLAB ...
随机推荐
- 【记录一个问题】用ndk的gcc命令行无法编译C++11的lambda等语法的代码
/Users/ahfu/code/android/android-ndk-r14b/toolchains/arm-linux-androideabi-4.9/prebuilt/darwin-x86_6 ...
- uniapp如何生成自己的小程序码并且携带参数
生成小程序码需要用到的参数appId appSecret这两个参数可以再微信公众平台里面登录获取 也可以用测试号里面的获取小程序码步骤1.首先要请求官方的API`https://api.weixin ...
- 【程序18】求s=a+aa+aaa+aaaa+aa...a的值
求s=a+aa+aaa+aaaa+aa-a的值,其中a是一个数字.例如2+22+222+2222+22222(此时共有5个数相加),几个数相加由键盘控制. 知识点:在Python 3里,reduce( ...
- MySQL基本使用(开机自启动-环境变量-忘记密码-统一编码)
目录 一:mysql简介 1.什么是MySQL? 2.MySQL的本质 3.MySQL的特点与优势 二:基本操作命令 1.登录服务端 2.2.结束符c 3.查看当前所有的库名称 4.取消之前的命令 5 ...
- 使用du与df命令查看磁盘容量不一致
在Linux系统的ECS实例中,执行du与df命令查看磁盘容量,出现不一致的现象 执行df -h命令查看文件系统的使用率,可以看到500G 执行du / -sh 命令只使用250G 执行du和df命令 ...
- 用8个命令调试Kubernetes集群
如果使用任何系统的时间足够长,那么你肯定必须对其进行调试,Kubernetes也不例外.它是一个分布式系统,有许多运动部件.我们将介绍8个可以运行以调试任何Kubernetes集群的命令. 它将帮助你 ...
- SpringDataRedis入门到深入
一:简介 SpringDataRedis是SpringData开源项目中的一部分,它可以在Spring项目中更灵活简便的访问和操作Redis:原先在没有SpringDataRedis时往往使用Jedi ...
- python27day
内容回顾 super 遵循mro算法 只在新式类中能适应 py2新式类中需要自己添加参数 封装 广义上的封装 狭义上的封装 (__名字) 方法名私有化 实例变量私有化 静态变量私有化 私有化的特点 只 ...
- 【Python爬虫】爬虫利器 requests 库小结
requests库 Requests 是一个 Python 的 HTTP 客户端库. 支持许多 HTTP 特性,可以非常方便地进行网页请求.网页分析和处理网页资源,拥有许多强大的功能. 本文主要介绍 ...
- java中使用反射获取pojo(实体)类的所有字段值
出处:https://developer.aliyun.com/article/239346 说起反射,不得不说它实在是太强大了,通过反射就可以轻轻松松拿到各种东东,如果你想在项目中解除对某个类的依赖 ...