Поделиться через


Функция FsRtlRemoveLargeMcbEntry (ntifs.h)

Подпрограмма FsRtlRemoveLargeMcbEntry удаляет одно или несколько сопоставлений из блока управления картой (MCB).

Синтаксис

void FsRtlRemoveLargeMcbEntry(
  PLARGE_MCB Mcb,
  LONGLONG   Vbn,
  LONGLONG   SectorCount
);

Параметры

Mcb

Указатель на структуру MCB.

Vbn

Запуск номера виртуального блока (VBN) диапазона, для которого необходимо удалить сопоставления из MCB.

SectorCount

Количество секторов (виртуальных сетей) в диапазоне, для которого необходимо удалить сопоставления.

Возвращаемое значение

Никакой

Замечания

FsRtlRemoveLargeMcbEntry удаляет все сопоставления виртуальных СЕТЕЙ с LBN в MCB, которые начинаются с *LargeVbn и заканчивается (*LargeVbn + LargeSectorCount - 1).

Примечание Верхние 32 бита LBN игнорируются. Используются только более низкие 32 бита.
 
Пробелы (пробелы) между сопоставлениями игнорируются.

Если диапазон виртуальных сетей, которые необходимо удалить, включает самый высокий сопоставленный VBN в MCB, элемент PairCount MCB корректируется соответствующим образом.

Если возникает сбой выделения пула, FsRtlRemoveLargeMcbEntry вызывает исключение STATUS_INSUFFICIENT_RESOURCES. Чтобы получить контроль, если происходит сбой выделения пула, драйвер должен упаковать вызов FsRtlRemoveLargeMcbEntry в попробовать, кроме или инструкции try-finally.

Требования

Требование Ценность
целевая платформа Всеобщий
заголовка ntifs.h (include Ntifs.h)
библиотеки NtosKrnl.lib
DLL NtosKrnl.exe
IRQL <= APC_LEVEL

См. также

FsRtlAddLargeMcbEntry

FsRtlGetNextLargeMcbEntry

FsRtlInitializeLargeMcb

FsRtlLookupLargeMcbEntry

FsRtlLookupLastLargeMcbEntry

FsRtlLookupLastLargeMcbEntryAndIndex

FsRtlNumberOfRunsInLargeMcb

FsRtlSplitLargeMcb

FsRtlTruncateLargeMcb

FsRtlUninitializeLargeMcb