Может ли вызов "сказать" яблочного сценария выполняться без видимого запуска приложения?

У меня настроено почтовое правило для запуска следующего appleScript:

используя термины из приложения "Почта"
    по выполнению почтовых действий с сообщениями theMessages для правила theRule
        расскажите приложение "Почта"

            - делать вещи, в том числе...
            Проверить адресную книгу (имя, адрес)

        конец сказать
    завершить выполнение почтовых действий с сообщениями
прекратить использование терминов из

на CheckAddressBook(имя, адрес)
    расскажите приложение "Адресная книга"
        - делать вещи
    конец сказать
конец CheckAddressBook

Всякий раз, когда выполняется это почтовое правило, оно запускает адресную книгу. Его не активировали, но он внезапно появляется на моем рабочем столе. У меня вопрос: можно ли дать блокам указание запустить приложение в режиме без вывода сообщений и выйти после завершения?

2 ответа

Решение

AppleScript не может управлять приложением без его запуска. Вот как это работает. Есть и другие методы, которые вы можете использовать для доступа к базе данных адресной книги без запуска приложения, но если вы используете AppleScript для получения данных из базы данных адресной книги, приложение должно быть запущено. Моя рекомендация будет состоять в том, чтобы просто добавить команду выхода, как предложено Фабио.

Чтобы прочитать базу данных адресной книги без запуска "Address Book.app", я бы посоветовал взглянуть на инструмент командной строки "контакты", который можно бесплатно скачать здесь. Затем вы запустите его из Applescript, как do shell script "/usr/bin/contacts Peter" и обрабатывать возвращаемые значения.

Другие вопросы по тегам