У меня есть приложение со встроенным меню сценариев для запуска Applescripts. Однако, если вы попытаетесь запустить сценарии с определенными функциями (в основном связанными с пользовательским интерфейсом), они не будут работать, если вы не запустите их из меню системных сценариев (в строке меню).
Например, если в приложении вы говорите:
tell application "System Events" to tell application process "theApp" to get all windows
он вернет пустой список, если запускается из меню сценариев программы, и 2, если запускается из меню системных сценариев. Я также пробовал:
tell application "System Events"
tell application process "theApp"
set allElements to UI elements
display dialog (count of allElements)
end tell
end tell
-- returns 2 when run from System script menu but 0 when run from within theApp.
Также, если вы запускаете из редактора сценариев, он будет работать нормально. Сценарии с графическим интерфейсом включены для приложения в Системных настройках, поэтому мне любопытно, почему это происходит, и есть ли какие-либо обходные пути для этого (кроме запуска сценария из меню «Системный сценарий»)? Словарь показывает Standard Suite, поэтому он должен иметь доступ к окнам...
Любые идеи?