Fonction FsRtlLogCcFlushError (ntifs.h)

La routine FsRtlLogCcFlushError enregistre une erreur d’écriture différée perdue et affiche une boîte de dialogue à l’utilisateur.

Syntaxe

NTSTATUS FsRtlLogCcFlushError(
  [in] PUNICODE_STRING          FileName,
  [in] PDEVICE_OBJECT           DeviceObject,
  [in] PSECTION_OBJECT_POINTERS SectionObjectPointer,
  [in] NTSTATUS                 FlushError,
  [in] ULONG                    Flags
);

Paramètres

[in] FileName

Nom du fichier qui n’a pas pu être vidé.

[in] DeviceObject

Pointeur vers l’objet d’appareil sur lequel cette entrée de journal doit être déposée.

[in] SectionObjectPointer

Pointeur vers l’objet de section pour le fichier sur lequel le vidage a échoué.

[in] FlushError

Erreur retournée par l’appel à CcFlushCache.

[in] Flags

Valeur 0 ou combinaison au niveau du bit d’un ou de plusieurs des indicateurs suivants :

Indicateur Signification
FSRTL_CC_FLUSH_ERROR_FLAG_NO_HARD_ERROR Supprime la présentation d’une boîte de dialogue d’information à l’utilisateur.
FSRTL_CC_FLUSH_ERROR_FLAG_NO_LOG_ENTRY Supprime la génération d’une entrée de journal des erreurs système.

Valeur retournée

La routine FsRtlLogCcFlushError retourne STATUS_SUCCESS sur la réussite ou une autre valeur NTSTATUS, telle que STATUS_INSUFFICIENT_RESOURCES.

Remarques

Sauf si l’appel inclut des indicateurs appropriés, la routine FsRtlLogCcFlushError utilise IoRaiseInformationalHardError pour afficher une boîte de dialogue à l’utilisateur, y compris l’erreur et FileName spécifiques, et utilise IoWriteErrorLogEntry journalise l’erreur.

Si l’intégralité de FileName ne peut pas tenir dans la mémoire tampon du journal, la routine insère des points de suspension dans le nom de fichier.

Si le cache contient toujours des pages qui ont été modifiées, l’erreur n’est pas irrécupérable. La routine retourne à l’appelant sans journaliser une erreur ni afficher la boîte de dialogue.

Si l’erreur est irrécupérable, la routine incrémente le compteur d’écriture différée perdu dans le bloc de contrôle du processeur (PRCB). Ce compteur peut être utilisé pour résoudre les erreurs d’écriture différée perdues.

Configuration requise

Condition requise Valeur
Client minimal pris en charge Windows Vista
Plateforme cible Universal
En-tête ntifs.h (include FltKernel.h, Ntifs.h)
Bibliothèque NtosKrnl.lib
DLL NtosKrnl.exe
IRQL <= APC_LEVEL

Voir aussi

CcFlushCache

IoRaiseInformationalHardError

IoWriteErrorLogEntry