VC++ 6.0妙用一则

Author: 胡颖岑 Date: 2001年 47期

?牐牨收叩牡缒宰暗氖荳indows 98操作系统,运行不是很稳定,稍不谨慎就会出故障,而且经常发生程序关不掉的现象。按“Ctrl+Alt+Delete”键很久,任务管理器都不出来,即使出来了,有些程序还是无法结束,令人头痛。一次偶然的机会我发现VC++居然可以帮助我结束这些程序。方法是这样的:在VC++的Debug菜单中有一项功能是“Attach to Prosess”,它可以用来动态调试正在运行中的程序。在工具条上点击右键,开启“Debug”工具条,点击上面的Stop按钮(或者单击Debug菜单中的Stop项),程序就可以关闭了。
  ?牐犝馐鞘裁丛蚰兀吭床僮飨低彻乇粘绦蚴窍虺绦蚍⑺蚖M_QUIT消息,程序收到消息后先处理未存盘文件,然后是一系列步骤的退出操作。但如果程序所在进程正在忙于一个任务,无法即时响应WM_QUIT消息,这时就不能马上关闭了,会出现“程序没有响应,是否强制关闭”的提示。如果此时选择关闭,操作系统会调用Kill Prosess之类的API将程序关闭。如果是因为系统自身的原因导致这些API不能完成操作,就会出现蓝屏等错误。而VC++的Stop Running是直接对内存、CPU以及作业调度系统操作,所以就不会出现这些莫名其妙的问题。