visual studio 设置

 

调试时正确设置工作目录

vs的解决方案下有多个工程,技术负责人把工程文件放在一个目录下方便浏览。

坏处是程序中如果要使用某个配置文件,又使用相对路径的方式加载时,可能会在vcproj的目录里查找,找不到就失败了。

为了避免这种现象,可以在工程设置里设置当前工作目录,这样调试时程序不会找错文件位置了。

 

F5调试时触发MDA断点
vs输出框显示

<mda:msg xmlns:mda="http://schemas.microsoft.com/CLR/2004/10/mda">
  <!-- 
       c??( OS ?}??gLX? ̄
??( DllMain  ???p??LX? ̄?7Z???(?w
   -->
  <mda:loaderLockMsg break="true"/>
</mda:msg>

 

 

可以使用 COMPLUS_MDA 环境变量来覆盖注册表设置并禁用 MDA (Managed Debugging Assistants),您可以按照以下步骤操作:

  1. 打开 控制面板
  2. 进入 系统和安全 > 系统 > 高级系统设置
  3. 在 系统属性 对话框中,点击 环境变量 按钮。
  4. 在 环境变量 对话框中,您可以选择添加新的系统变量或用户变量。
  5. 点击 新建,在变量名中输入 COMPLUS_MDA,在变量值中输入 0 来禁用所有 MDA。

 网上建议的方法如在debug-exception-取消MDA相关勾选。或者在注册表HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\.NETFramework下新建键MDA并设置值为0

这两种方法并不管用。

目前还为发现设置COMPLUS_MDA 环境变量为0有什么副作用,调试中讨厌的频繁触发断点问题终于不见了。

 

posted @   逆向人  阅读(2424)  评论(0编辑  收藏  举报
编辑推荐:
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· 三行代码完成国际化适配,妙~啊~
· .NET Core 中如何实现缓存的预热?
点击右上角即可分享
微信分享提示