VC++ 6.0妙用一则 胡颖岑 2001年 47期 笔者的电脑装的是Windows 98操作系统,运行不是很稳定,稍不谨慎就会出故障,而且经常发生程序关不掉的现象。按“Ctrl+Alt+Delete”键很久,任务管理器都不出来,即使出来了,有些程序还是无法结束,令人头痛。一次偶然的机会我发现VC++居然可以帮助我结束这些程序。方法是这样的:在VC++的Debug菜单中有一项功能是“Attach to Prosess”,它可以用来动态调试正在运行中的程序。在工具条上点击右键,开启“Debug”工具条,点击上面的Stop按钮(或者单击Debug菜单中的Stop项),程序就可以关闭了。   这是什么原因呢?原来操作系统关闭程序是向程序发送WM_QUIT消息,程序收到消息后先处理未存盘文件,然后是一系列步骤的退出操作。但如果程序所在进程正在忙于一个任务,无法即时响应WM_QUIT消息,这时就不能马上关闭了,会出现“程序没有响应,是否强制关闭”的提示。如果此时选择关闭,操作系统会调用Kill Prosess之类的API将程序关闭。如果是因为系统自身的原因导致这些API不能完成操作,就会出现蓝屏等错误。而VC++的Stop Running是直接对内存、CPU以及作业调度系统操作,所以就不会出现这些莫名其妙的问题。