OLE Transactions Objects

There are six OLE Transactions objects:

MS DTC proxy core object

Transaction object

Transaction Options

Export object

Enlistment object

Voter object

Resource Manager object

  1. The MS DTC proxy core object is the root or central MS DTC object which provides many essential MS DTC proxy interfaces. For example, the interfaces for creating transaction objects, transaction options objects, export objects, and resource manager objects.
  2. The Transaction object represents the MS DTC transaction.
  3. The Transaction Options object contains transaction attribute information, such as the time-out for the transaction and the transaction name. The transaction options object is passed as a parameter to the ITransactionDispenser::BeginTransaction method when creating a new transaction. The transaction attributes contained in the transaction options object are inherited by the newly created transaction object.
  4. The Export object represents a connection between an RM proxy and a resource manager. The export object is used to propagate transactions between processes or systems. The export object contains the name and location of the resource manager’s transaction manager. When the RM proxy exports a transaction to a resource manager, the RM proxy’s transaction manager uses the export object to locate the resource manager’s transaction manager.
  5. The Enlistment object represents the relationship between a resource manager and a transaction object in which the resource manager has enlisted. An enlistment object is created each time a resource manager enlists in a transaction. MS DTC uses the enlistment object to determine which resource managers to involve in the two-phase commit process.
  6. The Voter object represents an application's vote for committing or aborting a distributed transaction.
  7. The Resource Manager object represents the connection between a resource manager and a transaction manager. A resource manager object is created when a resource manager initially connects to a transaction manager.