次の方法で共有


MRxExtendForNonCache ルーチン

ファイルがキャッシュ マネージャーによってキャッシュされていないときに、ネットワーク ミニリダイレクターがファイルを拡張するように要求するために、MRxExtendForNonCache ルーチンは RDBSS によって呼び出されます。

構文

PMRX_EXTENDFILE_CALLDOWN MRxExtendForNonCache;

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

パラメーター

RxContext [in, out]
RX_CONTEXT 構造体へのポインター。 このパラメータには、操作を要求している IRP が含まれます。

pNewFileSize [in, out]
新しいファイル サイズのバイト数を示す LARGE_INTEGER 値へのポインター。

pNewAllocationSize [out]
MRxExtendForCache が返されるときに新しい割り当てサイズを格納するための LARGE_INTEGER へのポインタ。

戻り値

MRxExtendForNonCache は、成功した場合は STATUS_SUCCESS を返し、失敗した場合はエラー コードを返します。

解説

MRxExtendForNonCache は、キャッシュされていない I/O 用にファイルを拡張するためのネットワーク要求を処理します。

MRxExtendForNonCache を呼び出す前に、RDBSS は、RxContext パラメータによりポイントされる RX_CONTEXT 構造体の以下のメンバーを変更します。

LowIoContext.Operation は LOWIO_OP_WRITE に設定されます

LowIoContext.ParamsFor.ReadWrite.Flags は LOWIO_READWRITEFLAG_EXTENDING_FILESIZE ビットが設定されています。

ファイルまたはディレクトリ情報をキャッシュするネットワーク ミニリダイレクターは、ファイルが拡張されたときにそのキャッシュ情報を無効にする必要がある場合があります。

要件

対象プラットフォーム

デスクトップ

ヘッダー

Mrx.h (Mrx.h を含む)

関連項目

MRxAreFilesAliased

MRxCleanupFobx

MRxCloseSrvOpen

MRxCollapseOpen

MRxCreate

MRxDeallocateForFcb

MRxDeallocateForFobx

MRxExtendForCache

MRxFlush

MRxForceClosed

MRxIsLockRealizable

MRxShouldTryToCollapseThisOpen

MRxTruncate

MRxZeroExtend