Windows 7 X64位平台下,VC6调试运行程序,中断调试无法退出
用VC6在64位Windows7下调试的时候,如果中断(Shift+F5)调试,程序无法退出。
问题描述:
当点击F5开始一个项目的调试时,程序在设置的断点处停止,这时按下Shift+F5后,vc6可以退出调试状态,但是WINDOWS系统的任务栏上会留下前面调试时产生的进程图标。该进程不能被结束,即使使用任务管理器,也不可以。这时如果再次按下F5调试,并按下Shift+F5后,任务栏上会留下两个这样的图标,这两个进程都可以在任务管理器上看到,不占CPU资源,但占用一定的内存。结束该进程的唯一的办法是(在任务栏上去掉该图标):关闭VC6,并重新开启.
一般的解决方法:
不使用"结束调试"这个功能,让程序正常结束(就是放个可以退出的菜单或者按钮, 而不是使用Shift+F5的退出)。
终极解决方法:
替换DM.dll和TLLOC.DLL为正确的版本。首先下载正确版本:VC6.zip(里面包含这两个dll),然后将下载的版本替换到程序安装目录“Common/MSDev98/Bin/TLLOC.dll”和“Common/MSDev98/Bin/DM.dll”,这样VC6在windows 7 64位的系统调试时,就可以任意退出了。
http://blog.csdn.net/xhhjin/article/details/8264847
win7 64位VC++6.0调试代码无法关闭窗口解决方法
VC6在64位Windows7下调试的时候,再结束调试,程序无法退出。
问题描述:当我击F5开始一个项目的调试时,程序在我设置的断点处停止,这时按下Shift+F5后,vc6可以退出调试状态,但是WINDOWS系统的任务栏上会留下前面调试时产生的程序。该进程不能被结束,即使我使用任务管理器也不可以终止程序。而且,当修改代码之后,就不能重新编译了。想结束该进程的唯一的办法是关闭VC6,并重新开启。
一般的解决方法:不使用"结束调试"这个功能,让程序正常结束(就是放个可以退出的菜单或者按钮, 而不是使用Shift+F5的退出);或者在调试运算时,在断点之间关掉程序。
终极解决方法:检查文件DM.dll版本,DM.dll在程序安装目录的“Common/MSDev98/Bin”。正确的版本是6.0.9782.0。
软后下载TLLOC.DLL。
![](http://image.sciencenet.cn/album/201212/10/193053nbmvpqajybdjbyj0.jpg)
DM.dll的版本