次の方法で共有


FsRtlSplitLargeMcb 関数 (ntifs.h)

FsRtlSplitLargeMcb ルーチンは、マップ制御ブロック (MCB) のマッピングに穴を挿入します。

構文

BOOLEAN FsRtlSplitLargeMcb(
  [in] PLARGE_MCB Mcb,
  [in] LONGLONG   Vbn,
  [in] LONGLONG   Amount
);

パラメーター

[in] Mcb

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

[in] Vbn

マッピングの範囲の開始仮想ブロック番号 (VBN) を だけ上にシフトして、穴のスペースを作ります。

[in] Amount

作成する穴のセクター数 (VBN)。

戻り値

FsRtlSplitLargeMcb 、穴が正常に作成された場合は TRUE を返 。それ以外の場合は FALSE

備考

穴は、2 つのマッピング間のギャップを形成するマップされていない VBN の範囲です。

プールの割り当てエラーが発生した場合、FsRtlSplitLargeMcb STATUS_INSUFFICIENT_RESOURCES例外が発生します。 このプール割り当てエラーが発生したかどうかを制御するには、ドライバーは、FsRtlSplitLargeMcb への呼び出しを try-except または try-finally ステートメント ラップする必要があります。

必要条件

要件 価値
ターゲット プラットフォーム の 万国
ヘッダー ntifs.h (Ntifs.h を含む)
ライブラリ NtosKrnl.lib
DLL NtosKrnl.exe
IRQL <= APC_LEVEL

関連項目

FsRtlAddLargeMcbEntry

FsRtlGetNextLargeMcbEntry

FsRtlInitializeLargeMcb

FsRtlLookupLargeMcbEntry

FsRtlLookupLastLargeMcbEntry

FsRtlLookupLastLargeMcbEntryAndIndex

FsRtlNumberOfRunsInLargeMcb

FsRtlRemoveLargeMcbEntry

FsRtlTruncateLargeMcb

FsRtlUninitializeLargeMcb