Freigeben über


FSCTL_OFFLOAD_READ Steuerelementcode

Der FSCTL_OFFLOAD_READ-Steuerelementcode initiiert einen Ausladevorgang für einen Datenblock in einem Speichersystem, der Lesegrundtypen aus dem Offload unterstützt.

Rufen Sie zum Ausführen dieses Vorgangs FltFsControlFile oder ZwFsControlFile mit den folgenden Parametern auf.

Die Parameter

  • Instanz [in]: Nur FltFsControlFile . Ein undurchsichtiger Instanzzeiger für den Aufrufer. Dieser Parameter ist erforderlich und darf nicht NULL sein.

  • FileObject [in]: Nur FltFsControlFile . Das Dateizeigerobjekt, das die zu lesende Datei angibt. Dieser Parameter ist erforderlich und darf nicht NULL sein.

  • FileHandle [in]: Nur ZwFsControlFile . Das Dateihandle der zu lesenden Datei. Dieser Parameter ist erforderlich und darf nicht NULL sein.

  • FsControlCode [in]: Der Steuerelementcode für den Vorgang. Verwenden Sie FSCTL_OFFLOAD_READ für diesen Vorgang.

  • InputBuffer [in]: Ein Zeiger auf eine FSCTL_OFFLOAD_READ_INPUT Struktur, die die Größe und den Offset eines zu lesenden Datenblocks enthält.

  • InputBufferLength [in]: Die Größe des Puffers in Bytes, auf den InputBuffer verweist. Dieser Wert ist sizeof(FSCTL_OFFLOAD_READ_INPUT).

  • OutputBuffer [out]: Ein Zeiger auf eine FSCTL_OFFLOAD_READ_OUTPUT Struktur, die die Ergebnisse des Offload-Lesevorgangs empfängt.

  • OutputBufferLength [out]: Die Größe des Puffers in Bytes, auf den der OutputBuffer-Parameter verweist. Dieser Wert muss mindestens sizeof(FSCTL_OFFLOAD_READ_OUTPUT) sein.

Statusblock

FltFsControlFile oder ZwFsControlFile gibt STATUS_SUCCESS zurück, wenn der Vorgang erfolgreich ist. Andernfalls gibt die entsprechende Funktion möglicherweise einen der folgenden NTSTATUS-Werte zurück.

Code Bedeutung
STATUS_INVALID_DEVICE_REQUEST Das angegebene Handle ist kein gültiges Dateihandle.
STATUS_INVALID_PARAMETER Ein Parameter ist ungültig. Siehe Anmerkungen.
STATUS_VOLUME_DISMOUNTED Das Dateisystemvolume wird aufgehoben.
STATUS_NOT_SUPPORTED Offload-Lesevorgänge werden auf diesem Volume nicht unterstützt.
STATUS_OFFLOAD_READ_FILE_NOT_SUPPORTED Der angeforderte Dateityp wird nicht unterstützt. Offload-Vorgänge werden für diese Dateitypen nicht unterstützt: Eine Transacted-Datei (TxF); Nicht-Benutzer-Dateien; Komprimierte Dateien; Verschlüsselte Dateien; Sparsame Dateien; NTFS-Metadatendateien.
STATUS_FILE_DELETED Der Datenstrom für diese Datei ist ungültig.
STATUS_FILE_CLOSED Das Dateihandle ist geschlossen.
STATUS_INVALID_HANDLE Das angegebene Dateihandle ist ungültig.
STATUS_FILE_LOCK_CONFLICT Unzureichender Lesezugriff aufgrund des aktuellen Dateisperrstatus.
STATUS_END_OF_FILE Das FileOffset-Element von FSCTL_OFFLOAD_READ_INPUT beginnt nach dem Ende der Datei (EOF).
STATUS_DISMOUNTED_VOLUME Ein Ausladevorgang kann nicht auf einem nicht gemounteten Volume erfolgen.
STATUS_INSUFFICIENT_RESOURCES Unzureichende Ressourcen stehen zur Verfügung, um die Anforderung abzuschließen.
STATUS_BUFFER_TOO_SMALL OutputBufferLength ist zu klein, damit OutputBuffer eine FSCTL_OFFLOAD_READ_OUTPUT Struktur empfängt.

Bemerkungen

Offload-Lesezugriff ist nur für normale Dateien verfügbar. Eine Liste der nicht unterstützten Dateitypen finden Sie in der Beschreibung für STATUS_OFFLOAD_READ_FILE_NOT_SUPPORTED .

Es ist möglich, dass Lesevorgänge über die Gültige Datenlänge (Valid Data Length, VDL) hinausgehen, aber nicht über EOF hinausgehen.

Wenn STATUS_INVALID_PARAMETER zurückgegeben wird, kann der Fehler einer der folgenden ungültigen Parameter sein:

  • Die Dateigröße ist kleiner als PAGE_SIZE.
  • InputBufferLength<sizeof(FSCTL_OFFLOAD_READ_INPUT).
  • Mindestens eins dieser Mitglieder von FSCTL_OFFLOAD_READ_INPUT ist falsch:
    • FileOffset ist kein Vielfaches der logischen Sektorgröße des Volumes.
    • CopyLength ist kein Vielfaches der logischen Sektorgröße des Volumes.
    • Die Größe ist nicht die Größe der FSCTL_OFFLOAD_READ_INPUT Struktur.
    • FileOffset + CopyLength>MAXULONGLONG.

Anforderungen

Anforderungstyp Anforderung
Minimal unterstützter Client Windows 8
Header Ntifs.h (enthalten Ntifs.h oder Fltkernel.h)

Siehe auch

FltFsControlFile

ZwFsControlFile

FSCTL_OFFLOAD_READ_INPUT

FSCTL_OFFLOAD_READ_OUTPUT