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、MRxQuerySdInfo、 MRxLowIORead、または MRxLowIOWrite ルーチンのいずれかを呼び出します。
RxGetFileSizeWithLock は、FCB 構造体のロックを取得し、ファイル サイズを読み取って、ロックを解放します。 このロックにより、ファイル サイズは 32 ビット プロセッサで読み取るために少なくとも 2 つの命令を必要とする 64 ビットの量であるため、この操作中にファイル サイズが保護されます。
要件
要件 | 値 |
---|---|
対象プラットフォーム | デスクトップ |
Header | fcb.h (Mrxfcb.h、Fcb.h を含む) |
IRQL | <= APC_LEVEL |