共用方式為


3.23.4.3 ITransactionStream::GetTxViaExport (Opnum 5)

This method returns the STxInfo instance (as specified in [MS-DTCO] section 2.2.5.10) of the currently active transaction or returns an error if the specified TSN is not the same as the CurrentTSN value.

 HRESULT GetTxViaExport(
   [in] unsigned long ulRequestSeq,
   [in] unsigned long ulcbWhereabouts,
   [in, size_is(ulcbWhereabouts)] BYTE* rgbWhereabouts,
   [out] unsigned long* pulcbExportCookie,
   [out, size_is(,*pulcbExportCookie)] 
     BYTE** prgbExportCookie
 );

ulRequestSeq: The caller's CurrentTSN value of the currently active transaction.

ulcbWhereabouts: The unsigned size, in bytes, of rgbWhereabouts.

rgbWhereabouts: The SWhereabouts instance ([MS-DTCO] section 2.2.5.11) of the caller's local DTCO transaction manager implementation.

pulcbExportCookie: The unsigned size, in bytes, of prgbExportCookie.

prgbExportCookie: An STxInfo instance of the currently active transaction (as specified in [MS-DTCO] section 2.2.5.10).

Return Values: The method MUST return a positive value or zero to indicate successful completion, or a negative value to indicate failure. The client MUST treat any negative return value as a fatal error.

When processing this ORPC call, if ulRequestSeq is the same as the CurrentTSN value, the ITransactionStream Server (section 3.23) MUST do the following:

  • Set pulcbExportCookie to the size of prgbExportCookie.

  • Copy STxInfo of the currently active transaction to the prgbExportCookie out parameter.

Otherwise, the ITransactionStream Server MUST return CONTEXT_E_ABORTED.