うまくいくようですSBApplication
が、私は以前に使用したことがありません。
@cocoadevcentralによると:
SBApplication: AppleScript の代わりに Objective-C を使用してクロスアプリケーション スクリプト呼び出しを行うために使用します。例: 現在の iTunes トラックを取得します。
ドキュメントからの抜粋は次のとおりです。
SBApplication クラスは、Objective-C プログラムが Apple イベントをスクリプト可能なアプリケーションに送信し、それに応じて Apple イベントを受信できるようにするメカニズムを提供します。これにより、そのプログラムがアプリケーションを制御し、データを交換できるようになります。Scripting Bridge は、Apple イベント記述子と Cocoa オブジェクトの間でデータ型を橋渡しすることによって機能します。
SBApplication には Apple イベントを手動で送信および処理するメソッドが含まれていますが、これらのメソッドを直接呼び出す必要はありません。代わりに、SBApplication のサブクラスは、Apple イベントの送信を自動的に処理するアプリケーション固有のメソッドを実装します。
たとえば、現在の iTunes トラックを取得したい場合は、iTunes アプリケーション用に動的に定義されたサブクラスの currentTrack メソッドを使用するだけで済みます。このメソッドは、Apple イベントの送信の詳細を処理します。より複雑なことを理解する必要はありません。低レベルの代替:
[iTunes propertyWithCode:'pTrk'];
Apple イベントを手動で送信する必要がある場合は、NSAppleEventDescriptor クラスの使用を検討してください。
それが役立つことを願っています!