我遇到AppleScript和System Events的问题.
我在"系统偏好设置"的"通用访问"偏好设置面板中选中了"为辅助设备启用访问权限".
当我尝试:
arch -i386 osascript -e'告诉应用程序"系统事件"以获取每个进程的每个窗口的位置'
我有这个错误:
系统事件出错:禁用辅助设备访问.(-25211)
你有什么主意吗 ?
非常感谢
NSA*_*ict 11
在Mac OS X 10.9上,当AppleScript Editor不允许使用辅助功能时,实际上会出现相同的错误.
以下是启用它的方法:
转至系统偏好设置 > 安全和隐私 > 隐私 > 辅助功能.

然后,只需选中AppleScript编辑器左侧的复选框,错误应该消失.
问题不在于辅助设备.AppleScript的似乎不正确地返回错误代码,当它试图访问一个过程,绝不能有任何窗口的窗口(在我的情况,这是"谷歌Chrome浏览器帮助").
你需要抓住错误.这对我有用:
tell application "System Events"
set procs to processes
set windowPositions to {}
repeat with proc in procs
try
if exists (window 1 of proc) then
repeat with w in windows of proc
copy w's position to the end of windowPositions
end repeat
end if
end try -- ignore errors
end repeat
end tell
return windowPositions
Run Code Online (Sandbox Code Playgroud)
返回一个坐标对列表,例如{{1067,22},{31,466},{27,56},{63,22},{987,22}} - 这是你想要得到的吗?