Partager via


Méthode IWiaTransferCallback ::TransferCallback (wia_lh.h)

La méthode IWiaTransferCallback ::TransferCallback est implémentée par un filtre de traitement d’images. Il est appelé par le service WIA à la suite d’une application appelant IWiaTransfer ::D ownload ou le IWiaPreview ::GetNewPreview du composant en préversion.

Syntaxe

HRESULT TransferCallback(
  [in] LONG              lFlags,
  [in] WiaTransferParams *pWiaTransferParams
);

Paramètres

[in] lFlags

Actuellement inutilisé. Doit être défini sur zéro (0).

[in] pWiaTransferParams

Spécifie un pointeur vers une structure WiaTransferParams .

Valeur retournée

Retourne S_OK en cas de réussite, ou une valeur d’erreur COM standard dans le cas contraire.

Remarques

L’implémentation par un filtre de traitement d’images de la méthode IWiaTransferCallback ::TransferCallback est appelée lors de l’acquisition d’image, lorsque le mini-pilote WIA demande le flux de destination du client et lorsque le mini-pilote envoie des messages de progression à l’application.

La méthode IWiaTransferCallback ::TransferCallback d’un filtre de traitement d’images doit déléguer à la méthode IWiaTransferCallback ::TransferCallback du rappel de l’application. Dans de nombreux cas, l’implémentation IWiaTransferCallback ::TransferCallback du filtre de traitement d’images devra également modifier les valeurs ulBytesWrittenToCurrentStream et éventuellement aussi les valeurs lPercentComplete dans la structure WiaTransferParams. ulBytesWrittenToCurrentStream doit être modifié si le filtre de traitement d’image doit mettre en mémoire tampon les données d’image entre les appels à sa méthode Write avant d’écrire les données dans le flux fourni par l’application. Cela serait, par exemple, nécessaire en cas de dékewing et/ou de rotation si est en cours d’exécution. Si aucune rotation ou rotation n’est nécessaire, le filtre doit de préférence fonctionner sur des bandes de données. toutefois, lPercentComplete n’a pas nécessairement besoin d’être modifié, car ce paramètre indique le pourcentage du temps total de transfert. Ce membre peut par exemple être utilisé par une barre de progression dans une application. Notez que le filtre de traitement d’image ne doit pas modifier le membre lMessage de la structure. IWiaTransferCallback ::TransferCallback ne doit pas non plus « avaler » les messages qu’il reçoit, même s’il effectue une mise en mémoire tampon, il doit plutôt modifier le membre ulBytesWrittenToCurrentStream .

Cette méthode n’est pas appelée par le composant en préversion pendant IWiaPreview ::UpdatePreview.

Configuration requise

Condition requise Valeur
Plateforme cible Desktop (Expérience utilisateur)
En-tête wia_lh.h (include Wia_lh.h)