调试器的工作进程(msvsmon.exe)意外退出。调试将中止。

有一天用vs2015调试之前的一个程序时,发现无法调试。一旦启动调试,就发现整个电脑动不了了,估计得过个10几分钟才反应过来,并且显示“调试器的工作进程(msvsmon.exe)意外退出。调试将中止。”

为了查看是不是vs2015的问题,打开另外一个工程,发现是可以调试的,说明不是系统的问题。

不过之前还可以调试,那为啥就突然不能调试了呢?上网上搜索,发现这个问题不多,解决办法也很有限,其中一个说安装了什么程序导致的,我仔细想了一下,我似乎没有安装什么程序,倒是卸载了几个有关vs旧版本的组件,难道是这个影响的?于是乎,我就重新修复安装了一遍vs2015,安装完后,发现问题依旧。

后偶然发现,在开始调试时,内存突然上涨到满,看如下图:

内存占用满图片

然后我就把任务管理器打开,切换到进程卡,观察是哪个程序占用了这么大的内存。

准备好后,就按F11开始调试,发现开始winmain()时,内存占用正常,结果一过winmain()中的主程序调用,内存立马占到满。说明估计是程序有问题导致的。

然后在程序的开始位置加断点逐步跟踪,终于发现是在读取配置文件时失败,导致后面内存分配时使用了超大值。进一步跟踪,发现是调试时的程序工作目录为当前的工程目录,而这个目录中没有对应的配置文件,然后设置工作目录到调试的程序目录,然后再调试,一切正常。

不过有点奇怪的是,这个调试的各选项我不记得有修改,工程目录里的配置文件目录我似乎也没有删除过,它咋就变成了这样呢?也许是上班上得脑残动了它自己也不记得了,反正问题终究还是解决了,就当是学习了

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值