Freigeben über


FsRtlGetFileSize-Funktion (ntifs.h)

Die FsRtlGetFileSize Routine wird verwendet, um die Größe einer Datei abzurufen.

Syntax

NTSTATUS FsRtlGetFileSize(
  [in]  PFILE_OBJECT   FileObject,
  [out] PLARGE_INTEGER FileSize
);

Parameter

[in] FileObject

Ein Zeiger auf das zu abfragende Dateiobjekt.

[out] FileSize

Ein Zeiger auf eine große ganze Zahl, die die Dateigröße bei der Ausgabe empfängt.

Rückgabewert

FsRtlGetFileSize gibt STATUS_SUCCESS oder einen geeigneten Fehlerstatus zurück, der den endgültigen Abschlussstatus des Vorgangs darstellt. Mögliche Fehlerstatuscodes sind:

Rückgabecode Beschreibung
STATUS_INSUFFICIENT_RESOURCES
Der für die Verwendung durch diese Funktion erforderliche Arbeitsspeicher konnte nicht zugeordnet werden.
STATUS_FILE_IS_A_DIRECTORY
Die angegebene FileObject-bezieht sich auf ein Verzeichnis.

Bemerkungen

Die FsRtlGetFileSize Routine wird verwendet, um die Dateigröße für eine Datei abzurufen. Im Gegensatz zu ZwQueryInformationFileerhält FsRtlGetFileSize die Dateiobjektsperre für synchrone Dateiobjekte nicht. Wenn Sie bereits über Dateisystemressourcen verfügen, sollten Sie FsRtlGetFileSize anstelle von ZwQueryInformationFileaufrufen, da der Versuch, die Dateiobjektsperre abzurufen, die Sperrreihenfolge verletzen und zu Deadlocks führen würde. Die ZwQueryInformationFile--Funktion sollte nur dann sein, wenn Sie noch keine Dateisystemressourcen besitzen.

FsRtlGetFileSize verwendet schnelle E/A, wenn sie unterstützt wird oder reguläre IRP-basierte Abfrage zum Extrahieren der Dateigröße verwendet wird.

Anforderungen

Anforderung Wert
Zielplattform- Universal
Header- ntifs.h (einschließlich Ntifs.h)
Library NtosKrnl.lib
DLL- NtosKrnl.exe
IRQL- PASSIVE_LEVEL
DDI-Complianceregeln HwStorPortProhibitedDIs(storport), PowerIrpDDis(wdm)

Siehe auch

FltQueryInformationFile-

ZwQueryInformationFile-