MFC多文档程序, 点击右上角的关闭按纽正常结束程序, 
在程序下次编译时编译错误
LINK : fatal error LNK1168: cannot open Debug/Isvision.exe for writing必须在任务管理器中删除该进程才能编译通过请问这是什么原因?? 该怎么在关闭程序后结束该进程??

解决方案 »

  1.   

    关闭线程,最安全的做法是return 0;
    举例:
    UINT GetData(LPVOID parm)
    {
    .....
    .....
    return 0;
    }
    当程序结束时,线程就能安全退出。
      

  2.   

    销毁窗口后调用 PostQuitMessage,它会在消息队列中放置一个 WM_QUIT 消息,这样消息循环才退出。
      

  3.   

    这种情况一般是因为程序关闭时仍有资源没有释放造成的,检查程序中是否存在NEW的内存没有DELETE或COM对象
    没有release。或者开辟的线程没有结束。
    LINK : fatal error LNK1168: cannot open Debug/Isvision.exe for writing 
    指的就是Isvision.exe还在执行,重新编译时无法重写Isvision.exe文件
      

  4.   

    按F5调试运行程序,关闭主窗口之后,点击工具栏的Break按钮,根据调用堆栈的信息看看程序正在执行什么?