4

我的应用程序将一些文件放入垃圾箱,但也实现了撤消以将它们再次拉出。我需要知道用户是否清空了垃圾箱,以便我可以清空我的撤消堆栈。

我是否需要监视文件系统事件来实现这一点,还是有更简单的方法?

4

3 回答 3

2

您可能最终不得不观看 ~/.Trash,但是当垃圾清空时会发布通知它的名字是"com.apple.carbon.core.DirectoryNotification"(其他时间也发过),但是userInfo里面好像什么都没有。但是,它确实有一个字符串作为对象,因此它可能包含一些相关信息。我的快速测试似乎表明它没有。(它看起来像一个类似于 的字符串"FNObject 555279-101"

于 2011-03-21T01:59:50.450 回答
1

您可以使用UKKQueue来查看文件更改(空 thrash)通知:
http ://www.cocoadev.com/index.pl?UKKQueue

于 2011-06-02T04:00:02.787 回答
0

另一种选择是使用FNSubscribeor FNSubscribeByPath。该通知不会告诉您到底发生了什么,只是告诉您订阅的目录发生了一些事情。

于 2011-04-03T22:42:46.280 回答