Сказать приложение - строка против строки?
Если я бегу:
tell application "Maps"
set miniaturized of windows to false
end tell
... это отлично работает
Тем не менее, когда я бегу:
set applicationName to "Maps"
tell application applicationName
set miniaturized of windows to false
end tell
...Я получил:
Карты получили ошибку: не могу сделать | миниатюрный | каждого окна в ссылку на тип.
Я также попробовал:
tell application (applicationName as string)
...
end tell
... но я получаю ту же ошибку.
Я новичок в Apple Script и не совсем понимаю нюансы между ними.
2 ответа
Решение
Аргумент tell application
требуется литеральная строка (константа), потому что терминология оценивается во время компиляции.
Альтернатива using terms from application
блок, но аргумент также требует литеральной строки
using terms from application "Maps"
end using terms from
Это работает для меня, используя последнюю версию Sierra
set applicationName to "Maps"
tell application applicationName
tell its windows
set miniaturized to false
end tell
end tell
Это также работает для меня
set applicationName to "Maps"
tell application applicationName's windows to set miniaturized to false