Nota:
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
Cancela una operación de ejecución asincrónica.
Sintaxis
HRESULT Abort(
HCHAPTER hChapter,
DBASYNCHOP eOperation);
Argumentos
hChapter[in]
Identificador del capítulo para el que se anulará la operación. Si el objeto al que se llama no es un objeto de conjunto de filas o la operación no se aplica a un capítulo, el autor de la llamada debe establecer hChapter en DB_NULL_HCHAPTER.
eOperation[in]
Operación que se va a anular. Debe ser el siguiente valor:
DBASYNCHOP_OPEN-The solicitud de cancelación se aplica a la apertura asincrónica o al rellenado de un conjunto de filas o a la inicialización asincrónica de un objeto de origen de datos.
Valores de código de retorno
S_OK
Se procesó la solicitud para cancelar la operación asincrónica. Esto no garantiza que se canceló la propia operación. Para determinar si se canceló la operación, el consumidor debe llamar a ISSAsynchStatus::GetStatus y comprobar si hay DB_E_CANCELED; sin embargo, es posible que no se devuelva en la siguiente llamada.
DB_E_CANTCANCEL
No se puede cancelar la operación asincrónica.
DB_E_CANCELED
La solicitud para anular la operación asincrónica se canceló durante las notificaciones. La operación todavía se está ejecutando de forma asincrónica.
E_FAIL
Error específico del proveedor.
E_INVALIDARG
El parámetro hChapter no es DB_NULL_HCHAPTER o eOperation no es DBASYNCH_OPEN.
Error_Inesperado
Se llamó a ISSAsynchStatus::Abort en un objeto de origen de datos en el que no se ha llamado a IDBInitialize::Initialize o no se ha completado.
Se llamó a ISSAsynchStatus::Abort en un objeto de origen de datos en el que se llamó a IDBInitialize::Initialize, pero posteriormente se canceló antes de la inicialización, o ha agotado el tiempo de espera. El objeto de origen de datos sigue sin inicializarse.
Se llamó a ISSAsynchStatus::Abort en un conjunto de filas en el que se llamó anteriormente a ITransaction::Commit o ITransaction::Abort, y el conjunto de filas no sobrevivió a la confirmación o anulación y está en estado zombie.
Se llamó a ISSAsynchStatus::Abort en un conjunto de filas que se canceló de forma asincrónica en su fase de inicialización. El conjunto de filas está en estado zombie.
Observaciones
Anular la inicialización de un conjunto de filas o un objeto de origen de datos puede dejar el conjunto de filas o el objeto de origen de datos en un estado zombie, de modo que todos los métodos que no sean métodos IUnknown devuelvan E_UNEXPECTED. Cuando esto sucede, la única acción posible para el consumidor es liberar el conjunto de filas o el objeto de origen de datos.
Llamar a ISSAsynchStatus::Abort y pasar un valor para eOperation distinto de DBASYNCHOP_OPEN devuelve S_OK. Esto no implica que la operación se complete o se canceló.