NTFS ボリューム上のファイルの変更を検出する方法
効率的なファイル バックアップ ソリューションを追求する開発者は、ファイルの変更を検出するという課題に遭遇します。時間のかかる方法に頼らずに、NTFS ボリューム上のファイルを変更できます。この記事では、FSCTL_ENUM_USN_DATA を使用したソリューションを詳しく掘り下げ、ファイル変更検出とパス取得についての洞察を提供します。
ファイル変更検出用の FSCTL_ENUM_USN_DATA
FSCTL_ENUM_USN_DATA は、すべてのファイル変更検出を迅速に列挙する方法を提供します。ボリューム上のファイルを検出し、簡単に変更を検出できるようにファイル フラグと USN を返します。ただし、完全なファイル パスにアクセスするには、追加の作業が必要です。
パス取得のための親 ID の照合
完全なパスを取得する 1 つの方法は、親 ID をファイル ID と照合することです。ディレクトリの。これは、すべてのファイル レコードを同時に検索するか、必要に応じて親ディレクトリのレコードを読み取ることによって実現できます。
コードのデモ
提供されている C コードは、FSCTL_ENUM_USN_DATA の使用方法を示しています。特定のファイルを検索し、それらとその親ディレクトリに関する情報を表示します。このコードは、レコード ストレージ用のバッファを割り当て、ボリュームを開いてジャーナル データを取得し、レコードを反復処理して、対象のファイルをフィルタリングして詳細を表示します。
以上が以下に、中心的な問題と解決策に焦点を当てた、記事に適した質問ベースのタイトルをいくつか示します。 直接的かつ簡潔: * FSCTL_ENUM_USN_DATA を使用して NTFS ファイルの変更を効果的に検出するにはどうすればよいですかの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。