Метод ObjectContext::SetComplete (comsvcs.h)
Объявляет, что транзакция, в которой выполняется объект, может быть зафиксирована и что объект должен быть деактивирован при возврате.
Синтаксис
HRESULT SetComplete();
Возвращаемое значение
Этот метод может возвращать стандартные возвращаемые значения E_INVALIDARG, E_OUTOFMEMORY и E_FAIL, а также следующие значения.
Код возврата | Описание |
---|---|
|
Метод завершился успешно. |
|
Произошла непредвиденная ошибка. Это может произойти, если один объект передает свой указатель ObjectContext другому объекту, а другой объект вызывает SetComplete с помощью этого указателя. Указатель ObjectContext недопустим вне контекста объекта, который его первоначально получил. |
Комментарии
Объект автоматически деактивируется при возврате из метода, в котором он вызвал SetComplete. Если объект является корнем автоматической транзакции, COM+ пытается зафиксировать транзакцию. Однако если какой-либо объект, участвующий в транзакции, вызывал SetAbort или вызывал DisableCommit и впоследствии не вызывал EnableCommit или SetComplete, транзакция прерывается.
Если объекту не нужно сохранять свое состояние после возврата из вызова метода, он должен вызвать SetComplete , чтобы его можно было автоматически деактивировать сразу после возврата и восстановления его ресурсов.
Требования
Требование | Значение |
---|---|
Минимальная версия клиента | Windows 2000 Professional [только классические приложения] |
Минимальная версия сервера | Windows 2000 Server [только классические приложения] |
Целевая платформа | Windows |
Header | comsvcs.h |