1

首先,我是 Objective-C 的新手。所以请耐心等待我:)

在 OS X Mavericks 由用户选择关闭之前,我需要在未知时间内执行一些任务(例如:将数据备份到 NAS)。所以我需要一个解决方案来取消关闭。

我已经尝试过:

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

现在系统关闭向用户显示一条消息,我的应用程序阻止了关闭。我不想让用户看到该消息。我如何捕捉该消息并用“取消”回答它?我读到了 SIGTERM 和 SIGKILL 信号。但似乎苹果不想让他们以某种方式拦截。
有没有更好的方法来中断/取消关机并在关机前做一些工作?

感谢您提供任何建议、提示和解决方案!

4

1 回答 1

1

You can use a logout hook. They're deprecated, but they still work. The user will see a grey screen until your script finishes running.

于 2014-02-25T10:08:33.253 回答