COPY_INFORMATION結構 (ntifs.h)

COPY_INFORMATION結構會將從 NtCopyFileChunk 複製作業的讀取和寫入呼叫相互關聯。

語法

typedef struct _COPY_INFORMATION {
  PFILE_OBJECT SourceFileObject;
  LONGLONG     SourceFileOffset;
} COPY_INFORMATION, *PCOPY_INFORMATION;

成員

SourceFileObject

復本的來源檔案物件。

SourceFileOffset

複製來源檔案的檔案位移。 這個值可以與寫入期間目的地的檔案位移進行比較,以確保複本已完成且不一定。

備註

復本的讀取和寫入作業在其各自的 IRP 延伸模組中包含相同的資訊,因此可以針對具有 IopCopyInformationType IRP 延伸模組的所有寫入使用COPY_INFORMATION相互關聯。

如果讀取和寫入作業相互關聯,且複製的數據經過驗證,則可以將寫入的目的地檔案視為來源的完整和複製複本。 這表示信任可以從來源檔案傳遞至目的地。

複本通常會以區塊方式發生。 若要驗證整個檔案複本:

  • 每個區塊 (每次呼叫 NtCopyFileChunk) 都必須使其寫入作業與先前的讀取作業相互關聯。

  • 所有複製在一起的區塊都應該涵蓋整個檔案範圍。

篩選條件可以使用寫入之 IRP 延伸模組中提供的來源資訊來驗證複製數據的正確性,如下所示:

  • 確認 SourceFileObject 上發生相符的讀取。
  • 確認 SourceFileOffset 符合寫入作業的檔案位移。

如需詳細資訊,請參閱 核心模式檔案複製和偵測複製檔案案例

規格需求

需求
最低支援的用戶端 Windows 11 版本 22H2
標頭 ntifs.h

另請參閱

FltGetCopyInformationFromCallbackData

IoCheckFileObjectOpenedAsCopySource

IoCheckFileObjectOpenedAsCopyDestination

NtCopyFileChunk

NtCreateFile