展開 最小化

FsRtlLookupLastLargeMcbEntryAndIndex routine

The FsRtlLookupLastLargeMcbEntryAndIndex routine retrieves the last mapping entry stored in a given map control block (MCB).

Syntax


BOOLEAN FsRtlLookupLastLargeMcbEntryAndIndex(
  _In_   PLARGE_MCB OpaqueMcb,
  _Out_  PLONGLONG LargeVbn,
  _Out_  PLONGLONG LargeLbn,
  _Out_  PULONG Index
);

Parameters

OpaqueMcb [in]

Pointer to an initialized MCB structure to be searched.

LargeVbn [out]

Pointer to a variable that receives the last virtual block number (VBN) that was mapped.

LargeLbn [out]

Pointer to a variable that receives the logical block number (LBN) that is mapped to the VBN pointed to by LargeVbn, or -1 if no such LBN exists.

Index [out]

Pointer to a variable that receives the index of the last run in the MCB.

Return value

FsRtlLookupLastLargeMcbEntryAndIndex returns FALSE if the MCB contains no mapping entries, TRUE otherwise.

Remarks

FsRtlLookupLastLargeMcbEntryAndIndex searches for the last mapping of the last run in the MCB:

  • If the MCB contains no mappings, FsRtlLookupLastLargeMcbEntryAndIndex returns FALSE.

  • If the last mapping is a hole, FsRtlLookupLastLargeMcbEntryAndIndex returns TRUE, but the lookup operation yields a value of -1 for the LBN.

  • If the last mapping is not a hole, the lookup operation yields a positive value for the LBN, and FsRtlLookupLastLargeMcbEntryAndIndex returns TRUE.

Note   The upper 32 bits of the LBN are ignored. Only the lower 32 bits are used.

Requirements

Version

This routine is available on Microsoft Windows XP and later.

Header

Ntifs.h (include Ntifs.h)

Library

Ntoskrnl.lib

IRQL

<= APC_LEVEL

See also

FsRtlAddLargeMcbEntry
FsRtlGetNextLargeMcbEntry
FsRtlInitializeLargeMcb
FsRtlLookupLargeMcbEntry
FsRtlLookupLastLargeMcbEntry
FsRtlNumberOfRunsInLargeMcb
FsRtlRemoveLargeMcbEntry
FsRtlSplitLargeMcb
FsRtlTruncateLargeMcb
FsRtlUninitializeLargeMcb

 

 

Send comments about this topic to Microsoft

表示:
© 2014 Microsoft