jacob操作word,但是不知道什么情况,有一个word文档,会在极小概率下关闭不了,具体为什么关闭不了也不知道,于是导致再打开这个word时,总提示该word被锁定。
我的问题时,怎么才能在打开这个word之前,判断该word是否已经处于使用状态,如果是,则强行关闭。如果没有,则直接打开。
我的问题时,怎么才能在打开这个word之前,判断该word是否已经处于使用状态,如果是,则强行关闭。如果没有,则直接打开。
解决方案 »
- java.lang.NegativeArraySizeException 异常如何解决
- 关于考试系统的试卷表 和 试题表 字段设计~~~求999
- [200分]求大侠那里有hibernate的详细配置和所名(最好能用呀,项目急用)!
- 如何用超链接调用SERVLET
- volecity在resin3下面如何配置啊?
- 觉得自己是高手就进来看一下
- 集成windows认证的webservice(Reporting Service)使用Axis客户端怎么访问?
- 一个初学者的问题--接分
- 想用java开发一个ftp客户端软件,不知从何下手,特向高手请教
- struts2 session 一个奇怪问题请教
- Strut2 + Jquery 数据传输到前台网页的问题
- struts2 中的iterator标签 遍历时怎么取得另一个list中的值
try
{
}
catch (Exception e)
{
e.printStackTrace();
}
finally
{
app.invoke("Quit", new Variant[] {});
}
这样都不能关闭吗
import java.io.BufferedReader;
import java.io.InputStreamReader;
/**
* JAVA检测指定的进程是否在运行。
*
*
*/
public class TestFindProcessOfExe {
public static void main(String[] args) {
System.out.println(findProcess("eclipse.exe"));
}
/**
* 检测程序。
*
* @param processName 线程的名字,请使用准确的名字
* @return 找到返回true,没找到返回false
*/
public static boolean findProcess(String processName) {
BufferedReader bufferedReader = null;
try {
Process proc = Runtime.getRuntime().exec("tasklist /FI \"IMAGENAME eq " + processName + "\"");
bufferedReader = new BufferedReader(new InputStreamReader(proc.getInputStream()));
String line = null;
while ((line = bufferedReader.readLine()) != null) {
if (line.contains(processName)) {
return true;
}
}
return false;
} catch (Exception ex) {
ex.printStackTrace();
return false;
} finally {
if (bufferedReader != null) {
try {
bufferedReader.close();
} catch (Exception ex) {}
}
}
}
}
杀进程吧...
jacob 本来就不稳定。 可以试试 在调用word 打开方法之前 。 调用一个bat bat里面杀死word进程。
好久了 已经忘了。 而且现在基本舍弃这个东西了。 太不稳定了。 能不用就不用把。