想用java调用打开IE浏览网页,并控制打开的网页个数不超过3个。把iexplore.exe文件拷贝到项目目录下,代码大致如下:    String base = "d:/project";   // 项目和iexplore.exe所在文件夹
    String url = "http://www.csdn.net";
    String cmd = base + File.separator + "iexplore.exe" + " " + url;    Runtime runtime = Runtime.getRuntime();
    Process process;
    try {
process = runtime.exec(cmd);
} catch (IOException e) {
    e.printStackTrace();
        }
    }
    点击按钮执行这段代码,说穿了就是想控制自己打开的iexplore.exe进程的个数。我试着把每个process放到容器里,每次要打开的时候检查容器里process的数量,如果等于3就提示不能开新的窗口。     现在的问题是,弹出的IE窗口被手动关闭后,该窗口对应的process并会像想象中的被destroy,设置为null,并从容器中移掉。     请问应该怎样使手动关闭的IE对应的process自动移出该容器?

解决方案 »

  1.   

    Process 不知道有没控制数量的, 可不可以 设个变量 exec一次记录一下,3次不让在运行
      

  2.   

    Process的方法少得可怜……一眼就看完了。
    exec一次就是弹出一个IE,计数加一的话,打开的IE被关掉了应该减一,但是"关IE"这件事情我们得不到通知,所以手动对计数器减一也很困难。只能每次要打开的时候去检查这个容器里process的状态。