IWiaErrorHandler ::ReportStatus, méthode (wia_lh.h)
La méthode ReportStatus affiche des informations sur une erreur ou un état pendant un transfert. Dans certains cas, cette méthode permet à l’utilisateur de récupérer à partir d’une erreur.
Syntaxe
HRESULT ReportStatus(
[in] LONG lFlags,
[in] HWND hwndParent,
[in] IWiaItem2 *pWiaItem2,
[in] HRESULT hrStatus,
[in] LONG lPercentComplete
);
Paramètres
[in] lFlags
Actuellement inutilisé. Doit être défini sur zéro.
[in] hwndParent
Handle fourni par l’appelant de la fenêtre qui doit être utilisé comme fenêtre parente pour toutes les boîtes de dialogue. Si cette valeur est définie sur NULL, aucune boîte de dialogue ne doit être affichée.
[in] pWiaItem2
Pointeur vers l’élémentIWiaItem2 transféré.
[in] hrStatus
Variable HRESULT qui contient le code d’état reçu par la méthode de transfert WIA, par exemple la méthode IWiaDataCallback ::BandedDataCallback.
[in] lPercentComplete
Taille des données, en octets, le pointeur pbData fait référence.
Valeur de retour
Retourne un code d’erreur COM standard si l’erreur ne peut pas être récupérée ou si l’utilisateur choisit d’abandonner le transfert en réponse à la boîte de dialogue affichée. Il existe des informations supplémentaires sur les valeurs de retour dans la section remarques. Sinon, cette méthode retourne l’une des valeurs suivantes :
Retourner le code | Description |
---|---|
S_OK | Une action appropriée a été effectuée pour corriger l’erreur et le transfert peut continuer. |
S_FALSE | Aucune action n’a été effectuée pour gérer l’erreur ou signaler l’état à l’utilisateur. |
Remarques
L’objet de rappel du proxy COM appelle la méthode WiaErrorHandler ::ReportStatus lorsque le pilote envoie un message IT_MSG_DEVICE_STATUS à la méthode IWiaDataCallback ::BandedDataCallback. La boîte de dialogue affichée par cette méthode fournit à l’utilisateur des informations d’erreur ou d’état et peut-être donner la possibilité de récupérer à partir de l’erreur et de poursuivre le transfert. L’interface utilisateur doit fournir uniquement une boîte de dialogue d’information et une chance d’annuler le transfert si HRESULT est SEVERITY_SUCCESS.
Un pilote qui implémente cette méthode doit afficher une boîte de dialogue modale, détenue par hwndParent, en réponse à une valeur de hrStatus pour laquelle FAILED(hrStatus) prend la valeur TRUE. Si FAILED(hrStatus) prend la valeur FALSE, la valeur dans hrStatus représente un délai non fatal, et la boîte de dialogue affichée doit être sans mode. La boîte de dialogue doit être supprimée lorsque l’état du transfert change. Un gestionnaire d’erreurs doit retourner S_FALSE pour les valeurs inconnues de hrStatus.
Le paramètre hrStatus est défini sur WIA_STATUS_TRANSFER_BEGIN pour informer le gestionnaire qu’un transfert a démarré. Il est défini sur WIA_STATUS_TRANSFER_END une fois le transfert terminé.
Si hrStatus est S_OK, le transfert de données a repris et aucune erreur n’est en vigueur.
Exigences
Exigence | Valeur |
---|---|
plateforme cible | Bureau |
d’en-tête | wia_lh.h (inclure Wia_lh.h) |