denetim kodunu FSCTL_OFFLOAD_READ

FSCTL_OFFLOAD_READ denetim kodu, boşaltma okuma temel öğelerini destekleyen bir depolama sistemindeki veri bloğu için bir boşaltma okuma işlemi başlatır.

Bu işlemi gerçekleştirmek için, aşağıdaki parametrelerle FltFsControlFile veya ZwFsControlFile'ı çağırın.

Parametreler

  • Örnek [in]: Yalnızca FltFsControlFile . Çağıran için opak örnek işaretçisi. Bu parametre gereklidir ve NULL olamaz.

  • FileObject [in]: Yalnızca FltFsControlFile . Okunacak dosyayı belirten dosya işaretçi nesnesi. Bu parametre gereklidir ve NULL olamaz.

  • FileHandle [in]: Yalnızca ZwFsControlFile . Okunacak dosyanın dosya tanıtıcısı. Bu parametre gereklidir ve NULL olamaz.

  • FsControlCode [in]: İşlemin denetim kodu. Bu işlem için FSCTL_OFFLOAD_READ kullanın.

  • InputBuffer [in]: Okunacak veri bloğunun boyutunu ve uzaklığını içeren bir FSCTL_OFFLOAD_READ_INPUT yapısının işaretçisi.

  • InputBufferLength [in]: InputBuffer tarafından işaret edilen arabelleğin bayt cinsinden boyutu. Bu değer sizeof(FSCTL_OFFLOAD_READ_INPUT) değeridir.

  • OutputBuffer [out]: Boşaltma okuma işleminin sonuçlarını alan bir FSCTL_OFFLOAD_READ_OUTPUT yapısının işaretçisi.

  • OutputBufferLength [out]: OutputBuffer parametresi tarafından işaret edilen arabelleğin bayt cinsinden boyutu. Bu değer en az sizeof(FSCTL_OFFLOAD_READ_OUTPUT) olmalıdır.

Durum bloğu

FltFsControlFile veya ZwFsControlFile , işlem başarılı olursa STATUS_SUCCESS döndürür. Aksi takdirde, uygun işlev aşağıdaki NTSTATUS değerlerinden birini döndürebilir.

Kod Meaning
STATUS_INVALID_DEVICE_REQUEST Belirtilen tanıtıcı geçerli bir dosya tanıtıcısı değil
STATUS_INVALID_PARAMETER Parametre geçersiz. Bkz. Açıklamalar.
STATUS_VOLUME_DISMOUNTED Dosya sistemi birimi çıkarılır.
STATUS_NOT_SUPPORTED Bu birimde yük boşaltma okuma işlemleri desteklenmez.
STATUS_OFFLOAD_READ_FILE_NOT_SUPPORTED İstenen dosya türü desteklenmiyor. Boşaltma işlemleri şu dosya türlerinde desteklenmez: İşlem yapılan bir dosya (TxF); Kullanıcı olmayan dosyalar; Sıkıştırılmış dosyalar; Şifrelenmiş dosyalar; Seyrek dosyalar; NTFS Meta Veri dosyaları.
STATUS_FILE_DELETED Bu dosyanın veri akışı geçersiz.
STATUS_FILE_CLOSED Dosya tanıtıcısı kapatılır.
STATUS_INVALID_HANDLE Belirtilen dosya tanıtıcısı geçersiz.
STATUS_FILE_LOCK_CONFLICT Geçerli dosya kilitleme durumundan dolayı okuma erişimi yetersiz.
STATUS_END_OF_FILE FSCTL_OFFLOAD_READ_INPUT'nin FileOffset üyesi, dosya sonu (EOF) sonrasında başlar.
STATUS_DISMOUNTED_VOLUME Çıkarılmış bir birimde yük boşaltma okuması gerçekleşemez.
STATUS_INSUFFICIENT_RESOURCES İsteği tamamlamak için yeterli kaynak yok.
STATUS_BUFFER_TOO_SMALL OutputBufferLength , OutputBuffer'ınFSCTL_OFFLOAD_READ_OUTPUT bir yapı alamayacağı kadar küçük.

Açıklamalar

Boşaltma okuması yalnızca normal dosyalar için kullanılabilir. Desteklenmeyen dosya türlerinin listesi için STATUS_OFFLOAD_READ_FILE_NOT_SUPPORTED açıklamasına bakın.

Okumaların Geçerli Veri Uzunluğu'nu (VDL) aşarak başlaması mümkündür, ancak EOF'nin ötesinde olamaz.

STATUS_INVALID_PARAMETER döndürülürken hata aşağıdaki geçersiz parametrelerden biri olabilir:

  • Dosya boyutu PAGE_SIZE'den küçük.
  • InputBufferLength<sizeof(FSCTL_OFFLOAD_READ_INPUT).
  • Bu FSCTL_OFFLOAD_READ_INPUT üyelerinden biri veya daha fazlası yanlış:
    • FileOffset , birimin mantıksal kesim boyutunun bir katı değildir.
    • CopyLength , birimin mantıksal kesim boyutunun bir katı değildir.
    • Boyut , FSCTL_OFFLOAD_READ_INPUT yapısının boyutu değildir.
    • FileOffset + CopyLength>MAXULONGLONG.

Gereksinimler

Gereksinim türü Gereksinim
Desteklenen en düşük düzeydeki istemci Windows 8
Header Ntifs.h ( Ntifs.h veya Fltkernel.h içerir)

Ayrıca bakınız

FltFsControlFile

ZwFsControlFile

FSCTL_OFFLOAD_READ_INPUT

FSCTL_OFFLOAD_READ_OUTPUT