Partager via


Fonction de rappel PFNCryptStreamOutputCallback (ncryptprotect.h)

La fonction PFNCryptStreamOutputCallback reçoit des données chiffrées ou déchiffrées à partir de tâches démarrées à l’aide des fonctions NCryptStreamOpenToProtect ou NCryptStreamOpenToUnprotect . Ce rappel doit être défini par votre application à l’aide de la syntaxe suivante.

Syntaxe

PFNCryptStreamOutputCallback Pfncryptstreamoutputcallback;

SECURITY_STATUS Pfncryptstreamoutputcallback(
  [in] void *pvCallbackCtxt,
  [in] const BYTE *pbData,
       SIZE_T cbData,
       BOOL fFinal
)
{...}

Paramètres

[in] pvCallbackCtxt

Pointeur vers les données que vous pouvez utiliser pour effectuer le suivi de votre application. Les données ne sont pas modifiées par l’API de protection des données.

Note Vous pouvez définir un pointeur vers vos données de contexte dans le membre pvCallbackCtxt de la structure NCRYPT_PROTECT_STREAM_INFO avant de passer un pointeur vers cette structure dans le paramètre pStreamInfo des fonctions NCryptStreamOpenToProtect ou NCryptStreamOpenToUnprotect .
 

[in] pbData

Pointeur vers un bloc de données traitées qui peuvent être utilisées par l’application.

cbData

Taille, en octets, des données traitées pointées vers le paramètre pbData .

fFinal

Si cette valeur est TRUE, le bloc de données actuel est le dernier à traiter et c’est la dernière fois que le rappel est appelé.

Valeur retournée

Si vous retournez un code status autre que ERROR_SUCCESS à partir de votre implémentation de cette fonction de rappel, le processus de chiffrement ou de déchiffrement du flux échoue.

Code de retour Description
ERROR_SUCCESS
La fonction a réussi.

Remarques

Définissez un pointeur vers cette fonction de rappel dans le membre pfnStreamOutput de la structure NCRYPT_PROTECT_STREAM_INFO . Définissez un pointeur vers la structure dans le paramètre pStreamInfo des fonctions NCryptStreamOpenToProtect ou NCryptStreamOpenToUnprotect .

Vous pouvez utiliser ce rappel pour traiter davantage les données chiffrées ou déchiffrées. Une utilisation courante de la fonction consiste à écrire les données sur le disque telles qu’elles sont reçues de l’API de protection des données. Les blocs de données chiffrées ou non chiffrées sont créés par la fonction NCryptStreamUpdate .

Configuration requise

Condition requise Valeur
Client minimal pris en charge Windows 8 [applications de bureau uniquement]
Serveur minimal pris en charge Windows Server 2012 [applications de bureau uniquement]
Plateforme cible Windows
En-tête ncryptprotect.h

Voir aussi

Fonctions DPAPI CNG

NCRYPT_PROTECT_STREAM_INFO

NCryptStreamOpenToProtect

NCryptStreamOpenToUnprotect

NCryptStreamUpdate