Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/meteor/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Autohotkey AHK WinActivate无法排除_Autohotkey - Fatal编程技术网

Autohotkey AHK WinActivate无法排除

Autohotkey AHK WinActivate无法排除,autohotkey,Autohotkey,我只想在WinActivate中排除Google Chrome。从完全限定窗口标题到使用变量、字符串,我已经尝试了所有的方法,但这些都不管用。它总是切换到chrome,因为我打开了两个与字符串匹配的窗口——chrome和windows资源管理器。我想切换到windows资源管理器 Ticket_Out := "00123456" xclude:= Ticket_Out . "00123456 | Salesforce - Google Chrome" W

我只想在WinActivate中排除Google Chrome。从完全限定窗口标题到使用变量、字符串,我已经尝试了所有的方法,但这些都不管用。它总是切换到chrome,因为我打开了两个与字符串匹配的窗口——chrome和windows资源管理器。我想切换到windows资源管理器

Ticket_Out := "00123456"
xclude:= Ticket_Out . "00123456 | Salesforce - Google Chrome"

WinActivate % Ticket_Out,, xclude, ; doesn't work
WinActivate, "00123456",, "00123456 | Salesforce - Google Chrome", ; also doesn't work


我知道有一个WinActivateBottom,但我真的想避免使用它。我真的很想让这台机器工作。“我的语法”或“我的命令”有什么问题?

任何命令中的每个参数(除非另有规定)都使用传统语法

WinActivate % Ticket_Out,, xclude,
WinActivate, "00123456",, "00123456 | Salesforce - Google Chrome",
在第一个参数中,通过使用
%
加空格关闭参数,可以正确地强制第一个参数中的表达式。但是,在第三个参数中,您再次使用传统语法,只需键入
xclude
。这将被解释为文本,而不是变量。用
%
和空格也关闭该参数

在第二个例子中,你也没有对任何一个参数计算表达式,所以它们都被解释为文本包括引号。在传统语法中,您不引用字符串,因为默认情况下,所有内容都是文本

WinActivate, % Ticket_Out, , % xclude 
WinActivate, % "00123456", , % "00123456 | Salesforce - Google Chrome"
还删除了尾随的逗号。他们不属于那里。
现在它应该可以工作了,假设窗口标题和您的


除了使用exclude参数外,您还可以在指定窗口标题时更加具体。
例如,您可以这样使用:

WinActivate, % "Title Of My Window ahk_exe chrome.exe"
现在您只匹配来自名为
chrome.exe
的进程的窗口


总的来说,您的问题主要来自不知道传统语法和现代表达式语法之间的区别。
这里有一个很好的文档页面,可以帮助您了解这些差异: