Поделиться через


Метод ObjectContext::EnableCommit (comsvcs.h)

Объявляет, что работа текущего объекта не обязательно завершена, но что его транзакционные обновления являются согласованными и могут быть зафиксированы в их текущей форме.

Синтаксис

HRESULT EnableCommit();

Возвращаемое значение

Этот метод может возвращать стандартные возвращаемые значения E_INVALIDARG, E_OUTOFMEMORY и E_FAIL, а также следующие значения.

Код возврата Описание
S_OK
Метод успешно завершен, и транзакционные обновления объекта теперь можно зафиксировать.
E_UNEXPECTED
Произошла непредвиденная ошибка. Это может произойти, если один объект передает указатель ObjectContext другому объекту, а другой объект вызывает EnableCommit с помощью этого указателя. Указатель ObjectContext недопустим вне контекста объекта, который его первоначально получил.

Комментарии

Когда объект вызывает EnableCommit, он разрешает фиксацию транзакции, в которой он участвует, но сохраняет свое внутреннее состояние во всех вызовах от своих клиентов до тех пор, пока не вызовет SetComplete или SetAbort или пока транзакция не завершится.

EnableCommit — это состояние по умолчанию при активации объекта. Таким образом, объект всегда должен вызывать SetComplete или SetAbort перед возвратом из метода, если вы не хотите, чтобы объект сохранял свое внутреннее состояние для следующего вызова клиента.

Требования

Требование Значение
Минимальная версия клиента Windows 2000 Professional [только классические приложения]
Минимальная версия сервера Windows 2000 Server [только классические приложения]
Целевая платформа Windows
Header comsvcs.h

См. также раздел

Objectcontext