home *** CD-ROM | disk | FTP | other *** search
/ io Programmo 32 / IOPROG_32.ISO / SOFT / SqlEval7 / devtools / include / transact.h < prev    next >
Encoding:
C/C++ Source or Header  |  1997-04-09  |  33.3 KB  |  1,107 lines

  1. //.-------------------------------------------------------------------------
  2. //.
  3. //.  Microsoft Windows
  4. //.  Copyright (C) Microsoft Corporation, 1995.
  5. //.
  6. //.  File: transact.idl
  7. //.
  8. //.  Contents: The basic transaction interfaces and types.
  9. //.
  10. //.--------------------------------------------------------------------------
  11.  
  12.  
  13. /* File created by MIDL compiler version 2.00.0102 */
  14. /* at Tue Nov 21 16:54:32 1995
  15.  */
  16. //@@MIDL_FILE_HEADING(  )
  17. #include "rpc.h"
  18. #include "rpcndr.h"
  19. #ifndef COM_NO_WINDOWS_H
  20. #include "windows.h"
  21. #include "ole2.h"
  22. #endif /*COM_NO_WINDOWS_H*/
  23.  
  24. #ifndef __transact_h__
  25. #define __transact_h__
  26.  
  27. #ifdef __cplusplus
  28. extern "C"{
  29. #endif 
  30.  
  31. /* Forward Declarations */ 
  32.  
  33. #ifndef __ITransaction_FWD_DEFINED__
  34. #define __ITransaction_FWD_DEFINED__
  35. typedef interface ITransaction ITransaction;
  36. #endif     /* __ITransaction_FWD_DEFINED__ */
  37.  
  38.  
  39. #ifndef __ITransactionDispenser_FWD_DEFINED__
  40. #define __ITransactionDispenser_FWD_DEFINED__
  41. typedef interface ITransactionDispenser ITransactionDispenser;
  42. #endif     /* __ITransactionDispenser_FWD_DEFINED__ */
  43.  
  44.  
  45. #ifndef __ITransactionOptions_FWD_DEFINED__
  46. #define __ITransactionOptions_FWD_DEFINED__
  47. typedef interface ITransactionOptions ITransactionOptions;
  48. #endif     /* __ITransactionOptions_FWD_DEFINED__ */
  49.  
  50.  
  51. #ifndef __ITransactionOutcomeEvents_FWD_DEFINED__
  52. #define __ITransactionOutcomeEvents_FWD_DEFINED__
  53. typedef interface ITransactionOutcomeEvents ITransactionOutcomeEvents;
  54. #endif     /* __ITransactionOutcomeEvents_FWD_DEFINED__ */
  55.  
  56.  
  57. #ifndef __ITransactionCompletionEvents_FWD_DEFINED__
  58. #define __ITransactionCompletionEvents_FWD_DEFINED__
  59. typedef interface ITransactionCompletionEvents ITransactionCompletionEvents;
  60. #endif     /* __ITransactionCompletionEvents_FWD_DEFINED__ */
  61.  
  62.  
  63. /* header files for imported files */
  64.  
  65. void __RPC_FAR * __RPC_USER MIDL_user_allocate(size_t);
  66. void __RPC_USER MIDL_user_free( void __RPC_FAR * ); 
  67.  
  68. /****************************************
  69.  * Generated header for interface: __MIDL__intf_0000
  70.  * at Tue Nov 21 16:54:32 1995
  71.  * using MIDL 2.00.0102
  72.  ****************************************/
  73. /* [local] */ 
  74.  
  75.  
  76.             /* size is 0 */
  77.  
  78.             /* size is 0 */
  79.  
  80.             /* size is 0 */
  81.  
  82.             /* size is 0 */
  83.  
  84.             /* size is 0 */
  85.  
  86.  
  87.  
  88. extern RPC_IF_HANDLE __MIDL__intf_0000_v0_0_c_ifspec;
  89. extern RPC_IF_HANDLE __MIDL__intf_0000_v0_0_s_ifspec;
  90.  
  91. #ifndef __BasicTransactionTypes_INTERFACE_DEFINED__
  92. #define __BasicTransactionTypes_INTERFACE_DEFINED__
  93.  
  94. /****************************************
  95.  * Generated header for interface: BasicTransactionTypes
  96.  * at Tue Nov 21 16:54:32 1995
  97.  * using MIDL 2.00.0102
  98.  ****************************************/
  99. /* [unique][local] */ 
  100.  
  101.  
  102.             /* size is 16 */
  103. typedef struct  BOID
  104.     {
  105.     BYTE rgb[ 16 ];
  106.     }    BOID;
  107.  
  108. #define BOID_NULL (*((BOID*)(&IID_NULL)))
  109.  
  110. #define MAX_TRAN_DESC 40        // used by XACTOPT via midl - see transact.idl 
  111.             /* size is 16 */
  112. typedef BOID XACTUOW;
  113.  
  114.             /* size is 4 */
  115. typedef LONG ISOLEVEL;
  116.  
  117. #if defined(_WIN32)
  118.             /* size is 2 */
  119. typedef 
  120. enum ISOLATIONLEVEL
  121.     {    ISOLATIONLEVEL_UNSPECIFIED    = 0xffffffff,
  122.     ISOLATIONLEVEL_CHAOS    = 0x10,
  123.     ISOLATIONLEVEL_READUNCOMMITTED    = 0x100,
  124.     ISOLATIONLEVEL_BROWSE    = 0x100,
  125.     ISOLATIONLEVEL_CURSORSTABILITY    = 0x1000,
  126.     ISOLATIONLEVEL_READCOMMITTED    = 0x1000,
  127.     ISOLATIONLEVEL_REPEATABLEREAD    = 0x10000,
  128.     ISOLATIONLEVEL_SERIALIZABLE    = 0x100000,
  129.     ISOLATIONLEVEL_ISOLATED    = 0x100000
  130.     }    ISOLATIONLEVEL;
  131.  
  132. #else
  133. #define ISOLATIONLEVEL_UNSPECIFIED      0xFFFFFFFF
  134. #define ISOLATIONLEVEL_CHAOS            0x00000010
  135. #define ISOLATIONLEVEL_READUNCOMMITTED  0x00000100
  136. #define ISOLATIONLEVEL_BROWSE           0x00000100
  137. #define ISOLATIONLEVEL_CURSORSTABILITY  0x00001000
  138. #define ISOLATIONLEVEL_READCOMMITTED    0x00001000
  139. #define ISOLATIONLEVEL_REPEATABLEREAD   0x00010000
  140. #define ISOLATIONLEVEL_SERIALIZABLE     0x00100000
  141. #define ISOLATIONLEVEL_ISOLATED         0x00100000
  142. #endif
  143.             /* size is 40 */
  144. typedef struct  XACTTRANSINFO
  145.     {
  146.     XACTUOW uow;
  147.     ISOLEVEL isoLevel;
  148.     ULONG isoFlags;
  149.     DWORD grfTCSupported;
  150.     DWORD grfRMSupported;
  151.     DWORD grfTCSupportedRetaining;
  152.     DWORD grfRMSupportedRetaining;
  153.     }    XACTTRANSINFO;
  154.  
  155.             /* size is 36 */
  156. typedef struct  XACTSTATS
  157.     {
  158.     ULONG cOpen;
  159.     ULONG cCommitting;
  160.     ULONG cCommitted;
  161.     ULONG cAborting;
  162.     ULONG cAborted;
  163.     ULONG cInDoubt;
  164.     ULONG cHeuristicDecision;
  165.     FILETIME timeTransactionsUp;
  166.     }    XACTSTATS;
  167.  
  168.             /* size is 2 */
  169. typedef 
  170. enum ISOFLAG
  171.     {    ISOFLAG_RETAIN_COMMIT_DC    = 1,
  172.     ISOFLAG_RETAIN_COMMIT    = 2,
  173.     ISOFLAG_RETAIN_COMMIT_NO    = 3,
  174.     ISOFLAG_RETAIN_ABORT_DC    = 4,
  175.     ISOFLAG_RETAIN_ABORT    = 8,
  176.     ISOFLAG_RETAIN_ABORT_NO    = 12,
  177.     ISOFLAG_RETAIN_DONTCARE    = ISOFLAG_RETAIN_COMMIT_DC | ISOFLAG_RETAIN_ABORT_DC,
  178.     ISOFLAG_RETAIN_BOTH    = ISOFLAG_RETAIN_COMMIT | ISOFLAG_RETAIN_ABORT,
  179.     ISOFLAG_RETAIN_NONE    = ISOFLAG_RETAIN_COMMIT_NO | ISOFLAG_RETAIN_ABORT_NO,
  180.     ISOFLAG_OPTIMISTIC    = 16
  181.     }    ISOFLAG;
  182.  
  183.             /* size is 2 */
  184. typedef 
  185. enum XACTTC
  186.     {    XACTTC_SYNC_PHASEONE    = 1,
  187.     XACTTC_SYNC_PHASETWO    = 2,
  188.     XACTTC_SYNC    = 2,
  189.     XACTTC_ASYNC_PHASEONE    = 4
  190.     }    XACTTC;
  191.  
  192.             /* size is 2 */
  193. typedef 
  194. enum XACTRM
  195.     {    XACTRM_OPTIMISTICLASTWINS    = 1,
  196.     XACTRM_NOREADONLYPREPARES    = 2
  197.     }    XACTRM;
  198.  
  199.             /* size is 2 */
  200. typedef 
  201. enum XACTCONST
  202.     {    XACTCONST_TIMEOUTINFINITE    = 0
  203.     }    XACTCONST;
  204.  
  205.             /* size is 2 */
  206. typedef 
  207. enum XACTHEURISTIC
  208.     {    XACTHEURISTIC_ABORT    = 1,
  209.     XACTHEURISTIC_COMMIT    = 2,
  210.     XACTHEURISTIC_DAMAGE    = 3,
  211.     XACTHEURISTIC_DANGER    = 4
  212.     }    XACTHEURISTIC;
  213.  
  214. #if defined(_WIN32)
  215.             /* size is 2 */
  216. typedef 
  217. enum XACTSTAT
  218.     {    XACTSTAT_NONE    = 0,
  219.     XACTSTAT_OPENNORMAL    = 0x1,
  220.     XACTSTAT_OPENREFUSED    = 0x2,
  221.     XACTSTAT_PREPARING    = 0x4,
  222.     XACTSTAT_PREPARED    = 0x8,
  223.     XACTSTAT_PREPARERETAINING    = 0x10,
  224.     XACTSTAT_PREPARERETAINED    = 0x20,
  225.     XACTSTAT_COMMITTING    = 0x40,
  226.     XACTSTAT_COMMITRETAINING    = 0x80,
  227.     XACTSTAT_ABORTING    = 0x100,
  228.     XACTSTAT_ABORTED    = 0x200,
  229.     XACTSTAT_COMMITTED    = 0x400,
  230.     XACTSTAT_HEURISTIC_ABORT    = 0x800,
  231.     XACTSTAT_HEURISTIC_COMMIT    = 0x1000,
  232.     XACTSTAT_HEURISTIC_DAMAGE    = 0x2000,
  233.     XACTSTAT_HEURISTIC_DANGER    = 0x4000,
  234.     XACTSTAT_FORCED_ABORT    = 0x8000,
  235.     XACTSTAT_FORCED_COMMIT    = 0x10000,
  236.     XACTSTAT_INDOUBT    = 0x20000,
  237.     XACTSTAT_CLOSED    = 0x40000,
  238.     XACTSTAT_OPEN    = 0x3,
  239.     XACTSTAT_NOTPREPARED    = 0x7ffc3,
  240.     XACTSTAT_ALL    = 0x7ffff
  241.     }    XACTSTAT;
  242.  
  243. #else
  244. #define XACTSTAT_NONE               0x00000000
  245. #define XACTSTAT_OPENNORMAL         0x00000001
  246. #define XACTSTAT_OPENREFUSED        0x00000002
  247. #define XACTSTAT_PREPARING          0x00000004
  248. #define XACTSTAT_PREPARED           0x00000008
  249. #define XACTSTAT_PREPARERETAINING   0x00000010
  250. #define XACTSTAT_PREPARERETAINED    0x00000020
  251. #define XACTSTAT_COMMITTING         0x00000040
  252. #define XACTSTAT_COMMITRETAINING    0x00000080
  253. #define XACTSTAT_ABORTING           0x00000100
  254. #define XACTSTAT_ABORTED            0x00000200
  255. #define XACTSTAT_COMMITTED          0x00000400
  256. #define XACTSTAT_HEURISTIC_ABORT    0x00000800
  257. #define XACTSTAT_HEURISTIC_COMMIT   0x00001000
  258. #define XACTSTAT_HEURISTIC_DAMAGE   0x00002000
  259. #define XACTSTAT_HEURISTIC_DANGER   0x00004000
  260. #define XACTSTAT_FORCED_ABORT       0x00008000
  261. #define XACTSTAT_FORCED_COMMIT      0x00010000
  262. #define XACTSTAT_INDOUBT            0x00020000
  263. #define XACTSTAT_CLOSED             0x00040000
  264. #define XACTSTAT_OPEN               0x00000003
  265. #define XACTSTAT_NOTPREPARED        0x0007FFC3
  266. #define XACTSTAT_ALL                0x0007FFFF
  267. #endif
  268.             /* size is 44 */
  269. typedef struct  XACTOPT
  270.     {
  271.     ULONG ulTimeout;
  272.     unsigned char szDescription[ 40 ];
  273.     }    XACTOPT;
  274.  
  275.  
  276.  
  277. extern RPC_IF_HANDLE BasicTransactionTypes_v0_0_c_ifspec;
  278. extern RPC_IF_HANDLE BasicTransactionTypes_v0_0_s_ifspec;
  279. #endif /* __BasicTransactionTypes_INTERFACE_DEFINED__ */
  280.  
  281. #ifndef __ITransaction_INTERFACE_DEFINED__
  282. #define __ITransaction_INTERFACE_DEFINED__
  283.  
  284. /****************************************
  285.  * Generated header for interface: ITransaction
  286.  * at Tue Nov 21 16:54:32 1995
  287.  * using MIDL 2.00.0102
  288.  ****************************************/
  289. /* [unique][uuid][object] */ 
  290.  
  291.  
  292.  
  293. EXTERN_C const IID IID_ITransaction;
  294.  
  295. #if defined(__cplusplus) && !defined(CINTERFACE)
  296.     
  297.     interface ITransaction : public IUnknown
  298.     {
  299.     public:
  300.         virtual HRESULT __stdcall Commit( 
  301.             /* [in] */ BOOL fRetaining,
  302.             /* [in] */ DWORD grfTC,
  303.             /* [in] */ DWORD grfRM) = 0;
  304.         
  305.         virtual HRESULT __stdcall Abort( 
  306.             /* [in] */ BOID __RPC_FAR *pboidReason,
  307.             /* [in] */ BOOL fRetaining,
  308.             /* [in] */ BOOL fAsync) = 0;
  309.         
  310.         virtual HRESULT __stdcall GetTransactionInfo( 
  311.             /* [out] */ XACTTRANSINFO __RPC_FAR *pinfo) = 0;
  312.         
  313.     };
  314.     
  315. #else     /* C style interface */
  316.  
  317.     typedef struct ITransactionVtbl
  318.     {
  319.         
  320.         HRESULT ( __stdcall __RPC_FAR *QueryInterface )( 
  321.             ITransaction __RPC_FAR * This,
  322.             /* [in] */ REFIID riid,
  323.             /* [out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  324.         
  325.         ULONG ( __stdcall __RPC_FAR *AddRef )( 
  326.             ITransaction __RPC_FAR * This);
  327.         
  328.         ULONG ( __stdcall __RPC_FAR *Release )( 
  329.             ITransaction __RPC_FAR * This);
  330.         
  331.         HRESULT ( __stdcall __RPC_FAR *Commit )( 
  332.             ITransaction __RPC_FAR * This,
  333.             /* [in] */ BOOL fRetaining,
  334.             /* [in] */ DWORD grfTC,
  335.             /* [in] */ DWORD grfRM);
  336.         
  337.         HRESULT ( __stdcall __RPC_FAR *Abort )( 
  338.             ITransaction __RPC_FAR * This,
  339.             /* [in] */ BOID __RPC_FAR *pboidReason,
  340.             /* [in] */ BOOL fRetaining,
  341.             /* [in] */ BOOL fAsync);
  342.         
  343.         HRESULT ( __stdcall __RPC_FAR *GetTransactionInfo )( 
  344.             ITransaction __RPC_FAR * This,
  345.             /* [out] */ XACTTRANSINFO __RPC_FAR *pinfo);
  346.         
  347.     } ITransactionVtbl;
  348.  
  349.     interface ITransaction
  350.     {
  351.         CONST_VTBL struct ITransactionVtbl __RPC_FAR *lpVtbl;
  352.     };
  353.  
  354.     
  355.  
  356. #ifdef COBJMACROS
  357.  
  358.  
  359. #define ITransaction_QueryInterface(This,riid,ppvObject)    \
  360.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  361.  
  362. #define ITransaction_AddRef(This)    \
  363.     (This)->lpVtbl -> AddRef(This)
  364.  
  365. #define ITransaction_Release(This)    \
  366.     (This)->lpVtbl -> Release(This)
  367.  
  368.  
  369. #define ITransaction_Commit(This,fRetaining,grfTC,grfRM)    \
  370.     (This)->lpVtbl -> Commit(This,fRetaining,grfTC,grfRM)
  371.  
  372. #define ITransaction_Abort(This,pboidReason,fRetaining,fAsync)    \
  373.     (This)->lpVtbl -> Abort(This,pboidReason,fRetaining,fAsync)
  374.  
  375. #define ITransaction_GetTransactionInfo(This,pinfo)    \
  376.     (This)->lpVtbl -> GetTransactionInfo(This,pinfo)
  377.  
  378. #endif /* COBJMACROS */
  379.  
  380.  
  381. #endif     /* C style interface */
  382.  
  383.  
  384.  
  385. HRESULT __stdcall ITransaction_Commit_Proxy( 
  386.     ITransaction __RPC_FAR * This,
  387.     /* [in] */ BOOL fRetaining,
  388.     /* [in] */ DWORD grfTC,
  389.     /* [in] */ DWORD grfRM);
  390.  
  391.  
  392. void __RPC_STUB ITransaction_Commit_Stub(
  393.     IRpcStubBuffer *This,
  394.     IRpcChannelBuffer *_pRpcChannelBuffer,
  395.     PRPC_MESSAGE _pRpcMessage,
  396.     DWORD *_pdwStubPhase);
  397.  
  398.  
  399. HRESULT __stdcall ITransaction_Abort_Proxy( 
  400.     ITransaction __RPC_FAR * This,
  401.     /* [in] */ BOID __RPC_FAR *pboidReason,
  402.     /* [in] */ BOOL fRetaining,
  403.     /* [in] */ BOOL fAsync);
  404.  
  405.  
  406. void __RPC_STUB ITransaction_Abort_Stub(
  407.     IRpcStubBuffer *This,
  408.     IRpcChannelBuffer *_pRpcChannelBuffer,
  409.     PRPC_MESSAGE _pRpcMessage,
  410.     DWORD *_pdwStubPhase);
  411.  
  412.  
  413. HRESULT __stdcall ITransaction_GetTransactionInfo_Proxy( 
  414.     ITransaction __RPC_FAR * This,
  415.     /* [out] */ XACTTRANSINFO __RPC_FAR *pinfo);
  416.  
  417.  
  418. void __RPC_STUB ITransaction_GetTransactionInfo_Stub(
  419.     IRpcStubBuffer *This,
  420.     IRpcChannelBuffer *_pRpcChannelBuffer,
  421.     PRPC_MESSAGE _pRpcMessage,
  422.     DWORD *_pdwStubPhase);
  423.  
  424.  
  425.  
  426. #endif     /* __ITransaction_INTERFACE_DEFINED__ */
  427.  
  428.  
  429. #ifndef __ITransactionDispenser_INTERFACE_DEFINED__
  430. #define __ITransactionDispenser_INTERFACE_DEFINED__
  431.  
  432. /****************************************
  433.  * Generated header for interface: ITransactionDispenser
  434.  * at Tue Nov 21 16:54:32 1995
  435.  * using MIDL 2.00.0102
  436.  ****************************************/
  437. /* [unique][uuid][object] */ 
  438.  
  439.  
  440.  
  441. EXTERN_C const IID IID_ITransactionDispenser;
  442.  
  443. #if defined(__cplusplus) && !defined(CINTERFACE)
  444.     
  445.     interface ITransactionDispenser : public IUnknown
  446.     {
  447.     public:
  448.         virtual HRESULT __stdcall GetOptionsObject( 
  449.             /* [out] */ ITransactionOptions __RPC_FAR *__RPC_FAR *ppOptions) = 0;
  450.         
  451.         virtual HRESULT __stdcall BeginTransaction( 
  452.             /* [in] */ IUnknown __RPC_FAR *punkOuter,
  453.             /* [in] */ ISOLEVEL isoLevel,
  454.             /* [in] */ ULONG isoFlags,
  455.             /* [in] */ ITransactionOptions __RPC_FAR *pOptions,
  456.             /* [out] */ ITransaction __RPC_FAR *__RPC_FAR *ppTransaction) = 0;
  457.         
  458.     };
  459.     
  460. #else     /* C style interface */
  461.  
  462.     typedef struct ITransactionDispenserVtbl
  463.     {
  464.         
  465.         HRESULT ( __stdcall __RPC_FAR *QueryInterface )( 
  466.             ITransactionDispenser __RPC_FAR * This,
  467.             /* [in] */ REFIID riid,
  468.             /* [out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  469.         
  470.         ULONG ( __stdcall __RPC_FAR *AddRef )( 
  471.             ITransactionDispenser __RPC_FAR * This);
  472.         
  473.         ULONG ( __stdcall __RPC_FAR *Release )( 
  474.             ITransactionDispenser __RPC_FAR * This);
  475.         
  476.         HRESULT ( __stdcall __RPC_FAR *GetOptionsObject )( 
  477.             ITransactionDispenser __RPC_FAR * This,
  478.             /* [out] */ ITransactionOptions __RPC_FAR *__RPC_FAR *ppOptions);
  479.         
  480.         HRESULT ( __stdcall __RPC_FAR *BeginTransaction )( 
  481.             ITransactionDispenser __RPC_FAR * This,
  482.             /* [in] */ IUnknown __RPC_FAR *punkOuter,
  483.             /* [in] */ ISOLEVEL isoLevel,
  484.             /* [in] */ ULONG isoFlags,
  485.             /* [in] */ ITransactionOptions __RPC_FAR *pOptions,
  486.             /* [out] */ ITransaction __RPC_FAR *__RPC_FAR *ppTransaction);
  487.         
  488.     } ITransactionDispenserVtbl;
  489.  
  490.     interface ITransactionDispenser
  491.     {
  492.         CONST_VTBL struct ITransactionDispenserVtbl __RPC_FAR *lpVtbl;
  493.     };
  494.  
  495.     
  496.  
  497. #ifdef COBJMACROS
  498.  
  499.  
  500. #define ITransactionDispenser_QueryInterface(This,riid,ppvObject)    \
  501.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  502.  
  503. #define ITransactionDispenser_AddRef(This)    \
  504.     (This)->lpVtbl -> AddRef(This)
  505.  
  506. #define ITransactionDispenser_Release(This)    \
  507.     (This)->lpVtbl -> Release(This)
  508.  
  509.  
  510. #define ITransactionDispenser_GetOptionsObject(This,ppOptions)    \
  511.     (This)->lpVtbl -> GetOptionsObject(This,ppOptions)
  512.  
  513. #define ITransactionDispenser_BeginTransaction(This,punkOuter,isoLevel,isoFlags,pOptions,ppTransaction)    \
  514.     (This)->lpVtbl -> BeginTransaction(This,punkOuter,isoLevel,isoFlags,pOptions,ppTransaction)
  515.  
  516. #endif /* COBJMACROS */
  517.  
  518.  
  519. #endif     /* C style interface */
  520.  
  521.  
  522.  
  523. HRESULT __stdcall ITransactionDispenser_GetOptionsObject_Proxy( 
  524.     ITransactionDispenser __RPC_FAR * This,
  525.     /* [out] */ ITransactionOptions __RPC_FAR *__RPC_FAR *ppOptions);
  526.  
  527.  
  528. void __RPC_STUB ITransactionDispenser_GetOptionsObject_Stub(
  529.     IRpcStubBuffer *This,
  530.     IRpcChannelBuffer *_pRpcChannelBuffer,
  531.     PRPC_MESSAGE _pRpcMessage,
  532.     DWORD *_pdwStubPhase);
  533.  
  534.  
  535. HRESULT __stdcall ITransactionDispenser_BeginTransaction_Proxy( 
  536.     ITransactionDispenser __RPC_FAR * This,
  537.     /* [in] */ IUnknown __RPC_FAR *punkOuter,
  538.     /* [in] */ ISOLEVEL isoLevel,
  539.     /* [in] */ ULONG isoFlags,
  540.     /* [in] */ ITransactionOptions __RPC_FAR *pOptions,
  541.     /* [out] */ ITransaction __RPC_FAR *__RPC_FAR *ppTransaction);
  542.  
  543.  
  544. void __RPC_STUB ITransactionDispenser_BeginTransaction_Stub(
  545.     IRpcStubBuffer *This,
  546.     IRpcChannelBuffer *_pRpcChannelBuffer,
  547.     PRPC_MESSAGE _pRpcMessage,
  548.     DWORD *_pdwStubPhase);
  549.  
  550.  
  551.  
  552. #endif     /* __ITransactionDispenser_INTERFACE_DEFINED__ */
  553.  
  554.  
  555. #ifndef __ITransactionOptions_INTERFACE_DEFINED__
  556. #define __ITransactionOptions_INTERFACE_DEFINED__
  557.  
  558. /****************************************
  559.  * Generated header for interface: ITransactionOptions
  560.  * at Tue Nov 21 16:54:32 1995
  561.  * using MIDL 2.00.0102
  562.  ****************************************/
  563. /* [unique][uuid][object] */ 
  564.  
  565.  
  566.  
  567. EXTERN_C const IID IID_ITransactionOptions;
  568.  
  569. #if defined(__cplusplus) && !defined(CINTERFACE)
  570.     
  571.     interface ITransactionOptions : public IUnknown
  572.     {
  573.     public:
  574.         virtual HRESULT __stdcall SetOptions( 
  575.             /* [in] */ XACTOPT __RPC_FAR *pOptions) = 0;
  576.         
  577.         virtual HRESULT __stdcall GetOptions( 
  578.             /* [out][in] */ XACTOPT __RPC_FAR *pOptions) = 0;
  579.         
  580.     };
  581.     
  582. #else     /* C style interface */
  583.  
  584.     typedef struct ITransactionOptionsVtbl
  585.     {
  586.         
  587.         HRESULT ( __stdcall __RPC_FAR *QueryInterface )( 
  588.             ITransactionOptions __RPC_FAR * This,
  589.             /* [in] */ REFIID riid,
  590.             /* [out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  591.         
  592.         ULONG ( __stdcall __RPC_FAR *AddRef )( 
  593.             ITransactionOptions __RPC_FAR * This);
  594.         
  595.         ULONG ( __stdcall __RPC_FAR *Release )( 
  596.             ITransactionOptions __RPC_FAR * This);
  597.         
  598.         HRESULT ( __stdcall __RPC_FAR *SetOptions )( 
  599.             ITransactionOptions __RPC_FAR * This,
  600.             /* [in] */ XACTOPT __RPC_FAR *pOptions);
  601.         
  602.         HRESULT ( __stdcall __RPC_FAR *GetOptions )( 
  603.             ITransactionOptions __RPC_FAR * This,
  604.             /* [out][in] */ XACTOPT __RPC_FAR *pOptions);
  605.         
  606.     } ITransactionOptionsVtbl;
  607.  
  608.     interface ITransactionOptions
  609.     {
  610.         CONST_VTBL struct ITransactionOptionsVtbl __RPC_FAR *lpVtbl;
  611.     };
  612.  
  613.     
  614.  
  615. #ifdef COBJMACROS
  616.  
  617.  
  618. #define ITransactionOptions_QueryInterface(This,riid,ppvObject)    \
  619.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  620.  
  621. #define ITransactionOptions_AddRef(This)    \
  622.     (This)->lpVtbl -> AddRef(This)
  623.  
  624. #define ITransactionOptions_Release(This)    \
  625.     (This)->lpVtbl -> Release(This)
  626.  
  627.  
  628. #define ITransactionOptions_SetOptions(This,pOptions)    \
  629.     (This)->lpVtbl -> SetOptions(This,pOptions)
  630.  
  631. #define ITransactionOptions_GetOptions(This,pOptions)    \
  632.     (This)->lpVtbl -> GetOptions(This,pOptions)
  633.  
  634. #endif /* COBJMACROS */
  635.  
  636.  
  637. #endif     /* C style interface */
  638.  
  639.  
  640.  
  641. HRESULT __stdcall ITransactionOptions_SetOptions_Proxy( 
  642.     ITransactionOptions __RPC_FAR * This,
  643.     /* [in] */ XACTOPT __RPC_FAR *pOptions);
  644.  
  645.  
  646. void __RPC_STUB ITransactionOptions_SetOptions_Stub(
  647.     IRpcStubBuffer *This,
  648.     IRpcChannelBuffer *_pRpcChannelBuffer,
  649.     PRPC_MESSAGE _pRpcMessage,
  650.     DWORD *_pdwStubPhase);
  651.  
  652.  
  653. HRESULT __stdcall ITransactionOptions_GetOptions_Proxy( 
  654.     ITransactionOptions __RPC_FAR * This,
  655.     /* [out][in] */ XACTOPT __RPC_FAR *pOptions);
  656.  
  657.  
  658. void __RPC_STUB ITransactionOptions_GetOptions_Stub(
  659.     IRpcStubBuffer *This,
  660.     IRpcChannelBuffer *_pRpcChannelBuffer,
  661.     PRPC_MESSAGE _pRpcMessage,
  662.     DWORD *_pdwStubPhase);
  663.  
  664.  
  665.  
  666. #endif     /* __ITransactionOptions_INTERFACE_DEFINED__ */
  667.  
  668.  
  669. #ifndef __ITransactionOutcomeEvents_INTERFACE_DEFINED__
  670. #define __ITransactionOutcomeEvents_INTERFACE_DEFINED__
  671.  
  672. /****************************************
  673.  * Generated header for interface: ITransactionOutcomeEvents
  674.  * at Tue Nov 21 16:54:32 1995
  675.  * using MIDL 2.00.0102
  676.  ****************************************/
  677. /* [unique][uuid][object] */ 
  678.  
  679.  
  680.  
  681. EXTERN_C const IID IID_ITransactionOutcomeEvents;
  682.  
  683. #if defined(__cplusplus) && !defined(CINTERFACE)
  684.     
  685.     interface ITransactionOutcomeEvents : public IUnknown
  686.     {
  687.     public:
  688.         virtual HRESULT __stdcall Committed( 
  689.             /* [in] */ BOOL fRetaining,
  690.             /* [in] */ XACTUOW __RPC_FAR *pNewUOW,
  691.             /* [in] */ HRESULT hr) = 0;
  692.         
  693.         virtual HRESULT __stdcall Aborted( 
  694.             /* [in] */ BOID __RPC_FAR *pboidReason,
  695.             /* [in] */ BOOL fRetaining,
  696.             /* [in] */ XACTUOW __RPC_FAR *pNewUOW,
  697.             /* [in] */ HRESULT hr) = 0;
  698.         
  699.         virtual HRESULT __stdcall HeuristicDecision( 
  700.             /* [in] */ DWORD dwDecision,
  701.             /* [in] */ BOID __RPC_FAR *pboidReason,
  702.             /* [in] */ HRESULT hr) = 0;
  703.         
  704.         virtual HRESULT __stdcall Indoubt( void) = 0;
  705.         
  706.     };
  707.     
  708. #else     /* C style interface */
  709.  
  710.     typedef struct ITransactionOutcomeEventsVtbl
  711.     {
  712.         
  713.         HRESULT ( __stdcall __RPC_FAR *QueryInterface )( 
  714.             ITransactionOutcomeEvents __RPC_FAR * This,
  715.             /* [in] */ REFIID riid,
  716.             /* [out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  717.         
  718.         ULONG ( __stdcall __RPC_FAR *AddRef )( 
  719.             ITransactionOutcomeEvents __RPC_FAR * This);
  720.         
  721.         ULONG ( __stdcall __RPC_FAR *Release )( 
  722.             ITransactionOutcomeEvents __RPC_FAR * This);
  723.         
  724.         HRESULT ( __stdcall __RPC_FAR *Committed )( 
  725.             ITransactionOutcomeEvents __RPC_FAR * This,
  726.             /* [in] */ BOOL fRetaining,
  727.             /* [in] */ XACTUOW __RPC_FAR *pNewUOW,
  728.             /* [in] */ HRESULT hr);
  729.         
  730.         HRESULT ( __stdcall __RPC_FAR *Aborted )( 
  731.             ITransactionOutcomeEvents __RPC_FAR * This,
  732.             /* [in] */ BOID __RPC_FAR *pboidReason,
  733.             /* [in] */ BOOL fRetaining,
  734.             /* [in] */ XACTUOW __RPC_FAR *pNewUOW,
  735.             /* [in] */ HRESULT hr);
  736.         
  737.         HRESULT ( __stdcall __RPC_FAR *HeuristicDecision )( 
  738.             ITransactionOutcomeEvents __RPC_FAR * This,
  739.             /* [in] */ DWORD dwDecision,
  740.             /* [in] */ BOID __RPC_FAR *pboidReason,
  741.             /* [in] */ HRESULT hr);
  742.         
  743.         HRESULT ( __stdcall __RPC_FAR *Indoubt )( 
  744.             ITransactionOutcomeEvents __RPC_FAR * This);
  745.         
  746.     } ITransactionOutcomeEventsVtbl;
  747.  
  748.     interface ITransactionOutcomeEvents
  749.     {
  750.         CONST_VTBL struct ITransactionOutcomeEventsVtbl __RPC_FAR *lpVtbl;
  751.     };
  752.  
  753.     
  754.  
  755. #ifdef COBJMACROS
  756.  
  757.  
  758. #define ITransactionOutcomeEvents_QueryInterface(This,riid,ppvObject)    \
  759.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  760.  
  761. #define ITransactionOutcomeEvents_AddRef(This)    \
  762.     (This)->lpVtbl -> AddRef(This)
  763.  
  764. #define ITransactionOutcomeEvents_Release(This)    \
  765.     (This)->lpVtbl -> Release(This)
  766.  
  767.  
  768. #define ITransactionOutcomeEvents_Committed(This,fRetaining,pNewUOW,hr)    \
  769.     (This)->lpVtbl -> Committed(This,fRetaining,pNewUOW,hr)
  770.  
  771. #define ITransactionOutcomeEvents_Aborted(This,pboidReason,fRetaining,pNewUOW,hr)    \
  772.     (This)->lpVtbl -> Aborted(This,pboidReason,fRetaining,pNewUOW,hr)
  773.  
  774. #define ITransactionOutcomeEvents_HeuristicDecision(This,dwDecision,pboidReason,hr)    \
  775.     (This)->lpVtbl -> HeuristicDecision(This,dwDecision,pboidReason,hr)
  776.  
  777. #define ITransactionOutcomeEvents_Indoubt(This)    \
  778.     (This)->lpVtbl -> Indoubt(This)
  779.  
  780. #endif /* COBJMACROS */
  781.  
  782.  
  783. #endif     /* C style interface */
  784.  
  785.  
  786.  
  787. HRESULT __stdcall ITransactionOutcomeEvents_Committed_Proxy( 
  788.     ITransactionOutcomeEvents __RPC_FAR * This,
  789.     /* [in] */ BOOL fRetaining,
  790.     /* [in] */ XACTUOW __RPC_FAR *pNewUOW,
  791.     /* [in] */ HRESULT hr);
  792.  
  793.  
  794. void __RPC_STUB ITransactionOutcomeEvents_Committed_Stub(
  795.     IRpcStubBuffer *This,
  796.     IRpcChannelBuffer *_pRpcChannelBuffer,
  797.     PRPC_MESSAGE _pRpcMessage,
  798.     DWORD *_pdwStubPhase);
  799.  
  800.  
  801. HRESULT __stdcall ITransactionOutcomeEvents_Aborted_Proxy( 
  802.     ITransactionOutcomeEvents __RPC_FAR * This,
  803.     /* [in] */ BOID __RPC_FAR *pboidReason,
  804.     /* [in] */ BOOL fRetaining,
  805.     /* [in] */ XACTUOW __RPC_FAR *pNewUOW,
  806.     /* [in] */ HRESULT hr);
  807.  
  808.  
  809. void __RPC_STUB ITransactionOutcomeEvents_Aborted_Stub(
  810.     IRpcStubBuffer *This,
  811.     IRpcChannelBuffer *_pRpcChannelBuffer,
  812.     PRPC_MESSAGE _pRpcMessage,
  813.     DWORD *_pdwStubPhase);
  814.  
  815.  
  816. HRESULT __stdcall ITransactionOutcomeEvents_HeuristicDecision_Proxy( 
  817.     ITransactionOutcomeEvents __RPC_FAR * This,
  818.     /* [in] */ DWORD dwDecision,
  819.     /* [in] */ BOID __RPC_FAR *pboidReason,
  820.     /* [in] */ HRESULT hr);
  821.  
  822.  
  823. void __RPC_STUB ITransactionOutcomeEvents_HeuristicDecision_Stub(
  824.     IRpcStubBuffer *This,
  825.     IRpcChannelBuffer *_pRpcChannelBuffer,
  826.     PRPC_MESSAGE _pRpcMessage,
  827.     DWORD *_pdwStubPhase);
  828.  
  829.  
  830. HRESULT __stdcall ITransactionOutcomeEvents_Indoubt_Proxy( 
  831.     ITransactionOutcomeEvents __RPC_FAR * This);
  832.  
  833.  
  834. void __RPC_STUB ITransactionOutcomeEvents_Indoubt_Stub(
  835.     IRpcStubBuffer *This,
  836.     IRpcChannelBuffer *_pRpcChannelBuffer,
  837.     PRPC_MESSAGE _pRpcMessage,
  838.     DWORD *_pdwStubPhase);
  839.  
  840.  
  841.  
  842. #endif     /* __ITransactionOutcomeEvents_INTERFACE_DEFINED__ */
  843.  
  844.  
  845. #ifndef __ITransactionCompletionEvents_INTERFACE_DEFINED__
  846. #define __ITransactionCompletionEvents_INTERFACE_DEFINED__
  847.  
  848. /****************************************
  849.  * Generated header for interface: ITransactionCompletionEvents
  850.  * at Tue Nov 21 16:54:32 1995
  851.  * using MIDL 2.00.0102
  852.  ****************************************/
  853. /* [unique][uuid][object] */ 
  854.  
  855.  
  856.  
  857. EXTERN_C const IID IID_ITransactionCompletionEvents;
  858.  
  859. #if defined(__cplusplus) && !defined(CINTERFACE)
  860.     
  861.     interface ITransactionCompletionEvents : public IUnknown
  862.     {
  863.     public:
  864.         virtual HRESULT __stdcall Committed( 
  865.             /* [in] */ BOOL fRetaining,
  866.             /* [in] */ XACTUOW __RPC_FAR *pNewUOW,
  867.             /* [in] */ HRESULT hr) = 0;
  868.         
  869.         virtual HRESULT __stdcall Aborted( 
  870.             /* [in] */ BOID __RPC_FAR *pboidReason,
  871.             /* [in] */ BOOL fRetaining,
  872.             /* [in] */ XACTUOW __RPC_FAR *pNewUOW,
  873.             /* [in] */ HRESULT hr) = 0;
  874.         
  875.         virtual HRESULT __stdcall HeuristicDecision( 
  876.             /* [in] */ DWORD dwDecision,
  877.             /* [in] */ BOID __RPC_FAR *pboidReason,
  878.             /* [in] */ HRESULT hr) = 0;
  879.         
  880.         virtual HRESULT __stdcall Indoubt( void) = 0;
  881.         
  882.     };
  883.     
  884. #else     /* C style interface */
  885.  
  886.     typedef struct ITransactionCompletionEventsVtbl
  887.     {
  888.         
  889.         HRESULT ( __stdcall __RPC_FAR *QueryInterface )( 
  890.             ITransactionCompletionEvents __RPC_FAR * This,
  891.             /* [in] */ REFIID riid,
  892.             /* [out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  893.         
  894.         ULONG ( __stdcall __RPC_FAR *AddRef )( 
  895.             ITransactionCompletionEvents __RPC_FAR * This);
  896.         
  897.         ULONG ( __stdcall __RPC_FAR *Release )( 
  898.             ITransactionCompletionEvents __RPC_FAR * This);
  899.         
  900.         HRESULT ( __stdcall __RPC_FAR *Committed )( 
  901.             ITransactionCompletionEvents __RPC_FAR * This,
  902.             /* [in] */ BOOL fRetaining,
  903.             /* [in] */ XACTUOW __RPC_FAR *pNewUOW,
  904.             /* [in] */ HRESULT hr);
  905.         
  906.         HRESULT ( __stdcall __RPC_FAR *Aborted )( 
  907.             ITransactionCompletionEvents __RPC_FAR * This,
  908.             /* [in] */ BOID __RPC_FAR *pboidReason,
  909.             /* [in] */ BOOL fRetaining,
  910.             /* [in] */ XACTUOW __RPC_FAR *pNewUOW,
  911.             /* [in] */ HRESULT hr);
  912.         
  913.         HRESULT ( __stdcall __RPC_FAR *HeuristicDecision )( 
  914.             ITransactionCompletionEvents __RPC_FAR * This,
  915.             /* [in] */ DWORD dwDecision,
  916.             /* [in] */ BOID __RPC_FAR *pboidReason,
  917.             /* [in] */ HRESULT hr);
  918.         
  919.         HRESULT ( __stdcall __RPC_FAR *Indoubt )( 
  920.             ITransactionCompletionEvents __RPC_FAR * This);
  921.         
  922.     } ITransactionCompletionEventsVtbl;
  923.  
  924.     interface ITransactionCompletionEvents
  925.     {
  926.         CONST_VTBL struct ITransactionCompletionEventsVtbl __RPC_FAR *lpVtbl;
  927.     };
  928.  
  929.     
  930.  
  931. #ifdef COBJMACROS
  932.  
  933.  
  934. #define ITransactionCompletionEvents_QueryInterface(This,riid,ppvObject)    \
  935.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  936.  
  937. #define ITransactionCompletionEvents_AddRef(This)    \
  938.     (This)->lpVtbl -> AddRef(This)
  939.  
  940. #define ITransactionCompletionEvents_Release(This)    \
  941.     (This)->lpVtbl -> Release(This)
  942.  
  943.  
  944. #define ITransactionCompletionEvents_Committed(This,fRetaining,pNewUOW,hr)    \
  945.     (This)->lpVtbl -> Committed(This,fRetaining,pNewUOW,hr)
  946.  
  947. #define ITransactionCompletionEvents_Aborted(This,pboidReason,fRetaining,pNewUOW,hr)    \
  948.     (This)->lpVtbl -> Aborted(This,pboidReason,fRetaining,pNewUOW,hr)
  949.  
  950. #define ITransactionCompletionEvents_HeuristicDecision(This,dwDecision,pboidReason,hr)    \
  951.     (This)->lpVtbl -> HeuristicDecision(This,dwDecision,pboidReason,hr)
  952.  
  953. #define ITransactionCompletionEvents_Indoubt(This)    \
  954.     (This)->lpVtbl -> Indoubt(This)
  955.  
  956. #endif /* COBJMACROS */
  957.  
  958.  
  959. #endif     /* C style interface */
  960.  
  961.  
  962.  
  963. HRESULT __stdcall ITransactionCompletionEvents_Committed_Proxy( 
  964.     ITransactionCompletionEvents __RPC_FAR * This,
  965.     /* [in] */ BOOL fRetaining,
  966.     /* [in] */ XACTUOW __RPC_FAR *pNewUOW,
  967.     /* [in] */ HRESULT hr);
  968.  
  969.  
  970. void __RPC_STUB ITransactionCompletionEvents_Committed_Stub(
  971.     IRpcStubBuffer *This,
  972.     IRpcChannelBuffer *_pRpcChannelBuffer,
  973.     PRPC_MESSAGE _pRpcMessage,
  974.     DWORD *_pdwStubPhase);
  975.  
  976.  
  977. HRESULT __stdcall ITransactionCompletionEvents_Aborted_Proxy( 
  978.     ITransactionCompletionEvents __RPC_FAR * This,
  979.     /* [in] */ BOID __RPC_FAR *pboidReason,
  980.     /* [in] */ BOOL fRetaining,
  981.     /* [in] */ XACTUOW __RPC_FAR *pNewUOW,
  982.     /* [in] */ HRESULT hr);
  983.  
  984.  
  985. void __RPC_STUB ITransactionCompletionEvents_Aborted_Stub(
  986.     IRpcStubBuffer *This,
  987.     IRpcChannelBuffer *_pRpcChannelBuffer,
  988.     PRPC_MESSAGE _pRpcMessage,
  989.     DWORD *_pdwStubPhase);
  990.  
  991.  
  992. HRESULT __stdcall ITransactionCompletionEvents_HeuristicDecision_Proxy( 
  993.     ITransactionCompletionEvents __RPC_FAR * This,
  994.     /* [in] */ DWORD dwDecision,
  995.     /* [in] */ BOID __RPC_FAR *pboidReason,
  996.     /* [in] */ HRESULT hr);
  997.  
  998.  
  999. void __RPC_STUB ITransactionCompletionEvents_HeuristicDecision_Stub(
  1000.     IRpcStubBuffer *This,
  1001.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1002.     PRPC_MESSAGE _pRpcMessage,
  1003.     DWORD *_pdwStubPhase);
  1004.  
  1005.  
  1006. HRESULT __stdcall ITransactionCompletionEvents_Indoubt_Proxy( 
  1007.     ITransactionCompletionEvents __RPC_FAR * This);
  1008.  
  1009.  
  1010. void __RPC_STUB ITransactionCompletionEvents_Indoubt_Stub(
  1011.     IRpcStubBuffer *This,
  1012.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1013.     PRPC_MESSAGE _pRpcMessage,
  1014.     DWORD *_pdwStubPhase);
  1015.  
  1016.  
  1017.  
  1018. #endif     /* __ITransactionCompletionEvents_INTERFACE_DEFINED__ */
  1019.  
  1020.  
  1021. /****************************************
  1022.  * Generated header for interface: __MIDL__intf_0011
  1023.  * at Tue Nov 21 16:54:32 1995
  1024.  * using MIDL 2.00.0102
  1025.  ****************************************/
  1026. /* [local] */ 
  1027.  
  1028.  
  1029. #define XACT_E_FIRST                    0x8004D000
  1030. #define XACT_E_LAST                     0x8004D01E
  1031. #define XACT_S_FIRST                    0x0004D000
  1032. #define XACT_S_LAST                     0x0004D009
  1033.  
  1034. #define XACT_E_ABORTED                  0x8004D019
  1035. #define XACT_E_ALREADYOTHERSINGLEPHASE  0x8004D000
  1036. #define XACT_E_ALREADYINPROGRESS        0x8004D018
  1037. #define XACT_E_CANTRETAIN               0x8004D001
  1038. #define XACT_E_COMMITFAILED             0x8004D002
  1039. #define XACT_E_COMMITPREVENTED          0x8004D003
  1040. #define XACT_E_CONNECTION_DENIED        0x8004D01D
  1041. #define XACT_E_CONNECTION_DOWN          0x8004D01C
  1042. #define XACT_E_HEURISTICABORT           0x8004D004
  1043. #define XACT_E_HEURISTICCOMMIT          0x8004D005
  1044. #define XACT_E_HEURISTICDAMAGE          0x8004D006
  1045. #define XACT_E_HEURISTICDANGER          0x8004D007
  1046. #define XACT_E_INDOUBT                  0x8004D016
  1047. #define XACT_E_INVALIDCOOKIE            0x8004D015
  1048. #define XACT_E_ISOLATIONLEVEL           0x8004D008
  1049. #define XACT_E_LOGFULL                  0x8004D01A
  1050. #define XACT_E_NOASYNC                  0x8004D009
  1051. #define XACT_E_NOENLIST                 0x8004D00A
  1052. #define XACT_E_NOIMPORTOBJECT           0x8004D014
  1053. #define XACT_E_NOISORETAIN              0x8004D00B
  1054. #define XACT_E_NORESOURCE               0x8004D00C
  1055. #define XACT_E_NOTCURRENT               0x8004D00D
  1056. #define XACT_E_NOTIMEOUT                0x8004D017
  1057. #define XACT_E_NOTRANSACTION            0x8004D00E
  1058. #define XACT_E_NOTSUPPORTED             0x8004D00F
  1059. #define XACT_E_REENLISTTIMEOUT          0x8004D01E
  1060. #define XACT_E_TMNOTAVAILABLE           0x8004D01B
  1061. #define XACT_E_UNKNOWNRMGRID            0x8004D010
  1062. #define XACT_E_WRONGSTATE               0x8004D011
  1063. #define XACT_E_WRONGUOW                 0x8004D012
  1064. #define XACT_E_XTIONEXISTS              0x8004D013
  1065.  
  1066. #define XACT_S_ABORTING                 0x0004D008
  1067. #define XACT_S_ALLNORETAIN              0x0004D007
  1068. #define XACT_S_ASYNC                    0x0004D000
  1069. #define XACT_S_DEFECT                   0x0004D001
  1070. #define XACT_S_OKINFORM                 0x0004D004
  1071. #define XACT_S_MADECHANGESCONTENT       0x0004D005
  1072. #define XACT_S_MADECHANGESINFORM        0x0004D006
  1073. #define XACT_S_READONLY                 0x0004D002
  1074. #define XACT_S_SINGLEPHASE              0x0004D009
  1075. #define XACT_S_SOMENORETAIN             0x0004D003
  1076.  
  1077.  
  1078. extern RPC_IF_HANDLE __MIDL__intf_0011_v0_0_c_ifspec;
  1079. extern RPC_IF_HANDLE __MIDL__intf_0011_v0_0_s_ifspec;
  1080.  
  1081. /* Additional Prototypes for ALL interfaces */
  1082.  
  1083. /* end of Additional Prototypes */
  1084.  
  1085. #ifdef __cplusplus
  1086. }
  1087. #endif
  1088.  
  1089. #endif
  1090.  
  1091. ///////////////////////////////////////////////////////////////////////
  1092. //
  1093. // IID definitions for interfaces defined in this header file
  1094. //
  1095.  
  1096. #if !defined(_transact_iid_) && defined(INITGUID)
  1097. #define      _transact_iid_
  1098. const IID IID_ITransaction = {0x0fb15084,0xaf41,0x11ce,{0xbd,0x2b,0x20,0x4c,0x4f,0x4f,0x50,0x20}};
  1099. const IID IID_ITransactionDispenser = {0x3A6AD9E1,0x23B9,0x11cf,{0xAD,0x60,0x00,0xAA,0x00,0xA7,0x4C,0xCD}};
  1100. const IID IID_ITransactionOptions = {0x3A6AD9E0,0x23B9,0x11cf,{0xAD,0x60,0x00,0xAA,0x00,0xA7,0x4C,0xCD}};
  1101. const IID IID_ITransactionOutcomeEvents = {0x3A6AD9E2,0x23B9,0x11cf,{0xAD,0x60,0x00,0xAA,0x00,0xA7,0x4C,0xCD}};
  1102. const IID IID_ITransactionCompletionEvents = {0xB38D5220,0x23CE,0x11cf,{0xAD,0x60,0x00,0xAA,0x00,0xA7,0x4C,0xCD}};
  1103. #endif
  1104.  
  1105. ///////////////////////////////////////////////////////////////////////
  1106.  
  1107.