IObjectContext::EnableCommit method (comsvcs.h)

Declares that the object's work is not necessarily finished but that its transactional updates are in a consistent state and could be committed in their present form.


HRESULT EnableCommit();

Return value

This method can return the following values.

Return code Description
The method completed successfully and the object's transactional updates can now be committed.
An unexpected error occurred. This can happen if one object passes its IObjectContext pointer to another object and the other object calls EnableCommit using this pointer. An IObjectContext pointer is not valid outside the context of the object that originally obtained it.


When an object calls EnableCommit, it allows the transaction in which it's participating to be committed but it maintains its internal state across calls from its clients until it calls SetComplete or SetAbort or until the transaction completes.

EnableCommit is the default state when an object is activated. Therefore, an object should always call SetComplete or SetAbort before returning from a method, unless you want the object to maintain its internal state for the next call from a client.


Minimum supported client Windows 2000 Professional [desktop apps only]
Minimum supported server Windows 2000 Server [desktop apps only]
Target Platform Windows
Header comsvcs.h

See also