Compartir a través de


Cómo modifica COM+ valores devueltos

COM+ nunca cambia el valor devuelto de un HRESULT que indica un error, como E_UNEXPECTED o E_FAIL. Sin embargo, cuando un objeto que usa la funcionalidad COM+ devuelve un valor HRESULT que indica que se ha realizado correctamente (por ejemplo, S_OK, S_FALSE o NOERROR), COM+ a veces convierte el HRESULT en un código de error COM+ antes de volver al autor de la llamada.

Por ejemplo, cuando una aplicación devuelve S_OK después de llamar a IObjectContext::SetComplete, si el objeto es la raíz de una transacción que no se puede confirmar, HRESULT se convierte en CONTEXT_E_ABORTED.

Cuando COM+ convierte un valor HRESULT , borra todos los parámetros de salida del método. Las referencias devueltas se liberan y los valores de los punteros de objeto devueltos se establecen en NULL.

Aislamiento de errores y directiva de conmutación por error

Buscar el origen de un error

Interpretación de códigos de error

Estrategias para controlar errores en COM+

Solución de problemas