2

Mac OS X プラットフォームで実行するためのデーモンを作成しました。PackageMaker を使用してインストーラーを作成しましたが、Daemon は問題なくインストールされます。インストールが完了したら、デーモンを実行するためにシステムを再起動する必要があるようです。再起動を強制せずにデーモンをロードして起動できるかどうか疑問に思っています...いくつかのアイデアがありますが、正しい方法かどうかはわかりません。たとえば、次のようになります。

  1. コマンドを呼び出すシェル スクリプトを使用する: $sudo launchctl load /Library/LaunchDaemons/myService.plist

  2. ServiceManagement.framework を使用して、実行中にデーモンを使用するアプリケーションの権限昇格を管理し、必要に応じてアプリがサービスをインストールしてロードできるようにします。サービスの作業は、Cocoa アプリがアクティブな場合にのみ必要であると言わざるを得ません。

より良いアイデアがあれば、それを人々に知らせてください。:D

4

1 に答える 1

0

パッケージのインストール後のスクリプトにdaemonloadコマンドを追加する必要があります(Your Option 1)。とにかく、デーモンにはlaunch-on-demandオプションがあるので、デーモンは、アプリがデーモンのロードを要求した場合にのみロードされます。

于 2012-12-02T17:43:06.490 に答える