java - 获取所有 chrome 窗口

标签 java google-chrome winapi jna

我想让所有 Chrome 窗口当前运行。下面的代码将获取所有窗口。

final WinDef.HWND[] windowHandle = new WinDef.HWND[1];

    User32.INSTANCE.EnumWindows(new WinUser.WNDENUMPROC() {
        @Override
        public boolean callback(WinDef.HWND hwnd, Pointer pointer) {
            if (matches(hwnd)) {
                windowHandle[0] = hwnd;
                return false;
            }
            return true;
        }
    }, Pointer.NULL);

如何才能只运行 Chrome 窗口?

最佳答案

我认为使用已经完成的第三方库(例如 Sigar)会更好。 https://support.hyperic.com/display/SIGAR/Home

您将获得用于处理流程的 API。 至少你可以看看源代码。

Sigar sigar = new Sigar();
ProcessFinder find = new ProcessFinder(sigar);
find.find("Exe.Name.ct=chrome");

关于java - 获取所有 chrome 窗口,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32303879/

相关文章:

java - 如何在Android中调用以final类对象作为参数的返回值方法?

java - AnyLogic 弃用方法 getJComponent() 的替代方法?

javascript - jQuery 在 Chrome 和 Safari 中工作,但不能在 Firefox 或 IE 中工作?

javascript - 在 Chrome 扩展中单击元素之前的事件监听器运行函数

c# - 在后台创建一个进程来监听键盘

java - 确定 String 的最长、最长和最长的 ArrayList

java - 深度优先遍历和调整矩阵

google-chrome - Chrome/特定 PC 上的不完整分块编码错误

windows - 从 ReplaceFile 重现 ERROR_UNABLE_TO_MOVE_REPLACEMENT_2 错误代码

windows - 使用 VirtuaWin 时,资源管理器窗口的 GetWindowRect 值非常负