首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Scriptom (groovy)让Excel进程继续运行--我做错了什么吗?

Scriptom (groovy)让Excel进程继续运行--我做错了什么吗?
EN

Stack Overflow用户
提问于 2010-03-17 22:03:33
回答 2查看 1.4K关注 0票数 0

我正在使用Groovy 1.7.0的Scriptom扩展,以便在Windows XP下使用Excel2007自动执行一些处理。

尽管我在Excel activeX对象上调用了quit,但这似乎总是让excel进程保持运行。(在Scriptom示例文档中也有对此现象的附带引用。)

代码看起来像这样:

代码语言:javascript
复制
import org.codehaus.groovy.scriptom.ActiveXObject;
def xls = new ActiveXObject("Excel.Application")
xls.Visible = true

// do xls stuff

xls.Quit()

可见的excel窗口确实消失了,但在任务管理器中留下了一个EXCEL进程(每次运行脚本都会堆积更多的进程)。

没有错误消息或异常。

谁能解释一下为什么Excel进程被抛在了后面,有什么方法可以防止它发生吗?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2010-06-29 20:12:02

这是可行的:

代码语言:javascript
复制
xls.Quit()
Scriptom.releaseApartment()

javadocs状态:

在某些情况下,JVM可能会在一切清理完成之前关闭,这可能会使自动化服务器(尤其是Excel)挂起。在脚本退出之前调用此函数,以便从自动化服务器获取正确的行为。

票数 4
EN

Stack Overflow用户

发布于 2010-05-06 04:04:09

看起来你好像失踪了

代码语言:javascript
复制
xls.release();

就像here做的那样。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/2462798

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档