Função FsRtlGetNextLargeMcbEntry (ntifs.h)

A rotina FsRtlGetNextLargeMcbEntry recupera uma execução de mapeamento de um MCB (bloco de controle de mapa).

Sintaxe

BOOLEAN FsRtlGetNextLargeMcbEntry(
       PLARGE_MCB Mcb,
  [in] ULONG      RunIndex,
       PLONGLONG  Vbn,
       PLONGLONG  Lbn,
       PLONGLONG  SectorCount
);

Parâmetros

Mcb

Ponteiro para uma estrutura do MCB inicializada.

[in] RunIndex

Índice baseado em zero da execução de mapeamento solicitada.

Vbn

Ponteiro para uma variável que recebe o VBN (número de bloco virtual) inicial da execução de mapeamento ou zero se a execução não existir. Seu valor não tem sentido se FsRtlGetNextLargeMcbEntry retornar FALSE.

Lbn

Ponteiro para uma variável que recebe o LBN (número de bloco lógico) inicial da execução de mapeamento ou zero se a execução não existir. Seu valor não tem sentido se FsRtlGetNextLargeMcbEntry retornar FALSE.

SectorCount

Ponteiro para uma variável que recebe o número de setores na execução de mapeamento ou zero se a execução não existir. Seu valor não tem sentido se FsRtlGetNextLargeMcbEntry retornar FALSE.

Retornar valor

FsRtlGetNextLargeMcbEntry retornará TRUE se a execução de mapeamento solicitada existir no MCB, caso contrário, FALSE.

Comentários

FsRtlGetNextLargeMcbEntry recupera o VBN inicial, o LBN inicial e a contagem de setores para uma execução de mapeamento em um MCB.

Nota Os 32 bits superiores do LBN são ignorados. Somente os 32 bits inferiores são usados.
 
Os buracos são contados como execuções.

O snippet de código a seguir mostra como imprimir todas as execuções em um arquivo:

for (i = 0; FsRtlGetNextLargeMcbEntry(Mcb,i,&Vbn,&Lbn,&Count); i++) {

    // print out vbn, lbn, and count

}

Requisitos

Requisito Valor
Plataforma de Destino Universal
Cabeçalho ntifs.h (inclua Ntifs.h)
Biblioteca NtosKrnl.lib
DLL NtosKrnl.exe
IRQL <= APC_LEVEL

Confira também

FsRtlAddLargeMcbEntry

FsRtlInitializeLargeMcb

FsRtlLookupLargeMcbEntry

FsRtlLookupLastLargeMcbEntry

FsRtlLookupLastLargeMcbEntryAndIndex

FsRtlNumberOfRunsInLargeMcb

FsRtlRemoveLargeMcbEntry

FsRtlSplitLargeMcb

FsRtlTruncateLargeMcb

FsRtlUninitializeLargeMcb