Partager via


PCLFS_CLIENT_ADVANCE_TAIL_CALLBACK fonction de rappel (wdm.h)

La fonction ClfsAdvanceTailCallback avance le numéro de séquence du journal de base (LSN) du journal du client.

Syntaxe

PCLFS_CLIENT_ADVANCE_TAIL_CALLBACK PclfsClientAdvanceTailCallback;

NTSTATUS PclfsClientAdvanceTailCallback(
  [in] PLOG_FILE_OBJECT LogFile,
  [in] PCLFS_LSN TargetLsn,
  [in] PVOID ClientData
)
{...}

Paramètres

[in] LogFile

Pointeur vers une structure LOG_FILE_OBJECT qui représente le flux de journal CLFS dont la fin doit être avancée.

[in] TargetLsn

Pointeur vers une structure de CLFS_LSN qui contient le LSN vers lequel le client doit avancer sa queue ou au-delà.

[in] ClientData

Pointeur vers les informations fournies par le client. Vous spécifiez ces données dans le membre AdvanceTailCallbackData de la structure CLFS_MGMT_CLIENT_REGISTRATION .

Valeur retournée

La fonction ClfsAdvanceTailCallback doit retourner STATUS_PENDING ou un status d’erreur. Une valeur de retour de STATUS_PENDING indique que la demande de déplacement de la queue du journal du client sera effectuée de manière asynchrone. La fonction ClfsMgmtAdvanceTailCallback ne doit pas retourner STATUS_SUCCESS, même si elle se termine de manière synchrone.

Remarques

La fonction ClfsAdvanceTailCallback est appelée lorsque la gestion CLFS demande au client d’avancer sa queue de journal.

La fonction ClfsAdvanceTailCallback ne doit effectuer qu’une quantité minimale de traitement avant de retourner. Par exemple, la fonction ClfsAdvanceTailCallback peut suivre cette procédure :

  1. Si la demande ne peut pas être traitée, retournez une erreur status.
  2. Si la demande peut être traitée, créez et mettez en file d’attente un élément de travail pour effectuer les actions requises pour déplacer la queue du client, puis retourner STATUS_PENDING. Pour plus d’informations sur la mise en file d’attente d’un thread de travail, consultez Threads de travail système.
Lorsqu’un client appelle la routine ClfsMgmtRegisterManagedClient pour s’inscrire auprès de la gestion CLFS, le client fournit à la fois un pointeur vers la fonction ClfsAdvanceTailCallback et les données personnalisées qui seront transmises en tant que paramètre à la fonction ClfsAdvanceTailCallback lorsque cette fonction est appelée.

Configuration requise

Condition requise Valeur
Client minimal pris en charge Pris en charge dans Windows Server 2003 R2, Windows Vista et les versions ultérieures de Windows.
Plateforme cible Desktop (Expérience utilisateur)
En-tête wdm.h (inclure Wdm.h, Ntddk.h, Ntifs.h)
IRQL Appelé à IRQL <= APC_LEVEL

Voir aussi

CLFS_MGMT_CLIENT_REGISTRATION

ClfsAdvanceLogBase

ClfsMgmtRegisterManagedClient

ClfsMgmtTailAdvanceFailure