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 ビットの量であるため、この操作中にファイル サイズが確実に保護されます。
必要条件
要件 | 価値 |
---|---|
ターゲット プラットフォーム の | デスクトップ |
ヘッダー | fcb.h (Mrxfcb.h、Fcb.h を含む) |
IRQL | <= APC_LEVEL |
関連項目
MRxQueryFileInfo の
MRxQuerySdInfo の
FCB 構造体 を する