我有一个程序,运行一段时间就会出现“XX指令引用的XX内存,该内存不能为read”这个错误然后关掉重新打开程序就又好了但过一会又出现现在找不到问题所在try  catch似乎对这种内存错误不敏感不知道该如何捕捉这种错误

解决方案 »

  1.   

    需要捕获结构化异常(SE)
    _set_se_translator在其中将相应的异常翻译为标准的C++异常
      

  2.   

    http://www.codeproject.com/cpp/exception.asp
    http://www.codeproject.com/cpp/seexception.asp
      

  3.   

    楼上的能不能写得详细点?比如
    try{
    }
    catch(...)
    {
    }而你那个又是怎么写得呢?
      

  4.   

    在debug方式下跑啊,出错的时候自然就能定位到代码里了.
      

  5.   

    看看给出的那两个URL吧,里面讲的够详细的。
      

  6.   

    程序刚启动运行一点问题都没有就是运行几个小时以后就会出错我看了很多遍了实在是找不到在哪里出错的了用try catch也捕捉不到
      

  7.   

    我的E文很差,mvp大哥能不能直接给我说一下
      

  8.   

    EddieCai() 在debug下跑,出错的时候就到一堆命令那里了如何找出相应的语句?
      

  9.   

    点右键弹出菜单,再选择go to source...就能跳到相应的代码段
      

  10.   

    一种方法是在Debug的环境下,调试,出错了,可以直接找到位置。
    二,若一备件达不到,可以用反汇编工具结合汇编语言和出错位置来定位到具体位置,这种处理适用于有CODE的Release出错。