問題タブ [appleevents]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
4 に答える
1412 参照

objective-c - カスタム URL スキームのトラブルシューティング方法を教えてください。

hereに記載されているように単純なイベント ハンドラーを設定しましたが、セレクターが呼び出されていないようです。コードを AppDelegate クラスに入れ、デリゲートを IB に接続しました。呼び出されると予想されるセレクターに NSLog() とブレークポイントをいくつか入れようとしましたが、どれもヒットしません。URL スキームは、アプリを起動する限りは機能しますが、その後は何もしません。誰でもこれをトラブルシューティングする方法をアドバイスできますか? ありがとう!

0 投票する
3 に答える
3338 参照

objective-c - CocoaのNSAppleEventDescriptorからAppleScriptデータを抽出して解析する方法

私がやっていることは、Cocoa内でAppleScriptを実行することです。一部のデータをNSAppleEventDescriptorとして返し、NSLog()は次のように出力します。

そのデータを取得して、 NSDictionaryまたはNSArray 、あるいはそれからデータを抽出できるようにするための便利なものに変換したいと思います(具体的には、「69671872」番号を保持するフィールドの後にあります)。それはある種の配列のように見えますが、AppleEventsに関する私の知識はかなり限られています。これを行う方法について何かアイデアはありますか?

上記のデータを作成するソースは次のとおりです。

助けてくれてありがとう!:)

0 投票する
1 に答える
8574 参照

objective-c - アプリ終了イベント

私はココアでアプリケーションを開発しています。私のアプリケーションは、最初にポップアップ シートを表示します。ポップアップ シートが原因でアプリケーションを終了できないため、ドックのアイコンを右クリックして [終了] を選択してアプリケーションを終了しようとしたときに発生するイベントを知る必要があります。どうすればこれを解決できますか?

0 投票する
3 に答える
4629 参照

cocoa - ScriptingBridgeを介してAppleScriptを使用してターミナルウィンドウのウィンドウIDとタブ番号を取得するにはどうすればよいですか?

次のAppleScriptを使用して[ターミナル]タブを開くことができます。

これにより、次のような文字列が返されますtab 1 of window id 3263 of application "Terminal"。これは素晴らしいことです。ウィンドウID3263とタブ番号1を確認できます(ただし、 myTabにクエリを実行してこれらの値のみを取得する方法はわかりません)。

Cocoa ScriptingBridgeでは、次のことができます。

タブオブジェクトからウィンドウIDとタブ番号を取得するにはどうすればよいですか?


2009/4/27を編集-なぜですか?

これを実行したい理由に答えて、(上記のように)ターミナルウィンドウでコマンドを開き、タブオブジェクトを取得しています。ただし、このウィンドウを移動/サイズ変更したいので、タブの「ウィンドウ」オブジェクトにアクセスする必要があります。

私はObjective-C(実際にはPerlからブリッジされたObjective-C)を使用しており、標準のOSコンポーネントに固執したいので、NSAppleScriptフレームワークとScriptingBridgeフレームワークしか使用できないと思います(すべてのperlapplescriptモジュールは64ビットで壊れました)炭素除去)。NSAppleScriptを試してみますが、戻り値の処理は非常に難しいようです。

私の現在の解決策は、タブオブジェクトのTTY(一意であることが保証されている)を取得し、タブを含むウィンドウが見つかるまで、すべてのウィンドウのすべてのタブを列挙することです。私はこれが最善の方法ではないと思いました(確かに速くはありません!)。


2009/4/30を編集-解決策

以下の「 has 」の提案に基づいて、 NSAppleEventDescriptorAPIに勇敢に立ち向かいました。executeAndReturnError()当初、私はNSAppleScriptの呼び出しでのみこれに到達することができました。ただし、NSAppleScriptはScriptingBridgeよりもはるかに遅いことがわかりました。

ClassDumpを使用してさらにいくつかのSBObject呼び出しを抽出した後、文書化されていない呼び出しを見つけましspecifierDescription()qualifiedSpecifier()。前者は私に素敵な「ウィンドウIDYのタブX」文字列を与えてくれます。後者はアップルのイベント記述子を返し、それをデコードできます。

私の最終的なコード(perl)は次のとおりです。

0 投票する
2 に答える
1938 参照

objective-c - iTunes Apple Events API

Objective-Cを介してiTunesを制御したい(PythonappscriptをOS / X 10.6.3システムに正しくインストールできない...それが私の最初の選択だった)。

私が収集したものから、CocoaのIPCはAppleイベントに基づいています:次のいずれかがあります:

  1. iTunes / Apple Events APIのオンラインドキュメント?
  2. iTunes APIにアクセスするためのイントロスペクションメカニズム?

Applescript Editor / Open Dictionaryの機能については知っていますが、表示された情報をIPC呼び出しに変換する方法がわかりません。

注:私はすでにPyObjCを使用して解決策を見つけようとしましたが、私が求めている主な機能は、理解できないトラック検索です。

免責事項: OS/Xの超初心者はこちら。

0 投票する
1 に答える
638 参照

applescript - GCD と AppleEvents / NSOperationQueue と AppleScript

私が理解しているように、GCD によって提供されるスレッドには実行ループがありますが、ソース/ポートはありません。現在、NSOperationQueue 内で AppleEvents を介して AppleScripts を呼び出すいくつかのメソッドを使用しています。また、次のスタックトレースでアプリがクラッシュすることがあります。

私の質問:

  • NSInvocationOperation または NSBlockOperation 内での AppleScript の使用
  • GCD-Threads 内での AppleEvents の使用
  • AppleEvents を使用する前に、gcd スレッドの実行ループにソース/ポートを追加する必要がありますか?
  • [CATransaction commit] を使用する前に、gcd スレッドの実行ループにソース/ポートを追加する必要がありますか?
  • [NSObject performSelectorAfterDelay...] を使用する前に、ソース/ポートを gcd スレッドの実行ループに追加する必要がありますか?
  • はいの場合、どのように?
  • 私は単純に CFRunLoopRunInMode(kCFRunLoopDefaultMode, 5.0, false); を呼び出すことができますか? /// または 30 または appleevent の定義されたタイムアウト?
0 投票する
1 に答える
182 参照

cocoa - ODBEditorSuite Apple Event voodoo について助けてください。

私は、Apple Events の ODBEditorSuite のエディター部分を実装する単純な小さなテキスト エディターに取り組んでおり、アプリが QuickCursor と連携して編集機能を提供できるようにしています。送信する必要があるイベントは非常に簡単で、多くの同じコードを共有しているため、次のようなメソッドにまとめました。

デバッグを使用NSLog()して、Apple Event が送信されていること、および directObject 記述子に適切なデータが含まれていることを確認できました。5/17/10 12:41:15 PM QuickCursor[177] Got ODB editor event for unknown file.しかし、クイック カーソル側では、Console.appのようなメッセージが引き続き表示されます。ソースから QuickCursor をビルドしましたが、directObject 記述子から適切なパスを取得していないことを確認できました。

だから、私はこれを超えてどこに行くべきかわかりません。NSAppleEventDescriptor物事は私にとって非常に異質であり、古い学校の灰色のひげのチカニーを叩きます :-P私は間違っている。前もって感謝します。

0 投票する
2 に答える
154 参照

objective-c - appleevent と通知

macos X で高性能なプロセス間通信システムを探しています。

最適なシステムは何ですか? AppleEventsまたはNSNotifications

0 投票する
1 に答える
559 参照

objective-c - SBApplication : 生データの送信方法

SBApplication sendEvent を使用して生データ (void*) を送信したい

残念ながら、これに関するドキュメントは見つかりませんでした。

これを達成するためのアイデアはありますか?

よろしくお願いします。

よろしく、