Freigeben über


FsRtlRemoveLargeMcbEntry-Funktion (ntifs.h)

Die FsRtlRemoveLargeMcbEntry Routine entfernt mindestens eine Zuordnung aus einem Kartensteuerelementblock (MCB).

Syntax

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

Parameter

Mcb

Zeiger auf die MCB-Struktur.

Vbn

Starten der virtuellen Blocknummer (VBN) des Bereichs, für den Zuordnungen aus dem MCB entfernt werden sollen.

SectorCount

Anzahl der Sektoren (VBNs) im Bereich, für den Zuordnungen entfernt werden sollen.

Rückgabewert

Nichts

Bemerkungen

FsRtlRemoveLargeMcbEntry alle Zuordnungen von VBNs zu LBNs im MCB entfernt, die innerhalb des Bereichs von VBNs liegen, der mit *LargeVbn beginnt und endet mit (*LargeVbn + LargeSectorCount - 1).

Hinweis Die oberen 32 Bits des LBN werden ignoriert. Nur die unteren 32 Bit werden verwendet.
 
Löcher (Lücken) zwischen Zuordnungen werden ignoriert.

Wenn der zu entfernende VBN-Bereich den höchsten zugeordneten VBN im MCB enthält, wird das PairCount Member des MCB entsprechend angepasst.

Wenn ein Poolzuordnungsfehler auftritt, löst FsRtlRemoveLargeMcbEntry eine STATUS_INSUFFICIENT_RESOURCES Ausnahme aus. Um die Kontrolle zu erlangen, wenn dieser Poolzuordnungsfehler auftritt, sollte der Treiber den Aufruf von FsRtlRemoveLargeMcbEntry in einem try-except oder try-finally Anweisung umschließen.

Anforderungen

Anforderung Wert
Zielplattform- Universal
Header- ntifs.h (einschließlich Ntifs.h)
Library NtosKrnl.lib
DLL- NtosKrnl.exe
IRQL- <= APC_LEVEL

Siehe auch

FsRtlAddLargeMcbEntry

FsRtlGetNextLargeMcbEntry

FsRtlInitializeLargeMcb

FsRtlLookupLargeMcbEntry

FsRtlLookupLastLargeMcbEntry

FsRtlLookupLastLargeMcbEntryAndIndex

FsRtlNumberOfRunsInLargeMcb

FsRtlSplitLargeMcb

FsRtlTruncateLargeMcb

FsRtlUninitializeLargeMcb