调试一个COM+组件,在COM+组件使用完毕最终退出内存时有时会出现内存地址存储错误,(一样的调用,但不是每次都有错误),在Delphi调试环境下是在CPU窗口的TObject.Free下出错,但是我从CPU窗口中又找不出是哪段源码出错,该怎么办?

解决方案 »

  1.   

    出现dllhost.exe应用程序错误.
    0x7c931e58指令引用的'0x00000067'内存,该内存不能为'read'。从这个信息中或是在CPU窗口的出错行中能不能找到出错的源代码?
      

  2.   

    我在COM+组件中创建并释放了一个不显示的Form,使用了ADO,会不会和它们有关系?
      

  3.   

    不是每次都有?
    是否不同操作下,分配資源不一樣,資源沒有釋放或者提前釋放
    出現Access Violation之類的錯誤一般就是資源處理不當,
    自己仔佃檢查一下,有時接口變量與類變量混用會引起“引用計數”中Release調用,
    有沒有這類問題?
      

  4.   

    我是用ASP调用的,每次我都是打开或刷新一下,没做别的事情,就是有时正常有时异常,异常信息为:raised too many consecutive exceptions.
      

  5.   

    是不是要改写一下Destroy过程,让Destroy只负责引用计数,不进行释构的工作。