特定の日付以降にフォルダACLが変更されたかどうかを判断する必要があります。 Windowsはこの種の情報を保存していますか?フォルダのACLが.NETの特定の日付以降に変更されたかどうかを確認
FileSystemInfoはプロパティLastWriteTimeを提供しますが、ディレクトリのアクセス許可を変更すると、この日付は変更されません。
この情報を入手する方法はありますか?
よろしく、 ジャック。
特定の日付以降にフォルダACLが変更されたかどうかを判断する必要があります。 Windowsはこの種の情報を保存していますか?フォルダのACLが.NETの特定の日付以降に変更されたかどうかを確認
FileSystemInfoはプロパティLastWriteTimeを提供しますが、ディレクトリのアクセス許可を変更すると、この日付は変更されません。
この情報を入手する方法はありますか?
よろしく、 ジャック。
下位レベルのNT APIは、FILE_BASIC_INFORMATION構造体のChangedTimeという名前のフィールドを公開します。
ファイルが最後に変更された時刻を指定します。
それは本質的にどの(私はセキュリティ記述子を含んでいると仮定)のメタデータのを最後に変更されたときのタイムスタンプです。もちろんにはという名前が変更されたためタイムスタンプが更新されてしまうとは言えませんが、これは最高のものです。
USN Journalもありますが、この機能はデフォルトで無効になっていると思います。
あなたのアドバイスをいただきありがとうございます。残念ながら、このフィールドの値はACLの変更後も変更されません。読み取り専用の変更の後でもありません。 – Jacek
なぜそれをしたいですか?パフォーマンスの最適化として?現在の値を取得して、それをあるアプリケーションの既知の古い値と比較することができます。 – CodesInChaos
はい、パフォーマンスの最適化です。許可の変更を定期的に大量のフォルダを確認するためにIneedを実行します。私は最後のチェックから変更されていないものはスキップしたいと思います。 – Jacek