DUMP_WRITE fonction de rappel (ntdddump.h)
La routine de rappel Dump_Write est appelée avant l’écriture dans le pilote de port de vidage. Le pilote de filtre peut accéder aux données de vidage pour l’instant.
Syntaxe
DUMP_WRITE DumpWrite;
NTSTATUS DumpWrite(
[in] PFILTER_EXTENSION FilterExtension,
[in, out] PLARGE_INTEGER DiskByteOffset,
[in, out] PMDL Mdl
)
{...}
Paramètres
[in] FilterExtension
Pointeur vers une structure FILTER_EXTENSION.
[in, out] DiskByteOffset
Valeur, en octets, par rapport à la partition de destination pour le vidage sur incident ou la mise en veille prolongée. Les pilotes de filtre ne doivent pas modifier ce champ.
[in, out] Mdl
Pointeur vers une structure MDL qui décrit la mémoire tampon de données. Si le MDL est modifié, la taille de l’opération d’écriture ne peut pas changer.
Valeur de retour
Si la routine réussit, elle doit retourner STATUS_SUCCESS. Sinon, il doit retourner l’une des valeurs d’état d’erreur définies dans Ntstatus.h.
Remarques
Les pilotes de filtre peuvent lire les données qui doivent être écrites. Toutefois, les pilotes de filtre ne peuvent pas écrire dans la mémoire tampon, car cela peut modifier le contenu du code ou des données utilisées par le processus de vidage sur incident. En outre, les pilotes de filtre ne sont pas autorisés à modifier la taille des données.
Pour modifier en toute sécurité les données de l’écriture de vidage, un pilote de filtre doit allouer une mémoire tampon secondaire. La taille de la mémoire tampon est la valeur du membre MaxPagesPerWrite de FILTER_INITIALIZATION_DATA multiplié par PAGE_SIZE. Les données de la mémoire tampon actuelle décrites par mdl sont copiées dans la mémoire tampon secondaire et traitées. Une fois que le filtre a terminé de gérer les données de vidage dans la mémoire tampon secondaire, la MDL pointée par Mdl est mise à jour avec l’adresse de la mémoire tampon secondaire. L’adresse de départ du jeu de mémoires tampons secondaires dans le MDL doit être alignée sur les pages.
Exigences
Exigence | Valeur |
---|---|
client minimum pris en charge | Disponible à partir de Windows Vista et de Windows Server 2008. |
plateforme cible | Bureau |
d’en-tête | ntdddump.h (include Ntdddump.h) |