gpt4 book ai didi

google-chrome - 无法使用 AutoHotkey 识别 Google Chrome 窗口

转载 作者:行者123 更新时间:2023-12-02 17:47:09 28 4
gpt4 key购买 nike

我正在尝试使用 AutoHotkey 激活最顶部的 Google Chrome 窗口。这是我正在使用的代码:

WinActivate, ahk_class Chrome_WidgetWin_1

不过好像没有什么效果。

尝试

WinGet nChromeWindows, Count, ahk_class Chrome_WidgetWin_1

使 nChromeWindows 变量获得大于 1 的值,即使只打开一个 chrome 窗口也是如此。这表明上面的 WinActivate 不能正常工作的原因是多个 Chrome“窗口”似乎存在,即使只有一个“实际”窗口。

谁能解释发生了什么以及如何识别“真实的”(最顶层的)Chrome 窗口?

TIA,喜满洲

最佳答案

Google Chrome 会创建多个子进程,每个进程都拥有一个窗口,其中包括 Chrome 扩展程序或标签页的背景窗口。所以你需要找出最老的进程,所有进程的父进程,并激活最老的进程正在使用的窗口。

按 control+1 看看它是否有效。确保您拥有最新的 AutoHotkey 版本。

^1::WinActivate, % "ahk_pid " GetOldestPIDFromProcessName("chrome.exe")

GetOldestPIDFromProcessName(strProcessName) {

for oProc in ComObjGet("winmgmts:").ExecQuery("Select ProcessID,CreationDate from Win32_Process WHERE Name = '" strProcessName "'") {
nOldestPID := (nOldestPIDCreationDate > oProc.CreationDate) ? oProc.ProcessID : nOldestPID ? nOldestPID : oProc.ProcessID
nOldestPIDCreationDate := oProc.CreationDate
}
return nOldestPID
}

关于google-chrome - 无法使用 AutoHotkey 识别 Google Chrome 窗口,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13500018/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com