1

通过使用下面的代码,我打开了一个窗口(比如一些软件安装程序窗口),它运行良好,在这里我想检查窗口是否打开的天气。

如何检测窗口是否打开

代码片段:-

  cmdarray = "......";
  Runtime runTime = Runtime.getRuntime(); 
  Process responce = runTime.exec(cmdarray);

什么样的窗户

Ans :- 随处安装程序窗口

最后我能够通过使用侯赛因提供的解决方案找到窗口是否打开

如果我想关闭窗口,我该如何关闭它......

我在java中使用taskkill /F /IM << installer_window>>.exe命令(如runtime.exe(“command”);)来终止进程。但是窗口没有关闭。有什么办法可以关闭那个窗口。

提前致谢。

@侯赛因

我按照你说的尝试了,但我收到类似错误的错误:无法终止 PID 4408 的进程“proces.exe”原因:只能强制终止此进程(使用 /F 选项)。这就是我包含/F的原因,在这个帮助下,我能够终止进程,但窗口没有关闭。

请提供快速解决方案,等待回复....

提前致谢

4

1 回答 1

2

这将为您提供 Windows 中运行的所有进程的完整列表,您可以对其进行迭代以使所需的程序运行或不运行。

    public class taskmanager {

        public static void main(String[] args) throws IOException {
            String line;
            Process p = Runtime.getRuntime().exec("tasklist.exe");
            BufferedReader input = new BufferedReader(new InputStreamReader(p.getInputStream()));
            while ((line = input.readLine()) != null) {
                System.out.println(line); //<-- Parse data here.
            }
            input.close();
                String processToKill = "notepad++.exe"
                killProcess(processToKill);
        }
        public void killProcess(String processName)
        {
         Runtime.getRuntime().exec("taskkill /IM " + processName);
         }
    }
于 2013-03-11T09:48:11.440 回答