Platform SDK: Transaction Server

Life of a Transaction: Exporting a Transaction II (Phases)

h9 The RM proxy passes the transaction cookie to the resource manager by means of an "Export Request" message. The format of the "Export Request" message is proprietary to the RM proxy and the resource manager.
h10.1 The resource manager responds to the "Export Request" message by invoking the IUnknown::QueryInterface method on the MS DTC proxy core object to obtain the ITransactionImport interface.
h10.2 The resource manager invokes the ITransactionImport::Import method, passing the transaction cookie it received from the RM proxy.
h11 The MS DTC proxy converts the transaction cookie into the appropriate transaction identifier GUID and passes the transaction identifier to the resource manager’s transaction manager.
h12 The transaction manager uses the transaction identifier to locate the internal transaction object for the imported transaction. It updates the internal transaction object to indicate that this resource manager is participating in this transaction. It then returns to the MS DTC proxy.
h13 The MS DTC proxy creates a transaction object for the imported transaction and returns a pointer to the ITransaction interface of the transaction object to the resource manager.
h14 The resource manager associates the transaction object with the RM proxy-to-resource manager session on which the transaction was exported. The resource manager then replies to the RM proxy, indicating that the transaction has been exported.
h15 The RM proxy responds to the resource manager enlistment call that the client made at step "f1". The response indicates that a successful enlistment has occurred.