FSEEvent IDからファイル名を取得することは可能ですか?
質問
ここでの文書化されているMac File System Events APIを使用して、C ++で簡単なファイルシステムウォッチャーを作成しました。
コールバック、すなわち。:
static void mycallback(
ConstFSEventStreamRef streamRef,
void *clientCallBackInfo,
size_t numEvents,
void *eventPaths,
const FSEventStreamEventFlags eventFlags[],
const FSEventStreamEventId eventIds[])
.
おそらくこれらの項目の1つから抽出できると考えていますか?
編集:
たとえば、ファイルが作成されたファイルが作成されていることがわかります。
KfSeventStreamEventFlagitemcreated
が上げられています。しかし、その項目の実際の名前を取得することについてどうすればよいですか。 (アイテムが削除されたときなど、他のイベントのように)。
編集2:
私は私が欲しいものをすることができないと思います。 FS Techの概要
「取るべき重要なポイントは、通知の粒度がディレクトリレベルにあることです。ディレクトリ内の何かが変更されたが、何が変わったのかを教えてはいけません。」
解決
実際には、これは可能ですが、10.7以降のみです。fsEventStreamCreateFlagFileEventsフラグ(docs こちら
所属していません StackOverflow