ActiveX嵌入到网页中,打开后,IE8关闭没问题。 IE6关闭报错.  错误说明为:  "0x03ed8d30"指令引用的"0x03ed8d30"内存。该内存不能为"read".要终止程序,请单击"确定"。
这个问题困扰我很久了。希望有高手能指点一下。感激不尽。

解决方案 »

  1.   

    应该是你的空间中有指针违规访问吧。感觉是IE8.0的安全性比IE6.0高,自动忽略这种错误吧
      

  2.   


    微软的产品升级后  安全检查会更高  就如同你程序在xp下没问题 而在vista下有问题的情况类似
    运行时没问题而退出有问题   这种错误可能是在释放资源时候出现的  在析构函数中你找找有没有  也可能是不通过析构函数释放的资源
    你可以把activex attach 到ie8上  用断点跟一下就能知道哪块出错了    
      

  3.   

        是一个 画图的曲线。 
        我用IE6来 调试控件的时候 。关闭IE.发现没有调用析构函数, 而当我用控件测试容器 tstcon32.exe调用的时候。析构函数是调用了的。 请问这是为什么呢/?
      

  4.   

        补充一下。我上面说的“IE关闭时析构函数没有被调用”,是做web的同事来控制的。他经过某种处理就可以调用 析构函数了。     我大概找到原因了。 就是因为 没有 调用析构函数。  我重写了 onClose函数。 在这个函数里 手动 调用析构函数。就不会出现上面说的关闭IE报错的问题了。 但是 onClose 不仅在关闭IE时调用。 在 “刷新”和 “后退”时也会调用 。所以不能在onClose函数中手动调用 析构函数。
            那么。谁知道 有什么函数可以 只在 IE关闭时调用呢?    
      

  5.   

    没人理我。我再提出一个问题。为什么在  IE  刷新和 后退时 都会 调用析构函数,而在 关闭IE时不调用析构函数呢?  如果不调用析构函数会有大量的内存泄漏。但我在析构函数里什么都没做。在网上搜了一下。发现遇到和我同样问题的人还挺多的。但是没有人提出有效的解决办法 。    问题的根源就是 关闭IE没有自动调用析构函数,如果能调用析构函数。那问题就解决了。
      

  6.   


    程序关闭了就不存在内存泄露这个概念。IE调度COM会有个延迟释放的动作。
      

  7.   

    等JamesHooo来吧,他对IE机制了解