Applescript 无法获取进程“...”

Applescript 无法获取进程“...”

我在 applescript 中收到错误

在第一个脚本中我创建了一个搜索引擎,脚本如下

on dialogBox(theMessage)
display dialog theMessage default answer "" buttons {"Cancel", "Search"} default button 2 with title "Pick a search engine"
end dialogBox


set search to text returned of dialogBox("Enter Google Search")
tell application "Safari"
activate
open location "https://www.google.com/?    gfe_rd=cr&ei=4fJgVJ6SM8yD8QfJjYGICA&gws_rd=ssl,cr&fg=1#q=" & search
end tell

我将该脚本导出为一个名为 google 的应用程序

第二个脚本的代码如下:

tell application "System Events"
tell process "google"
    click button "Search" of window "Pick a Search engine"
end tell
end tell

但是当我尝试运行代码时出现以下错误:

系统事件出现错误:无法获取进程“google”。

答案1

正在运行的脚本实际上不会有进程名称“google”,即使你这样调用该脚本;它将被称为“applet”

为了让操作系统将其识别为一个独特的进程,您需要编辑小程序的资源结构......

http://macscripter.net/viewtopic.php?id=25707

如果您更改应用程序的 .plist 可执行文件名称,则必须更改可执行文件的名称以匹配,以及“applet.rsrc”文件的名称。

CFBundleExecutable - scraper
可执行文件名称 - scraper
applet.rsrc - scraper.rsrc

如果您更改应用程序的 .plist 创建者类型,则必须更改“PkgInfo”文件内容以匹配。

CFBundleSignature-scrp
PkgInfo-APPLscrp

您可能还需要压缩原始应用程序,丢弃原始应用程序,然后打开存档的应用程序以使更改“保留”。

相关内容