Condividi tramite


Funzione FsRtlRemoveLargeMcbEntry (ntifs.h)

La routine FsRtlRemoveLargeMcbEntry rimuove uno o più mapping da un blocco di controllo mappa (MCB).

Sintassi

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

Parametri

Mcb

Puntatore alla struttura MCB.

Vbn

Avvio del numero di blocco virtuale (VBN) dell'intervallo per il quale i mapping devono essere rimossi dal McB.

SectorCount

Numero di settori (VBN) nell'intervallo per cui rimuovere i mapping.

Valore restituito

Nessuno

Osservazioni

FsRtlRemoveLargeMcbEntry rimuove tutti i mapping di VBN a LBN nell'mcb che rientrano nell'intervallo di VBN che inizia con *LargeVbn e termina con (*LargeVbn + LargeSectorCount - 1).

Nota I 32 bit superiori del codice LBN vengono ignorati. Vengono usati solo i 32 bit inferiori.
 
I fori (spazi vuoti) tra i mapping vengono ignorati.

Se l'intervallo di RETI VBN da rimuovere include la VBN mappata più alta nel MCB, il membro PairCount del McB viene regolato di conseguenza.

Se si verifica un errore di allocazione del pool, FsRtlRemoveLargeMcbEntry genera un'eccezione STATUS_INSUFFICIENT_RESOURCES. Per controllare se si verifica questo errore di allocazione del pool, il driver deve eseguire il wrapping della chiamata a FsRtlRemoveLargeMcbEntry in un try-except o istruzione try-finally.

Fabbisogno

Requisito Valore
piattaforma di destinazione Universale
intestazione ntifs.h (include Ntifs.h)
libreria NtosKrnl.lib
dll NtosKrnl.exe
IRQL <= APC_LEVEL

Vedere anche

FsRtlAddLargeMcbEntry

FsRtlGetNextLargeMcbEntry

FsRtlInitializeLargeMcb

FsRtlLookupLargeMcbEntry

FsRtlLookupLastLargeMcbEntry

FsRtlLookupLastLargeMcbEntryAndIndex

FsRtlNumberOfRunsInLargeMcb

FsRtlSplitLargeMcb

FsRtlTruncateLargeMcb

FsRtlUninitializeLargeMcb