Partager via


CcGetDirtyPages, fonction (ntifs.h)

Les CcGetDirtyPages routine recherchent des pages sales dans tous les fichiers qui correspondent à un handle de journal donné.

Syntaxe

LARGE_INTEGER CcGetDirtyPages(
  [in] PVOID               LogHandle,
  [in] PDIRTY_PAGE_ROUTINE DirtyPageRoutine,
  [in] PVOID               Context1,
  [in] PVOID               Context2
);

Paramètres

[in] LogHandle

Handle de journal stocké par un appel précédent à CcSetLogHandleForFile.

[in] DirtyPageRoutine

Pointeur vers une routine de rappel qui génère une table de pages incorrecte à partir des pages trouvées. Cette routine, appelée pour chaque page sale trouvée, est déclarée comme suit :

typedef
VOID (*PDIRTY_PAGE_ROUTINE) (
            IN PFILE_OBJECT FileObject,
            IN PLARGE_INTEGER FileOffset,
            IN ULONG Length,
            IN PLARGE_INTEGER OldestLsn,
            IN PLARGE_INTEGER NewestLsn,
            IN PVOID Context1,
            IN PVOID Context2
            );

FileObject

Pointeur vers l’objet fichier du fichier contenant la page incorrecte.

FileOffset

Pointeur vers une variable qui spécifie le décalage d’octet de départ de la page sale dans le fichier mis en cache.

Longueur

Longueur, en octets, de la page sale.

OldestLsn

Numéro de séquence logique le plus ancien (LSN) trouvé dans la page sale.

NewestLsn

LSN le plus récent trouvé dans la page sale.

Context1

Premier paramètre de contexte.

Context2

Deuxième paramètre de contexte.

[in] Context1

Premier paramètre de contexte à passer au DirtyPageRoutine.

[in] Context2

Deuxième paramètre de contexte à passer au DirtyPageRoutine.

Valeur de retour

CcGetDirtyPages retourne le LSN le plus ancien trouvé dans l’ensemble de pages sales. S’il n’y a pas de pages sales, CcGetDirtyPages retourne zéro.

Remarques

Les systèmes de fichiers appellent CcGetDirtyPages pour retourner des pages sales dans tous les fichiers qui correspondent à un handle de journal donné. CcGetDirtyPages recherche des pages sales dans tous les fichiers qui correspondent au LogHandle donné et appelle le dirtyPageRoutine pour chaque page.

Pour définir un handle de journal pour un fichier, utilisez CcSetLogHandleForFile.

Exigences

Exigence Valeur
client minimum pris en charge Windows XP
plateforme cible Universel
d’en-tête ntifs.h (include Ntifs.h)
bibliothèque NtosKrnl.lib
DLL NtosKrnl.exe
IRQL <= DISPATCH_LEVEL

Voir aussi

CcSetDirtyPinnedData

CcSetLogHandleForFile