4

より大きな目的の一部として、「最前面」のアプリケーションの名前 (つまり、メニュー バーの名前) を確認する LiveCode アプリがあります。私はLiveCodeにシェルを介してこれを実行させています:

osascript -e 'tell application "System Events" to return name of every process whose frontmost is true'

アプリが通常のプロセスとして実行されている場合は正常に動作しますが、launchctl によってデーモンとして起動されると動作しません。エラーが発生します

61:68: 構文エラー: クラス名が必要ですが、識別子が見つかりました (-2741)。

私が言ったように、アプリがデーモンとして実行されている場合にのみ発生します。理由はありますか?

ところで:OS X 10.7.4

4

2 に答える 2

0

これがまだ問題であるかどうかはわかりませんが、問題がある場合は、外部から書くのはかなり簡単です..これに基づくもの:

for (NSRunningApplication *currApp in [[NSWorkspace sharedWorkspace] runningApplications]) {
        if ([currApp isActive]) {
             // return whatever property you want here
        }
    }
于 2013-03-07T09:05:00.810 に答える