请教如何让AutoHotKey的脚本只对某个特定程序有用?

比如我想让我的脚本只对chrome起效,该怎么写啊

IfWinActive, ahk_class Chrome_WidgetWin_1
    {
    ;语句
    }

;如上这样,ahk class可以通过AU_SPY工具获得,或者通过:

WinGetActiveTitle, title
WinGetClass, outclassid, %title%

获得并输出到变量outclassid。

当然,如果你想等到出现激活的Chrome窗口时继续指令,可以这样写:

Loop
{
;循环
IfWinActive, IfWinActive, ahk_class Chrome_WidgetWin_1
    Break
}
;退出循环,继续指令



;若果是没发现chrome则打开chrome并打开指定某网页 可以这样写:

    IfWinNotExist, ahk_class Chrome_WidgetWin_1
        {
        run, C:\Users\Administrator\AppData\Local\Google\Chrome\Application\chrome.exe http://zhidao.baidu.com/
        ;....
        ;....
        }

;ahk class也可以是窗口标题,可以模糊或者准确匹配【之前加SetTitleMatchMode,1准确/2模糊】。

追问

为啥是Chrome_WidgetWin_1而不是chrome就可以了呢?

追答

这是ahk为窗口命名的类,前面有加ahk_class,当然也可以用窗口标题匹配,但标题只是包含chorme,而不是chrome,可以用上面的方法加定义,或者先wingetactivetitle,title然后ifinstring, title, chrome来走

温馨提示:答案为网友推荐,仅供参考
相似回答