2010-07-09 8 views
1

Я хочу запустить простой applescript в приложении для какао. Я прочитал документацию на яблоко по этому вопросу, но это было слишком запутанно для меня (новичка), чтобы понять.Запуск Applescript из приложения какао

tell application "iTunes" to play 
+0

nope. Я ничего не мог извлечь из документации яблок – user377419

ответ

1

согласно documentation, вы используете NSAppleScript класс.

Очень короткая ссылка на API имеет раздел «Инициализация скрипта», один из которых - -initWithSource:, который принимает NSString. Вы создадите свой объект таким образом.

После того, как у вас есть объект сценария, вы можете затем либо -compileAndReturnError: затем -executeAndReturnError: как отдельные этапы, или просто -executeAndReturnError:, которые - в соответствии с документацией по этому методу - пытаются собрать источник первым, если это не было уже, затем выполняет ,

Итак, теоретически вы могли бы сделать все это в одной строке. (alloc, init ..., autorelease, executeAndReturnError :), если вы игнорируете ошибки, такие как непослушный разработчик.

Обратите внимание на предупреждение о том, что NSAppleScript может выполняться только из основного потока (то есть не из NSOperation/Queue или других потоков).


+0

, так что это мой объект/код скрипта. NSAppleScript * ascript = [[NSAppleScript alloc] init]; [ascript executeAndReturnError:] Как я могу сказать, что мой скрипт – user377419

+0

Я не вижу, что я делаю неправильно. Я не знаю, как заполнить аргумент после executeAndReturnError: это буквально мой третий день цели c. – user377419

+0

Подсказка: "-init" vs. "-initWithSource:". Что касается «заполнения аргумента», см. Http://developer.apple.com/mac/library/referencelibrary/GettingStarted/Learning_Objective-C_A_Primer/ и http://developer.apple.com/mac/library/ документация/Cocoa/Conceptual/OOP_ObjC/Introduction/Introduction.html –