1

まず、Objective-C は初めてです。だから私に辛抱してください:)

OS X Mavericks がユーザーの選択によってシャットダウンする前に、不明な時間 (NAS へのデータのバックアップなど) にいくつかのタスクを実行する必要があります。そのため、そのシャットダウンをキャンセルするソリューションが必要です。

私はすでに試しました:

- (NSApplicationTerminateReply)applicationShouldTerminate:(NSApplication *)sender
{
    return NSTerminateCancel;
}

これで、システムのシャットダウンにより、アプリがシャットダウンをブロックするというメッセージがユーザーに表示されます。ユーザーにそのメッセージを見せたくありません。そのメッセージをキャッチして「キャンセル」で応答するにはどうすればよいですか?? SIGTERM および SIGKILL シグナルについて読みました。しかし、Apple はどうにかしてそれらを傍受させたくないようです。
シャットダウンを中断/キャンセルし、シャットダウンの前にいくつかの作業を行うより良い方法はありますか?

アドバイス、ヒント、解決策をありがとう!

4

1 に答える 1

1

ログアウトフックを使用できます。それらは非推奨ですが、まだ機能します。スクリプトの実行が完了するまで、ユーザーには灰色の画面が表示されます。

于 2014-02-25T10:08:33.253 に答える