ITransactionContextEx::Commit 方法 (comsvcs.h)

尝试提交参与当前事务的所有 COM 对象的工作。 事务在此方法返回时结束。

语法

HRESULT Commit();

返回值

此方法可以返回标准返回值E_INVALIDARG、E_OUTOFMEMORY和E_UNEXPECTED,以及以下值。

返回代码 说明
S_OK
事务已提交。
E_FAIL
TransactionContextEx 对象未在 COM+ 进程下运行,这可能指示 TransactionContextEx 组件的注册表项已损坏。
CONTEXT_E_ABORTED
该事务已中止。

注解

调用 Commit 会尝试提交事务。 但是,事务在以下情况下会中止:

  • 如果参与对象在调用 SetAbort 后从方法返回。
  • 如果对象调用 DisableCommit 并在不调用 EnableCommitSetComplete 的情况下返回。
  • 如果错误导致 Microsoft 分布式事务处理协调器 (DTC) 中止。
当 方法返回时,无论事务是提交还是中止,事务都结束。

示例

请参阅 ITransactionContextEx::Abort 中的示例。

要求

要求
最低受支持的客户端 Windows 2000 Professional [仅限桌面应用]
最低受支持的服务器 Windows 2000 Server [仅限桌面应用]
目标平台 Windows
标头 comsvcs.h

另请参阅

ITransactionContextEx