关于 ActiveXObject ........

yyxxll 2002-03-22 02:23:13
代码如下:
<SCRIPT>
var ExcelApp;

ExcelApp = new ActiveXObject("Excel.Application");
ExcelApp.quit();
ExcelApp = null;
</SCRIPT>
执行后内存中还有EXCEL进程无法被释放.如果这时,双击一个EXCEL文件 -> 无法正确显示.要结束掉该进程,重新打开才可以正确显示.为什么?请问有什么解决办法??
(win98和win2000都有该问题!)
...全文
54 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
abent 2002-03-23
  • 打赏
  • 举报
回复
我前不久刚刚问了类似的问题,这种现象是由于JS的垃圾收集机制决定的。因为这种机制是自动的,正常情况下无法人为操纵,无为兄介绍了一种方法:
CollectGarbage()非公开函数,不知道有没有用。如果要使用,可要好好好好权衡!
yyxxll 2002-03-23
  • 打赏
  • 举报
回复
补充:
ExcelApp.quit();
ExcelApp = null;
是可以释放,但是要等一阵子(一分钟左右),
如果上面的代码执行完后马上打开一个EXCEL文件会出错,但是过一分钟后再打开就可以了.
有没有办法解决这个问题呢?
zlgun 2002-03-22
  • 打赏
  • 举报
回复
用xlApp.quit set xlApp=nothing可以结束呀,可能是你前面的代码有问题,导致程序执行错误无法执行到quit处(我以前也碰到过这种情况)
孟子E章 2002-03-22
  • 打赏
  • 举报
回复
这是MS的Bug
ExcelApp = null;
应该可以解决的

87,993

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧