次の方法で共有


RxGetFileSizeWithLock 関数 (fcb.h)

RxGetFileSizeWithLock は、64 ビット値が一貫して読み取られるように、ロックを使用して FCB 構造体のファイル サイズを取得します。

構文

void RxGetFileSizeWithLock(
  [in]  IN PFCB       Fcb,
  [out] OUT PLONGLONG FileSize
);

パラメーター

[in] Fcb

FCB 構造体へのポインター。

[out] FileSize

ファイル サイズ ファイルが出力に格納されるポインター。

戻り値

なし

解説

RxGetFileSizeWithLock ルーチンは、通常、ネットワーク ミニ リダイレクター ドライバーによって直接呼び出されません。 RDBSS は、IRP_MJ_QUERY_INFORMATION、IRP_MJ_SET_INFORMATION、IRP_MJ_READ、またはIRP_MJ_WRITEに対して I/O 要求パケットを受信したときに、このルーチンを内部的に呼び出します。 通常、これらの IRP は、ファイルに対する操作を要求するユーザー モード アプリケーションに応答して RDBSS によって受信されます。 また、別のカーネル ドライバーがこのような IRP を発行することもできます。

通常、これらの IRP は、ネットワーク ミニ リダイレクターによって提供される MRxQueryFileInfo、MRxQuerySdInfoMRxLowIORead、または MRxLowIOWrite ルーチンのいずれかを呼び出します。

RxGetFileSizeWithLock は、FCB 構造体のロックを取得し、ファイル サイズを読み取って、ロックを解放します。 このロックにより、ファイル サイズは 32 ビット プロセッサで読み取るために少なくとも 2 つの命令を必要とする 64 ビットの量であるため、この操作中にファイル サイズが保護されます。

要件

要件
対象プラットフォーム デスクトップ
Header fcb.h (Mrxfcb.h、Fcb.h を含む)
IRQL <= APC_LEVEL

こちらもご覧ください

MRxQueryFileInfo

MRxQuerySdInfo

FCB 構造体