解决方案 »

  1.   

    没有捕获异常,就完全没有头绪知道那里出错了。
    建议在程序中加捕获代码并将错误记录到txt或者数据库表,这样便于修改bug。
      

  2.   

    先用debug版运行,即使出未经处理的异常,好歹还能显示一些不完整的异常信息
    直接跑release版,有没处理的异常什么信息都不会有
      

  3.   

    先把产生的异常定位出来,才能做分析。
    依照4#的说法,先用debug版本定位具体的异常信息。
      

  4.   

    如果是做了安装程序启动的
    仔细看错误弹出框,并且贴出异常
    如果是VS启动的DEBUG
    那么应该直接能定位到BUG地点
    跑了半小时没问题,是半小时你在同一个功能模板或者同一个菜单下一直没问题突然有问题了吗?
    说实在没明白楼主意思
      

  5.   

    异常有信息,而且异常内部还有 InnerException,异常信息是个“栈”。所以说明和检查异常信息,不是只说最浅层的“未经处理的异常”这一个皮毛的。
      

  6.   


    任何异常都是程序问题。编程序的目的就是让所有这些都可以通过(或者绕过)。所以扔出这一句话来,解决不了任何问题。正规学习一下 vs 工具的调试器使用吧。你要能够贴出截图,能够看到你的调试器中断在哪一条语句上,调用堆栈是什么,异常信息是什么,异常信息窗口中的 InnerException(以及递归嵌套的 InnerException)是否被你打开查看过,你是否调试过抛出异常的语句(以及调用堆栈内部的程序入口代码)里的主要变量看看数据有没有什么异常。实际上,调试过后,一个程序员需要写“断言”,让程序在以后的调试、测试过程中能够尽早抛出异常来。
      

  7.   

    遇到这样的提示,就要让开发人员在测试环境重现异常。异常是好事,是为了解决问题的。如果开发人员不能重现异常,那么其实是不太好的消息,应该掂量一下“是否需要还能如期发布新版本”。在测试环境重现异常,然后立刻进入调试器去分析问题、改正bug。实际上发现程序异常是好事,不是推卸责任的借口。
      

  8.   

    是程序的问题,里面跑到一个地方程序突然崩溃了。
    如果程序是你写的,你可以用#4楼说的办法,先在VS中Debug运行,这个时候如果程序有错误,VS会自动定位到那个地方,并且有异常的具体信息提示。
    如果不是你写的,哈哈。。哈哈哈
      

  9.   

    多谢大家的回答,是往文本框里追加时出错了,在一次追加时str为空了,我又加了句if(str!=null)就没再出过错了