Partager via


ISSAsynchStatus ::Abort (OLE DB)

Annule une opération en cours d’exécution asynchrone.

Syntaxe

  
HRESULT Abort(  
  HCHAPTER hChapter,  
  DBASYNCHOP eOperation);  

Les arguments

hChapter[in]
Handle du chapitre pour lequel abandonner l’opération. Si l’objet appelé n’est pas un objet d’ensemble de lignes ou si l’opération ne s’applique pas à un chapitre, l’appelant doit définir hChapter sur DB_NULL_HCHAPTER.

eOperation[in]
Opération d’abandon. Il doit s’agir de la valeur suivante :

DBASYNCHOP_OPEN-The demande d’annulation s’applique à l’ouverture ou à la population asynchrone d’un ensemble de lignes ou à l’initialisation asynchrone d’un objet source de données.

Codet de retour

S_OK
Demande d’annulation de l’opération asynchrone traitée. Cela ne garantit pas que l’opération elle-même a été annulée. Pour déterminer si l’opération a été annulée, le consommateur doit appeler ISSAsynchStatus ::GetStatus et rechercher DB_E_CANCELED ; toutefois, il se peut qu’il ne soit pas retourné lors de l’appel suivant.

DB_E_CANTCANCEL
L’opération asynchrone ne peut pas être annulée.

DB_E_CANCELED
La demande d’abandon de l’opération asynchrone a été annulée pendant les notifications. L’opération est toujours exécutée de façon asynchrone.

E_FAIL
Une erreur spécifique au fournisseur s’est produite.

E_INVALIDARG
Le paramètre hChapter n’est pas DB_NULL_HCHAPTER ou eOperation n’est pas DBASYNCH_OPEN.

ERREUR_IMPRÉVUE
ISSAsynchStatus ::Abort a été appelé sur un objet de source de données sur lequel IDBInitialize ::Initialize n’a pas été appelé ou n’a pas été terminé.

ISSAsynchStatus ::Abort a été appelé sur un objet de source de données sur lequel IDBInitialize ::Initialize a été appelé, mais a ensuite été annulé avant l’initialisation, ou a expiré. L’objet source de données n’est toujours pas initialisé.

ISSAsynchStatus ::Abort a été appelé sur un ensemble de lignes sur lequel ITransaction ::Commit ou ITransaction ::Abort a été appelé précédemment, et l’ensemble de lignes n’a pas survécu à la validation ou à l’abandon et est dans un état zombie.

ISSAsynchStatus ::Abort a été appelé sur un ensemble de lignes qui a été annulé de façon asynchrone dans sa phase d’initialisation. L’ensemble de lignes est dans un état zombie.

Remarques

L’abandon de l’initialisation d’un ensemble de lignes ou d’un objet source de données peut laisser l’ensemble de lignes ou l’objet source de données dans un état zombie, de sorte que toutes les méthodes autres que les méthodes IUnknown retournent E_UNEXPECTED. Dans ce cas, la seule action possible pour le consommateur consiste à libérer l’ensemble de lignes ou l’objet source de données.

L’appel de ISSAsynchStatus ::Abort et la transmission d’une valeur pour eOperation autre que DBASYNCHOP_OPEN retourne S_OK. Cela n’implique pas que l’opération a été terminée ou annulée.

Voir aussi

Exécution d’opérations asynchrones