Freigeben über


MRxExtendForNonCache-Routine

Die MRxExtendForNonCache-Routine wird von RDBSS aufgerufen, um anzufordern, dass ein Netzwerk-Mini-Redirector eine Datei erweitert, wenn die Datei nicht vom Cache-Manager zwischengespeichert wird.

Syntax

PMRX_EXTENDFILE_CALLDOWN MRxExtendForNonCache;

ULONG MRxExtendForNonCache(
  _Inout_ PRX_CONTEXT    RxContext,
  _Inout_ PLARGE_INTEGER pNewFileSize,
  _Out_   PLARGE_INTEGER pNewAllocationSize
)
{ ... }

Parameter

RxContext [in, out]
Ein Zeiger auf die RX_CONTEXT-Struktur. Dieser Parameter enthält das IRP, das den Vorgang anfordert.

pNewFileSize [in, out]
Ein Zeiger auf den LARGE_INTEGER Wert, der die Byteanzahl der neuen Dateigröße angibt.

pNewAllocationSize [out]
Ein Zeiger auf die LARGE_INTEGER zum Speichern der neuen Zuordnungsgröße, wenn MRxExtendForCache zurückgegeben wird.

Rückgabewert

MRxExtendForNonCache gibt bei Erfolg STATUS_SUCCESS oder einen Fehlercode bei Einem Fehler zurück.

Hinweise

MRxExtendForNonCache verarbeitet Netzwerkanforderungen, um die Datei für nicht zwischengespeicherte E/A-Vorgänge zu erweitern.

Vor dem Aufrufen von MRxExtendForNonCache ändert RDBSS die folgenden Member in der RX_CONTEXT-Struktur, auf die der RxContext-Parameter verweist:

LowIoContext.Operation ist auf LOWIO_OP_WRITE festgelegt.

LowIoContext.ParamsFor.ReadWrite.Flags hat das LOWIO_READWRITEFLAG_EXTENDING_FILESIZE Bit festgelegt.

Ein Netzwerk-Mini-Redirector, der Datei- oder Verzeichnisinformationen zwischenspeichert, muss möglicherweise seine Cacheinformationen ungültig machen, wenn die Datei erweitert wird.

Anforderungen

Zielplattform

Desktop

Header

Mrx.h (einschließlich Mrx.h)

Weitere Informationen

MRxAreFilesAliased

MRxCleanupFobx

MRxCloseSrvOpen

MRxCollapseOpen

MRxErstellen

MRxDeallocateForFcb

MRxDeallocateForFobx

MRxExtendForCache

MRxFlush

MRxForceClosed

MRxIsLockRealizable

MRxShouldTryToCollapseThisOpen

MRxTruncate

MRxZeroExtend