■97800 / inTopicNo.3) |
Re[2]: FileSystemWatcherのNotifyFilter |
□投稿者/ PATIO (4回)-(2021/07/14(Wed) 15:06:33)
|
■No97728 (Azulean さん) に返信 > ■No97723 (PATIO さん) に返信 >>FileSystemWatcherのNotifyFilterの設定がChanged以外のイベントにも >>影響を及ぼしているようなのですが、この辺の関係についての資料ってある物なのでしょうか。 > 逆に疑問なのですが、Changed だけだと思ってしまう流れは何かありますか? > ドキュメント構成上、特定のイベントにだけ影響するような記載はないはずです。
確かに記述はないですね。 Changedの場合は変化対象が複数あるからフィルターがあって そのほかに関してはファイル自体の話なので関係なさそうな気がしていただけなので まあ、言われてみればという話です。
>>私が引っかかったのは、FilterにFileNameが入っていないとDeletedが発生しないというのがありました。 > Filter というプロパティもあるのですから、変に略さないでください。誤解を招くので…。 > > NotifyFilter プロパティの話だとして、そういった対応表はないと思います。 > 列挙値の一覧を見て、抜いたら機能しなさそうだなぁ…で想像するところでしょうか。
すいません、うっかりやってしまいました。 NotifyFilterで正しいです。 あー、やはりやってみるしかないという類の奴なんですね。
> どうしてもといわれるのであれば、FileSystemWatcher のソースコードを見るところでしょうか。 > https://referencesource.microsoft.com/#System/services/io/system/io/FileSystemWatcher.cs,729 > > そこから呼ばれている ReadDirectoryChangesW のパラメーター説明を読めば、一応、ここではファイル削除の例は示されています。 > "Any file name change in the watched directory or subtree causes a change notification wait operation to return. Changes include renaming, creating, or deleting a file." > https://docs.microsoft.com/en-us/windows/win32/api/winbase/nf-winbase-readdirectorychangesw
Microsoftが提示している資料として展開できる物があればと思ったんですが、 直接的に説明をしている資料はないのですね。 なければ、トライ アンド エラーでやってみるしかないのでそういう物であると展開する事になると思います。
|
解決済み
|