try{
         throw;
}
catch (CException e)
{
}
用上面的方法,如果有异常发生的话,系统会弹出对话框,当我关闭该对话框时,整个应用程序都会停止.
我的问题是:
1.如何取得系统抛出的错误信息(不要弹出对话框,只要取得对话框中的错误信息)?
2.如果要弹出该对话框,当我关闭该它的时候,能不能不要退出整个应用程序,而让程序继续向下执行.

解决方案 »

  1.   

    不退出当然可以,但是要看发生了什么错误,下面得代码就不会影响,当发生异常后程序仍然继续运行try
    {
      int* a = 0;
      *a = 0;
    }
    catch (...)
    {
    }...
      

  2.   

    当然可以了,要否还要try和catch干什么,用这两个的主要目的就是为了加强程序的容错性能。
    如果你看过java就知道了,java具有很强的容错能力
      

  3.   

    try{
    }
    catch (CException e)
    {
      ...
      e.GetErrorMessage(str,...);
      AfxMessageBox(str);
      e.Delete; 
    }
    大概结构是这样子,试试吧