RxGetFileSizeWithLock-Funktion (fcb.h)
RxGetFileSizeWithLock ruft die Dateigröße in der FCB-Struktur mithilfe einer Sperre ab, um sicherzustellen, dass der 64-Bit-Wert konsistent gelesen wird.
Syntax
void RxGetFileSizeWithLock(
[in] IN PFCB Fcb,
[out] OUT PLONGLONG FileSize
);
Parameter
[in] Fcb
Ein Zeiger auf die FCB-Struktur.
[out] FileSize
Ein Zeiger, auf dem die Dateigrößendatei in der Ausgabe gespeichert wird.
Rückgabewert
Nichts
Bemerkungen
Die RxGetFileSizeWithLock Routine wird normalerweise nicht von Netzwerk-Miniumleitungstreibern direkt aufgerufen. RDBSS ruft diese Routine intern auf, wenn ein E/A-Anforderungspaket für IRP_MJ_QUERY_INFORMATION, IRP_MJ_SET_INFORMATION, IRP_MJ_READ oder IRP_MJ_WRITE empfangen wird. Diese IRPs werden normalerweise von RDBSS als Reaktion auf eine Benutzermodusanwendung empfangen, die Vorgänge für eine Datei anfordert. Es ist auch möglich, dass ein anderer Kerneltreiber ein solches IRP ausgibt.
Diese IRPs führen normalerweise zu einem der MRxQueryFileInfo, MRxQuerySdInfo, MRxLowIOReadoder MRxLowIOWrite Routinen, die vom Netzwerk-Miniumleitung bereitgestellt werden.
RxGetFileSizeWithLock eine Sperre für die FCB-Struktur erhält und dann die Dateigröße liest und dann die Sperre freigibt. Diese Sperre stellt sicher, dass die Dateigröße während dieses Vorgangs geschützt ist, da die Dateigröße eine 64-Bit-Menge ist, die mindestens zwei Anweisungen zum Lesen auf 32-Bit-Prozessoren erfordert.
Anforderungen
Anforderung | Wert |
---|---|
Zielplattform- | Desktop |
Header- | fcb.h (einschließlich Mrxfcb.h, Fcb.h) |
IRQL- | <= APC_LEVEL |