Partager via


IWiaTransferCallback ::TransferCallback, méthode (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 de préversion du composant IWiaPreview ::GetNewPreview.

Syntaxe

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

Paramètres

[in] lFlags

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

[in] pWiaTransferParams

Spécifie un pointeur vers une structure WiaTransferParams.

Valeur de retour

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

Remarques

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

La méthode IWiaTransferCallback ::TransferCallback du filtre de traitement d’images doit déléguer à la méthode IWiaTransferCallback ::TransferCallback du rappel d’application. Dans de nombreux cas, l’implémentation du filtre de traitement d’images IWiaTransferCallback ::TransferCallback doit également modifier la ulBytesWrittenToCurrentStream et éventuellement également les valeurs lPercentComplete dans la structure WiaTransferParams. ulBytesWrittenToCurrentStream doit être modifié si le filtre de traitement d’images 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 elle est effectuée. Si aucune rotation ou dékewing n’est nécessaire, le filtre doit de préférence fonctionner sur des bandes de données. lPercentComplete n’a pas nécessairement besoin d’être modifiée, toutefois, car ce paramètre indique le pourcentage de temps de transfert total. Ce membre peut par exemple être utilisé par une barre de progression dans une application. Notez que le filtre de traitement d’images 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, au lieu de modifier le membre ulBytesWrittenToCurrentStream.

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

Exigences

Exigence Valeur
plateforme cible Bureau
d’en-tête wia_lh.h (inclure Wia_lh.h)