收录日期:2020/12/02 22:54:43 时间:2016/07/06 09:02:44 标签:C#
private void dispaly()
{
    try
    {
    .....
    }
    catch(Exception err)
    {
      MessageBox.Show(err.Message);
    }
}

private void show()
{
    try
    {
      display();
    }
    catch
    {
    }
}

请问在show方法中如何获得display方法中出现的异常,这个异常已经在display方法中捕获并输出,但我想在show方法中也能得到该异常的信息,
这个有没有办法实现呢?谢谢
可以将dispaly()方法中的异常信息当成结果集return回去,返回给show()
方法二:
在dispaly()中的catch里 throw err;  

将异常向上抛给它的父亲,但父亲里必须catch,否则,会继续向上抛
我在调用一个dll里的方法时,该方法产生了一个异常,这个异常在DLL里已经捕获并且用MessageBox输出了,
现在我想在外部再得到这个异常数据,这个能不能实现?

private void dispaly() 

    try 
    { 
    ..... 
    } 
    catch(Exception err) 
    { 
      MessageBox.Show(err.Message); 
       throw err;
    } 


private void show() 

    try 
    { 
      display(); 
    } 
    catch (Exception err) 

    { 
       对 err 处理...
    } 




private void dispaly() 

    try 
    { 
    ..... 
    } 
    catch(Exception err) 
    { 
throw err;
      MessageBox.Show(err.Message); 
    } 


private void show() 

    try 
    { 
      display(); 
    } 
    catch 
    { 
    } 

引用 3 楼 liao5930 的回复:
我在调用一个dll里的方法时,该方法产生了一个异常,这个异常在DLL里已经捕获并且用MessageBox输出了, 
现在我想在外部再得到这个异常数据,这个能不能实现?


在DLL的源代码里修改该方法是最简单的了。不行的话,只能看看能不能捕获MessageBox了。
如果dll不是你写的,那。。。。也许 。。。你要用softice之类的工具去取传给messagebox的错误提示信息然后把messagebox跳掉了 
在dispaly()的catch里加上抛出异常throw err;
在方法一中捕获异常之后在抛出
private void dispaly() 

    try 
    { 
    ..... 
    } 
    catch(Exception err) 
    { 
      MessageBox.Show(err.Message); 
      Throw err;
    } 


private void show() 

    try 
    { 
      display(); 
    } 
    catch (Exception err)
    { 
       //捕获异常
    } 

throws new Exception抛出新的异常

VC++最下面的显示信息的窗口可以响应光标,但不能删除里面的字符,这是怎么做到的? 有关NetBIOS端口…………。路过不妨指点一二。 上海的话参加认证考试的话在哪里报名啊? 进行恢复数据库操作时如何断开其它用户的连接? 实在忍不住了,问个问题,delphi里写SQL语句一定要通过SQL.ADD(\'\');添加吗??有没有一次把大量SQL语句导入程序的? LINUX共享上网的小问题 我这样用CFileDialog,但却看不到明明存在的文件。 怎么最方便的实现让用户的计算机自动在指定时间访问一个网页。 在添加控件时,一个超怪的问题!(为什么不能添加进去?) 数据库无法复制\\删除 如何实现切分窗口的其中某一个视图固定高度? 第一次来SQL版---请问怎么利用已知表中的路径值生成另一个包含目录树结构的新表 为什么我使用input方法之后,mscom的comevents值还是=2 从 request.setAttribute(\"demoArrayList\",getList()) 传到页面,请问页面中用Struts怎样判断该List的长度? win2000系统ie浏览器无法打开二级连接 如何让自己的程序可以支持多种类型的文件? 还是弹出窗口问题 疯了,为什么我用这段代码导出水晶报表为pdf/word,要连续按两次打开,它才打开pdf/word,晕呐 我写的一段读写文件的代码 编译通过但是运行报错 请高手指点 VC++的打开对话框中的文件类型可以有多种,这是怎么实现的? 寻求资料 初学者的问题,apache和tomcat有什么关系和区别? 问问广州的兄弟,你们的待遇如何啊 如何在程序中判断一个Access数据库中有几张表? 急--问基础问题! 在DragDrop事件中如何确定放置的Item是从哪个控件拖动过来的? 主板不支持双通道,想加内存,怎么办好 请问那位朋友知道广州广智图书公司情况? 怎样使用Choose Directory对话框? 我是一个真正的菜鸟!求大虾帮忙!