AppleScript:从应用程序隐藏/获取进程名称

Tyi*_*ilo 2 applescript pid process hide

我想隐藏最前面的应用程序.我知道你可以使用语法隐藏进程:

tell application "System Events"
    set visible of process "..." to false
end tell
Run Code Online (Sandbox Code Playgroud)

我知道如何获得最前面的应用程序:

(path to frontmost application as string)
Run Code Online (Sandbox Code Playgroud)

但是,如何将两个命令连接在一起?

这不起作用:

tell application "System Events"
    set visible of process (path to frontmost application as string) to false
end tell
Run Code Online (Sandbox Code Playgroud)

reg*_*633 5

试试这个.

tell application "System Events"
    set frontProcess to first process whose frontmost is true
    set visible of frontProcess to false
end tell
Run Code Online (Sandbox Code Playgroud)

您必须要小心,因为在某些方面,当您运行脚本时,脚本是最前面的,因此您可能最终隐藏脚本而不是您所定位的应用程序.我检查最前面进程的名称,如果它匹配脚本或"applescript runner"的名称,那么你需要隐藏它,然后再次运行命令,你将实际获得你所针对的应用程序.这很棘手.