Leaked source code of windows server 2003
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

5664 lines
171 KiB

  1. /* this ALWAYS GENERATED file contains the definitions for the interfaces */
  2. /* File created by MIDL compiler version 6.00.0361 */
  3. /* Compiler settings for txdtc.idl:
  4. Oicf, W1, Zp8, env=Win32 (32b run)
  5. protocol : dce , ms_ext, c_ext, robust
  6. error checks: allocation ref bounds_check enum stub_data
  7. VC __declspec() decoration level:
  8. __declspec(uuid()), __declspec(selectany), __declspec(novtable)
  9. DECLSPEC_UUID(), MIDL_INTERFACE()
  10. */
  11. //@@MIDL_FILE_HEADING( )
  12. #pragma warning( disable: 4049 ) /* more than 64k source lines */
  13. /* verify that the <rpcndr.h> version is high enough to compile this file*/
  14. #ifndef __REQUIRED_RPCNDR_H_VERSION__
  15. #define __REQUIRED_RPCNDR_H_VERSION__ 475
  16. #endif
  17. #include "rpc.h"
  18. #include "rpcndr.h"
  19. #ifndef __RPCNDR_H_VERSION__
  20. #error this stub requires an updated version of <rpcndr.h>
  21. #endif // __RPCNDR_H_VERSION__
  22. #ifndef COM_NO_WINDOWS_H
  23. #include "windows.h"
  24. #include "ole2.h"
  25. #endif /*COM_NO_WINDOWS_H*/
  26. #ifndef __txdtc_h__
  27. #define __txdtc_h__
  28. #if defined(_MSC_VER) && (_MSC_VER >= 1020)
  29. #pragma once
  30. #endif
  31. /* Forward Declarations */
  32. #ifndef __IXATransLookup_FWD_DEFINED__
  33. #define __IXATransLookup_FWD_DEFINED__
  34. typedef interface IXATransLookup IXATransLookup;
  35. #endif /* __IXATransLookup_FWD_DEFINED__ */
  36. #ifndef __IXATransLookup2_FWD_DEFINED__
  37. #define __IXATransLookup2_FWD_DEFINED__
  38. typedef interface IXATransLookup2 IXATransLookup2;
  39. #endif /* __IXATransLookup2_FWD_DEFINED__ */
  40. #ifndef __IResourceManagerSink_FWD_DEFINED__
  41. #define __IResourceManagerSink_FWD_DEFINED__
  42. typedef interface IResourceManagerSink IResourceManagerSink;
  43. #endif /* __IResourceManagerSink_FWD_DEFINED__ */
  44. #ifndef __IResourceManager_FWD_DEFINED__
  45. #define __IResourceManager_FWD_DEFINED__
  46. typedef interface IResourceManager IResourceManager;
  47. #endif /* __IResourceManager_FWD_DEFINED__ */
  48. #ifndef __ILastResourceManager_FWD_DEFINED__
  49. #define __ILastResourceManager_FWD_DEFINED__
  50. typedef interface ILastResourceManager ILastResourceManager;
  51. #endif /* __ILastResourceManager_FWD_DEFINED__ */
  52. #ifndef __IResourceManager2_FWD_DEFINED__
  53. #define __IResourceManager2_FWD_DEFINED__
  54. typedef interface IResourceManager2 IResourceManager2;
  55. #endif /* __IResourceManager2_FWD_DEFINED__ */
  56. #ifndef __IXAConfig_FWD_DEFINED__
  57. #define __IXAConfig_FWD_DEFINED__
  58. typedef interface IXAConfig IXAConfig;
  59. #endif /* __IXAConfig_FWD_DEFINED__ */
  60. #ifndef __IRMHelper_FWD_DEFINED__
  61. #define __IRMHelper_FWD_DEFINED__
  62. typedef interface IRMHelper IRMHelper;
  63. #endif /* __IRMHelper_FWD_DEFINED__ */
  64. #ifndef __IXAObtainRMInfo_FWD_DEFINED__
  65. #define __IXAObtainRMInfo_FWD_DEFINED__
  66. typedef interface IXAObtainRMInfo IXAObtainRMInfo;
  67. #endif /* __IXAObtainRMInfo_FWD_DEFINED__ */
  68. #ifndef __IResourceManagerFactory_FWD_DEFINED__
  69. #define __IResourceManagerFactory_FWD_DEFINED__
  70. typedef interface IResourceManagerFactory IResourceManagerFactory;
  71. #endif /* __IResourceManagerFactory_FWD_DEFINED__ */
  72. #ifndef __IResourceManagerFactory2_FWD_DEFINED__
  73. #define __IResourceManagerFactory2_FWD_DEFINED__
  74. typedef interface IResourceManagerFactory2 IResourceManagerFactory2;
  75. #endif /* __IResourceManagerFactory2_FWD_DEFINED__ */
  76. #ifndef __IPrepareInfo_FWD_DEFINED__
  77. #define __IPrepareInfo_FWD_DEFINED__
  78. typedef interface IPrepareInfo IPrepareInfo;
  79. #endif /* __IPrepareInfo_FWD_DEFINED__ */
  80. #ifndef __IPrepareInfo2_FWD_DEFINED__
  81. #define __IPrepareInfo2_FWD_DEFINED__
  82. typedef interface IPrepareInfo2 IPrepareInfo2;
  83. #endif /* __IPrepareInfo2_FWD_DEFINED__ */
  84. #ifndef __IGetDispenser_FWD_DEFINED__
  85. #define __IGetDispenser_FWD_DEFINED__
  86. typedef interface IGetDispenser IGetDispenser;
  87. #endif /* __IGetDispenser_FWD_DEFINED__ */
  88. #ifndef __ITransactionVoterBallotAsync2_FWD_DEFINED__
  89. #define __ITransactionVoterBallotAsync2_FWD_DEFINED__
  90. typedef interface ITransactionVoterBallotAsync2 ITransactionVoterBallotAsync2;
  91. #endif /* __ITransactionVoterBallotAsync2_FWD_DEFINED__ */
  92. #ifndef __ITransactionVoterNotifyAsync2_FWD_DEFINED__
  93. #define __ITransactionVoterNotifyAsync2_FWD_DEFINED__
  94. typedef interface ITransactionVoterNotifyAsync2 ITransactionVoterNotifyAsync2;
  95. #endif /* __ITransactionVoterNotifyAsync2_FWD_DEFINED__ */
  96. #ifndef __ITransactionVoterFactory2_FWD_DEFINED__
  97. #define __ITransactionVoterFactory2_FWD_DEFINED__
  98. typedef interface ITransactionVoterFactory2 ITransactionVoterFactory2;
  99. #endif /* __ITransactionVoterFactory2_FWD_DEFINED__ */
  100. #ifndef __ITransactionPhase0EnlistmentAsync_FWD_DEFINED__
  101. #define __ITransactionPhase0EnlistmentAsync_FWD_DEFINED__
  102. typedef interface ITransactionPhase0EnlistmentAsync ITransactionPhase0EnlistmentAsync;
  103. #endif /* __ITransactionPhase0EnlistmentAsync_FWD_DEFINED__ */
  104. #ifndef __ITransactionPhase0NotifyAsync_FWD_DEFINED__
  105. #define __ITransactionPhase0NotifyAsync_FWD_DEFINED__
  106. typedef interface ITransactionPhase0NotifyAsync ITransactionPhase0NotifyAsync;
  107. #endif /* __ITransactionPhase0NotifyAsync_FWD_DEFINED__ */
  108. #ifndef __ITransactionPhase0Factory_FWD_DEFINED__
  109. #define __ITransactionPhase0Factory_FWD_DEFINED__
  110. typedef interface ITransactionPhase0Factory ITransactionPhase0Factory;
  111. #endif /* __ITransactionPhase0Factory_FWD_DEFINED__ */
  112. #ifndef __ITransactionTransmitter_FWD_DEFINED__
  113. #define __ITransactionTransmitter_FWD_DEFINED__
  114. typedef interface ITransactionTransmitter ITransactionTransmitter;
  115. #endif /* __ITransactionTransmitter_FWD_DEFINED__ */
  116. #ifndef __ITransactionTransmitterFactory_FWD_DEFINED__
  117. #define __ITransactionTransmitterFactory_FWD_DEFINED__
  118. typedef interface ITransactionTransmitterFactory ITransactionTransmitterFactory;
  119. #endif /* __ITransactionTransmitterFactory_FWD_DEFINED__ */
  120. #ifndef __ITransactionReceiver_FWD_DEFINED__
  121. #define __ITransactionReceiver_FWD_DEFINED__
  122. typedef interface ITransactionReceiver ITransactionReceiver;
  123. #endif /* __ITransactionReceiver_FWD_DEFINED__ */
  124. #ifndef __ITransactionReceiverFactory_FWD_DEFINED__
  125. #define __ITransactionReceiverFactory_FWD_DEFINED__
  126. typedef interface ITransactionReceiverFactory ITransactionReceiverFactory;
  127. #endif /* __ITransactionReceiverFactory_FWD_DEFINED__ */
  128. #ifndef __IDtcLuConfigure_FWD_DEFINED__
  129. #define __IDtcLuConfigure_FWD_DEFINED__
  130. typedef interface IDtcLuConfigure IDtcLuConfigure;
  131. #endif /* __IDtcLuConfigure_FWD_DEFINED__ */
  132. #ifndef __IDtcLuRecovery_FWD_DEFINED__
  133. #define __IDtcLuRecovery_FWD_DEFINED__
  134. typedef interface IDtcLuRecovery IDtcLuRecovery;
  135. #endif /* __IDtcLuRecovery_FWD_DEFINED__ */
  136. #ifndef __IDtcLuRecoveryFactory_FWD_DEFINED__
  137. #define __IDtcLuRecoveryFactory_FWD_DEFINED__
  138. typedef interface IDtcLuRecoveryFactory IDtcLuRecoveryFactory;
  139. #endif /* __IDtcLuRecoveryFactory_FWD_DEFINED__ */
  140. #ifndef __IDtcLuRecoveryInitiatedByDtcTransWork_FWD_DEFINED__
  141. #define __IDtcLuRecoveryInitiatedByDtcTransWork_FWD_DEFINED__
  142. typedef interface IDtcLuRecoveryInitiatedByDtcTransWork IDtcLuRecoveryInitiatedByDtcTransWork;
  143. #endif /* __IDtcLuRecoveryInitiatedByDtcTransWork_FWD_DEFINED__ */
  144. #ifndef __IDtcLuRecoveryInitiatedByDtcStatusWork_FWD_DEFINED__
  145. #define __IDtcLuRecoveryInitiatedByDtcStatusWork_FWD_DEFINED__
  146. typedef interface IDtcLuRecoveryInitiatedByDtcStatusWork IDtcLuRecoveryInitiatedByDtcStatusWork;
  147. #endif /* __IDtcLuRecoveryInitiatedByDtcStatusWork_FWD_DEFINED__ */
  148. #ifndef __IDtcLuRecoveryInitiatedByDtc_FWD_DEFINED__
  149. #define __IDtcLuRecoveryInitiatedByDtc_FWD_DEFINED__
  150. typedef interface IDtcLuRecoveryInitiatedByDtc IDtcLuRecoveryInitiatedByDtc;
  151. #endif /* __IDtcLuRecoveryInitiatedByDtc_FWD_DEFINED__ */
  152. #ifndef __IDtcLuRecoveryInitiatedByLuWork_FWD_DEFINED__
  153. #define __IDtcLuRecoveryInitiatedByLuWork_FWD_DEFINED__
  154. typedef interface IDtcLuRecoveryInitiatedByLuWork IDtcLuRecoveryInitiatedByLuWork;
  155. #endif /* __IDtcLuRecoveryInitiatedByLuWork_FWD_DEFINED__ */
  156. #ifndef __IDtcLuRecoveryInitiatedByLu_FWD_DEFINED__
  157. #define __IDtcLuRecoveryInitiatedByLu_FWD_DEFINED__
  158. typedef interface IDtcLuRecoveryInitiatedByLu IDtcLuRecoveryInitiatedByLu;
  159. #endif /* __IDtcLuRecoveryInitiatedByLu_FWD_DEFINED__ */
  160. #ifndef __IDtcLuRmEnlistment_FWD_DEFINED__
  161. #define __IDtcLuRmEnlistment_FWD_DEFINED__
  162. typedef interface IDtcLuRmEnlistment IDtcLuRmEnlistment;
  163. #endif /* __IDtcLuRmEnlistment_FWD_DEFINED__ */
  164. #ifndef __IDtcLuRmEnlistmentSink_FWD_DEFINED__
  165. #define __IDtcLuRmEnlistmentSink_FWD_DEFINED__
  166. typedef interface IDtcLuRmEnlistmentSink IDtcLuRmEnlistmentSink;
  167. #endif /* __IDtcLuRmEnlistmentSink_FWD_DEFINED__ */
  168. #ifndef __IDtcLuRmEnlistmentFactory_FWD_DEFINED__
  169. #define __IDtcLuRmEnlistmentFactory_FWD_DEFINED__
  170. typedef interface IDtcLuRmEnlistmentFactory IDtcLuRmEnlistmentFactory;
  171. #endif /* __IDtcLuRmEnlistmentFactory_FWD_DEFINED__ */
  172. #ifndef __IDtcLuSubordinateDtc_FWD_DEFINED__
  173. #define __IDtcLuSubordinateDtc_FWD_DEFINED__
  174. typedef interface IDtcLuSubordinateDtc IDtcLuSubordinateDtc;
  175. #endif /* __IDtcLuSubordinateDtc_FWD_DEFINED__ */
  176. #ifndef __IDtcLuSubordinateDtcSink_FWD_DEFINED__
  177. #define __IDtcLuSubordinateDtcSink_FWD_DEFINED__
  178. typedef interface IDtcLuSubordinateDtcSink IDtcLuSubordinateDtcSink;
  179. #endif /* __IDtcLuSubordinateDtcSink_FWD_DEFINED__ */
  180. #ifndef __IDtcLuSubordinateDtcFactory_FWD_DEFINED__
  181. #define __IDtcLuSubordinateDtcFactory_FWD_DEFINED__
  182. typedef interface IDtcLuSubordinateDtcFactory IDtcLuSubordinateDtcFactory;
  183. #endif /* __IDtcLuSubordinateDtcFactory_FWD_DEFINED__ */
  184. /* header files for imported files */
  185. #include "txcoord.h"
  186. #ifdef __cplusplus
  187. extern "C"{
  188. #endif
  189. void * __RPC_USER MIDL_user_allocate(size_t);
  190. void __RPC_USER MIDL_user_free( void * );
  191. /* interface __MIDL_itf_txdtc_0000 */
  192. /* [local] */
  193. #define XACTTOMSG(dwXact) (dwXact-0x00040000+0x40000000)
  194. typedef
  195. enum XACT_DTC_CONSTANTS
  196. { XACT_E_CONNECTION_REQUEST_DENIED = 0x8004d100L,
  197. XACT_E_TOOMANY_ENLISTMENTS = 0x8004d101L,
  198. XACT_E_DUPLICATE_GUID = 0x8004d102L,
  199. XACT_E_NOTSINGLEPHASE = 0x8004d103L,
  200. XACT_E_RECOVERYALREADYDONE = 0x8004d104L,
  201. XACT_E_PROTOCOL = 0x8004d105L,
  202. XACT_E_RM_FAILURE = 0x8004d106L,
  203. XACT_E_RECOVERY_FAILED = 0x8004d107L,
  204. XACT_E_LU_NOT_FOUND = 0x8004d108L,
  205. XACT_E_DUPLICATE_LU = 0x8004d109L,
  206. XACT_E_LU_NOT_CONNECTED = 0x8004d10aL,
  207. XACT_E_DUPLICATE_TRANSID = 0x8004d10bL,
  208. XACT_E_LU_BUSY = 0x8004d10cL,
  209. XACT_E_LU_NO_RECOVERY_PROCESS = 0x8004d10dL,
  210. XACT_E_LU_DOWN = 0x8004d10eL,
  211. XACT_E_LU_RECOVERING = 0x8004d10fL,
  212. XACT_E_LU_RECOVERY_MISMATCH = 0x8004d110L,
  213. XACT_E_RM_UNAVAILABLE = 0x8004d111L,
  214. XACT_E_LRMRECOVERYALREADYDONE = 0x8004d112L,
  215. XACT_E_NOLASTRESOURCEINTERFACE = 0x8004d113L,
  216. XACT_S_NONOTIFY = 0x4d100L,
  217. XACT_OK_NONOTIFY = 0x4d101L,
  218. dwUSER_MS_SQLSERVER = 0xffff
  219. } XACT_DTC_CONSTANTS;
  220. #ifndef _XID_T_DEFINED
  221. #define _XID_T_DEFINED
  222. typedef struct xid_t
  223. {
  224. long formatID;
  225. long gtrid_length;
  226. long bqual_length;
  227. char data[ 128 ];
  228. } XID;
  229. #endif
  230. #ifndef _XA_SWITCH_T_DEFINED
  231. #define _XA_SWITCH_T_DEFINED
  232. typedef struct xa_switch_t
  233. {
  234. char name[ 32 ];
  235. long flags;
  236. long version;
  237. int ( __cdecl *xa_open_entry )(
  238. char *__MIDL_0004,
  239. int __MIDL_0005,
  240. long __MIDL_0006);
  241. int ( __cdecl *xa_close_entry )(
  242. char *__MIDL_0008,
  243. int __MIDL_0009,
  244. long __MIDL_0010);
  245. int ( __cdecl *xa_start_entry )(
  246. XID *__MIDL_0012,
  247. int __MIDL_0013,
  248. long __MIDL_0014);
  249. int ( __cdecl *xa_end_entry )(
  250. XID *__MIDL_0016,
  251. int __MIDL_0017,
  252. long __MIDL_0018);
  253. int ( __cdecl *xa_rollback_entry )(
  254. XID *__MIDL_0020,
  255. int __MIDL_0021,
  256. long __MIDL_0022);
  257. int ( __cdecl *xa_prepare_entry )(
  258. XID *__MIDL_0024,
  259. int __MIDL_0025,
  260. long __MIDL_0026);
  261. int ( __cdecl *xa_commit_entry )(
  262. XID *__MIDL_0028,
  263. int __MIDL_0029,
  264. long __MIDL_0030);
  265. int ( __cdecl *xa_recover_entry )(
  266. XID *__MIDL_0032,
  267. long __MIDL_0033,
  268. int __MIDL_0034,
  269. long __MIDL_0035);
  270. int ( __cdecl *xa_forget_entry )(
  271. XID *__MIDL_0037,
  272. int __MIDL_0038,
  273. long __MIDL_0039);
  274. int ( __cdecl *xa_complete_entry )(
  275. int *__MIDL_0041,
  276. int *__MIDL_0042,
  277. int __MIDL_0043,
  278. long __MIDL_0044);
  279. } xa_switch_t;
  280. #endif
  281. extern RPC_IF_HANDLE __MIDL_itf_txdtc_0000_v0_0_c_ifspec;
  282. extern RPC_IF_HANDLE __MIDL_itf_txdtc_0000_v0_0_s_ifspec;
  283. #ifndef __IXATransLookup_INTERFACE_DEFINED__
  284. #define __IXATransLookup_INTERFACE_DEFINED__
  285. /* interface IXATransLookup */
  286. /* [unique][object][uuid] */
  287. EXTERN_C const IID IID_IXATransLookup;
  288. #if defined(__cplusplus) && !defined(CINTERFACE)
  289. MIDL_INTERFACE("F3B1F131-EEDA-11ce-AED4-00AA0051E2C4")
  290. IXATransLookup : public IUnknown
  291. {
  292. public:
  293. virtual HRESULT STDMETHODCALLTYPE Lookup(
  294. /* [out] */ ITransaction **ppTransaction) = 0;
  295. };
  296. #else /* C style interface */
  297. typedef struct IXATransLookupVtbl
  298. {
  299. BEGIN_INTERFACE
  300. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  301. IXATransLookup * This,
  302. /* [in] */ REFIID riid,
  303. /* [iid_is][out] */ void **ppvObject);
  304. ULONG ( STDMETHODCALLTYPE *AddRef )(
  305. IXATransLookup * This);
  306. ULONG ( STDMETHODCALLTYPE *Release )(
  307. IXATransLookup * This);
  308. HRESULT ( STDMETHODCALLTYPE *Lookup )(
  309. IXATransLookup * This,
  310. /* [out] */ ITransaction **ppTransaction);
  311. END_INTERFACE
  312. } IXATransLookupVtbl;
  313. interface IXATransLookup
  314. {
  315. CONST_VTBL struct IXATransLookupVtbl *lpVtbl;
  316. };
  317. #ifdef COBJMACROS
  318. #define IXATransLookup_QueryInterface(This,riid,ppvObject) \
  319. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  320. #define IXATransLookup_AddRef(This) \
  321. (This)->lpVtbl -> AddRef(This)
  322. #define IXATransLookup_Release(This) \
  323. (This)->lpVtbl -> Release(This)
  324. #define IXATransLookup_Lookup(This,ppTransaction) \
  325. (This)->lpVtbl -> Lookup(This,ppTransaction)
  326. #endif /* COBJMACROS */
  327. #endif /* C style interface */
  328. HRESULT STDMETHODCALLTYPE IXATransLookup_Lookup_Proxy(
  329. IXATransLookup * This,
  330. /* [out] */ ITransaction **ppTransaction);
  331. void __RPC_STUB IXATransLookup_Lookup_Stub(
  332. IRpcStubBuffer *This,
  333. IRpcChannelBuffer *_pRpcChannelBuffer,
  334. PRPC_MESSAGE _pRpcMessage,
  335. DWORD *_pdwStubPhase);
  336. #endif /* __IXATransLookup_INTERFACE_DEFINED__ */
  337. #ifndef __IXATransLookup2_INTERFACE_DEFINED__
  338. #define __IXATransLookup2_INTERFACE_DEFINED__
  339. /* interface IXATransLookup2 */
  340. /* [unique][object][uuid] */
  341. EXTERN_C const IID IID_IXATransLookup2;
  342. #if defined(__cplusplus) && !defined(CINTERFACE)
  343. MIDL_INTERFACE("BF193C85-0D1A-4290-B88F-D2CB8873D1E7")
  344. IXATransLookup2 : public IUnknown
  345. {
  346. public:
  347. virtual HRESULT STDMETHODCALLTYPE Lookup(
  348. /* [in] */ XID *pXID,
  349. /* [out] */ ITransaction **ppTransaction) = 0;
  350. };
  351. #else /* C style interface */
  352. typedef struct IXATransLookup2Vtbl
  353. {
  354. BEGIN_INTERFACE
  355. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  356. IXATransLookup2 * This,
  357. /* [in] */ REFIID riid,
  358. /* [iid_is][out] */ void **ppvObject);
  359. ULONG ( STDMETHODCALLTYPE *AddRef )(
  360. IXATransLookup2 * This);
  361. ULONG ( STDMETHODCALLTYPE *Release )(
  362. IXATransLookup2 * This);
  363. HRESULT ( STDMETHODCALLTYPE *Lookup )(
  364. IXATransLookup2 * This,
  365. /* [in] */ XID *pXID,
  366. /* [out] */ ITransaction **ppTransaction);
  367. END_INTERFACE
  368. } IXATransLookup2Vtbl;
  369. interface IXATransLookup2
  370. {
  371. CONST_VTBL struct IXATransLookup2Vtbl *lpVtbl;
  372. };
  373. #ifdef COBJMACROS
  374. #define IXATransLookup2_QueryInterface(This,riid,ppvObject) \
  375. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  376. #define IXATransLookup2_AddRef(This) \
  377. (This)->lpVtbl -> AddRef(This)
  378. #define IXATransLookup2_Release(This) \
  379. (This)->lpVtbl -> Release(This)
  380. #define IXATransLookup2_Lookup(This,pXID,ppTransaction) \
  381. (This)->lpVtbl -> Lookup(This,pXID,ppTransaction)
  382. #endif /* COBJMACROS */
  383. #endif /* C style interface */
  384. HRESULT STDMETHODCALLTYPE IXATransLookup2_Lookup_Proxy(
  385. IXATransLookup2 * This,
  386. /* [in] */ XID *pXID,
  387. /* [out] */ ITransaction **ppTransaction);
  388. void __RPC_STUB IXATransLookup2_Lookup_Stub(
  389. IRpcStubBuffer *This,
  390. IRpcChannelBuffer *_pRpcChannelBuffer,
  391. PRPC_MESSAGE _pRpcMessage,
  392. DWORD *_pdwStubPhase);
  393. #endif /* __IXATransLookup2_INTERFACE_DEFINED__ */
  394. #ifndef __IResourceManagerSink_INTERFACE_DEFINED__
  395. #define __IResourceManagerSink_INTERFACE_DEFINED__
  396. /* interface IResourceManagerSink */
  397. /* [unique][object][uuid] */
  398. EXTERN_C const IID IID_IResourceManagerSink;
  399. #if defined(__cplusplus) && !defined(CINTERFACE)
  400. MIDL_INTERFACE("0D563181-DEFB-11ce-AED1-00AA0051E2C4")
  401. IResourceManagerSink : public IUnknown
  402. {
  403. public:
  404. virtual HRESULT STDMETHODCALLTYPE TMDown( void) = 0;
  405. };
  406. #else /* C style interface */
  407. typedef struct IResourceManagerSinkVtbl
  408. {
  409. BEGIN_INTERFACE
  410. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  411. IResourceManagerSink * This,
  412. /* [in] */ REFIID riid,
  413. /* [iid_is][out] */ void **ppvObject);
  414. ULONG ( STDMETHODCALLTYPE *AddRef )(
  415. IResourceManagerSink * This);
  416. ULONG ( STDMETHODCALLTYPE *Release )(
  417. IResourceManagerSink * This);
  418. HRESULT ( STDMETHODCALLTYPE *TMDown )(
  419. IResourceManagerSink * This);
  420. END_INTERFACE
  421. } IResourceManagerSinkVtbl;
  422. interface IResourceManagerSink
  423. {
  424. CONST_VTBL struct IResourceManagerSinkVtbl *lpVtbl;
  425. };
  426. #ifdef COBJMACROS
  427. #define IResourceManagerSink_QueryInterface(This,riid,ppvObject) \
  428. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  429. #define IResourceManagerSink_AddRef(This) \
  430. (This)->lpVtbl -> AddRef(This)
  431. #define IResourceManagerSink_Release(This) \
  432. (This)->lpVtbl -> Release(This)
  433. #define IResourceManagerSink_TMDown(This) \
  434. (This)->lpVtbl -> TMDown(This)
  435. #endif /* COBJMACROS */
  436. #endif /* C style interface */
  437. HRESULT STDMETHODCALLTYPE IResourceManagerSink_TMDown_Proxy(
  438. IResourceManagerSink * This);
  439. void __RPC_STUB IResourceManagerSink_TMDown_Stub(
  440. IRpcStubBuffer *This,
  441. IRpcChannelBuffer *_pRpcChannelBuffer,
  442. PRPC_MESSAGE _pRpcMessage,
  443. DWORD *_pdwStubPhase);
  444. #endif /* __IResourceManagerSink_INTERFACE_DEFINED__ */
  445. #ifndef __IResourceManager_INTERFACE_DEFINED__
  446. #define __IResourceManager_INTERFACE_DEFINED__
  447. /* interface IResourceManager */
  448. /* [unique][object][uuid] */
  449. EXTERN_C const IID IID_IResourceManager;
  450. #if defined(__cplusplus) && !defined(CINTERFACE)
  451. MIDL_INTERFACE("13741d21-87eb-11ce-8081-0080c758527e")
  452. IResourceManager : public IUnknown
  453. {
  454. public:
  455. virtual HRESULT STDMETHODCALLTYPE Enlist(
  456. /* [in] */ ITransaction *pTransaction,
  457. /* [in] */ ITransactionResourceAsync *pRes,
  458. /* [out] */ XACTUOW *pUOW,
  459. /* [out] */ LONG *pisoLevel,
  460. /* [out] */ ITransactionEnlistmentAsync **ppEnlist) = 0;
  461. virtual HRESULT STDMETHODCALLTYPE Reenlist(
  462. /* [size_is][in] */ byte *pPrepInfo,
  463. /* [in] */ ULONG cbPrepInfo,
  464. /* [in] */ DWORD lTimeout,
  465. /* [out] */ XACTSTAT *pXactStat) = 0;
  466. virtual HRESULT STDMETHODCALLTYPE ReenlistmentComplete( void) = 0;
  467. virtual HRESULT STDMETHODCALLTYPE GetDistributedTransactionManager(
  468. /* [in] */ REFIID iid,
  469. /* [iid_is][out] */ void **ppvObject) = 0;
  470. };
  471. #else /* C style interface */
  472. typedef struct IResourceManagerVtbl
  473. {
  474. BEGIN_INTERFACE
  475. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  476. IResourceManager * This,
  477. /* [in] */ REFIID riid,
  478. /* [iid_is][out] */ void **ppvObject);
  479. ULONG ( STDMETHODCALLTYPE *AddRef )(
  480. IResourceManager * This);
  481. ULONG ( STDMETHODCALLTYPE *Release )(
  482. IResourceManager * This);
  483. HRESULT ( STDMETHODCALLTYPE *Enlist )(
  484. IResourceManager * This,
  485. /* [in] */ ITransaction *pTransaction,
  486. /* [in] */ ITransactionResourceAsync *pRes,
  487. /* [out] */ XACTUOW *pUOW,
  488. /* [out] */ LONG *pisoLevel,
  489. /* [out] */ ITransactionEnlistmentAsync **ppEnlist);
  490. HRESULT ( STDMETHODCALLTYPE *Reenlist )(
  491. IResourceManager * This,
  492. /* [size_is][in] */ byte *pPrepInfo,
  493. /* [in] */ ULONG cbPrepInfo,
  494. /* [in] */ DWORD lTimeout,
  495. /* [out] */ XACTSTAT *pXactStat);
  496. HRESULT ( STDMETHODCALLTYPE *ReenlistmentComplete )(
  497. IResourceManager * This);
  498. HRESULT ( STDMETHODCALLTYPE *GetDistributedTransactionManager )(
  499. IResourceManager * This,
  500. /* [in] */ REFIID iid,
  501. /* [iid_is][out] */ void **ppvObject);
  502. END_INTERFACE
  503. } IResourceManagerVtbl;
  504. interface IResourceManager
  505. {
  506. CONST_VTBL struct IResourceManagerVtbl *lpVtbl;
  507. };
  508. #ifdef COBJMACROS
  509. #define IResourceManager_QueryInterface(This,riid,ppvObject) \
  510. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  511. #define IResourceManager_AddRef(This) \
  512. (This)->lpVtbl -> AddRef(This)
  513. #define IResourceManager_Release(This) \
  514. (This)->lpVtbl -> Release(This)
  515. #define IResourceManager_Enlist(This,pTransaction,pRes,pUOW,pisoLevel,ppEnlist) \
  516. (This)->lpVtbl -> Enlist(This,pTransaction,pRes,pUOW,pisoLevel,ppEnlist)
  517. #define IResourceManager_Reenlist(This,pPrepInfo,cbPrepInfo,lTimeout,pXactStat) \
  518. (This)->lpVtbl -> Reenlist(This,pPrepInfo,cbPrepInfo,lTimeout,pXactStat)
  519. #define IResourceManager_ReenlistmentComplete(This) \
  520. (This)->lpVtbl -> ReenlistmentComplete(This)
  521. #define IResourceManager_GetDistributedTransactionManager(This,iid,ppvObject) \
  522. (This)->lpVtbl -> GetDistributedTransactionManager(This,iid,ppvObject)
  523. #endif /* COBJMACROS */
  524. #endif /* C style interface */
  525. HRESULT STDMETHODCALLTYPE IResourceManager_Enlist_Proxy(
  526. IResourceManager * This,
  527. /* [in] */ ITransaction *pTransaction,
  528. /* [in] */ ITransactionResourceAsync *pRes,
  529. /* [out] */ XACTUOW *pUOW,
  530. /* [out] */ LONG *pisoLevel,
  531. /* [out] */ ITransactionEnlistmentAsync **ppEnlist);
  532. void __RPC_STUB IResourceManager_Enlist_Stub(
  533. IRpcStubBuffer *This,
  534. IRpcChannelBuffer *_pRpcChannelBuffer,
  535. PRPC_MESSAGE _pRpcMessage,
  536. DWORD *_pdwStubPhase);
  537. HRESULT STDMETHODCALLTYPE IResourceManager_Reenlist_Proxy(
  538. IResourceManager * This,
  539. /* [size_is][in] */ byte *pPrepInfo,
  540. /* [in] */ ULONG cbPrepInfo,
  541. /* [in] */ DWORD lTimeout,
  542. /* [out] */ XACTSTAT *pXactStat);
  543. void __RPC_STUB IResourceManager_Reenlist_Stub(
  544. IRpcStubBuffer *This,
  545. IRpcChannelBuffer *_pRpcChannelBuffer,
  546. PRPC_MESSAGE _pRpcMessage,
  547. DWORD *_pdwStubPhase);
  548. HRESULT STDMETHODCALLTYPE IResourceManager_ReenlistmentComplete_Proxy(
  549. IResourceManager * This);
  550. void __RPC_STUB IResourceManager_ReenlistmentComplete_Stub(
  551. IRpcStubBuffer *This,
  552. IRpcChannelBuffer *_pRpcChannelBuffer,
  553. PRPC_MESSAGE _pRpcMessage,
  554. DWORD *_pdwStubPhase);
  555. HRESULT STDMETHODCALLTYPE IResourceManager_GetDistributedTransactionManager_Proxy(
  556. IResourceManager * This,
  557. /* [in] */ REFIID iid,
  558. /* [iid_is][out] */ void **ppvObject);
  559. void __RPC_STUB IResourceManager_GetDistributedTransactionManager_Stub(
  560. IRpcStubBuffer *This,
  561. IRpcChannelBuffer *_pRpcChannelBuffer,
  562. PRPC_MESSAGE _pRpcMessage,
  563. DWORD *_pdwStubPhase);
  564. #endif /* __IResourceManager_INTERFACE_DEFINED__ */
  565. #ifndef __ILastResourceManager_INTERFACE_DEFINED__
  566. #define __ILastResourceManager_INTERFACE_DEFINED__
  567. /* interface ILastResourceManager */
  568. /* [unique][object][uuid] */
  569. EXTERN_C const IID IID_ILastResourceManager;
  570. #if defined(__cplusplus) && !defined(CINTERFACE)
  571. MIDL_INTERFACE("4D964AD4-5B33-11d3-8A91-00C04F79EB6D")
  572. ILastResourceManager : public IUnknown
  573. {
  574. public:
  575. virtual HRESULT STDMETHODCALLTYPE TransactionCommitted(
  576. /* [size_is][in] */ byte *pPrepInfo,
  577. /* [in] */ ULONG cbPrepInfo) = 0;
  578. virtual HRESULT STDMETHODCALLTYPE RecoveryDone( void) = 0;
  579. };
  580. #else /* C style interface */
  581. typedef struct ILastResourceManagerVtbl
  582. {
  583. BEGIN_INTERFACE
  584. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  585. ILastResourceManager * This,
  586. /* [in] */ REFIID riid,
  587. /* [iid_is][out] */ void **ppvObject);
  588. ULONG ( STDMETHODCALLTYPE *AddRef )(
  589. ILastResourceManager * This);
  590. ULONG ( STDMETHODCALLTYPE *Release )(
  591. ILastResourceManager * This);
  592. HRESULT ( STDMETHODCALLTYPE *TransactionCommitted )(
  593. ILastResourceManager * This,
  594. /* [size_is][in] */ byte *pPrepInfo,
  595. /* [in] */ ULONG cbPrepInfo);
  596. HRESULT ( STDMETHODCALLTYPE *RecoveryDone )(
  597. ILastResourceManager * This);
  598. END_INTERFACE
  599. } ILastResourceManagerVtbl;
  600. interface ILastResourceManager
  601. {
  602. CONST_VTBL struct ILastResourceManagerVtbl *lpVtbl;
  603. };
  604. #ifdef COBJMACROS
  605. #define ILastResourceManager_QueryInterface(This,riid,ppvObject) \
  606. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  607. #define ILastResourceManager_AddRef(This) \
  608. (This)->lpVtbl -> AddRef(This)
  609. #define ILastResourceManager_Release(This) \
  610. (This)->lpVtbl -> Release(This)
  611. #define ILastResourceManager_TransactionCommitted(This,pPrepInfo,cbPrepInfo) \
  612. (This)->lpVtbl -> TransactionCommitted(This,pPrepInfo,cbPrepInfo)
  613. #define ILastResourceManager_RecoveryDone(This) \
  614. (This)->lpVtbl -> RecoveryDone(This)
  615. #endif /* COBJMACROS */
  616. #endif /* C style interface */
  617. HRESULT STDMETHODCALLTYPE ILastResourceManager_TransactionCommitted_Proxy(
  618. ILastResourceManager * This,
  619. /* [size_is][in] */ byte *pPrepInfo,
  620. /* [in] */ ULONG cbPrepInfo);
  621. void __RPC_STUB ILastResourceManager_TransactionCommitted_Stub(
  622. IRpcStubBuffer *This,
  623. IRpcChannelBuffer *_pRpcChannelBuffer,
  624. PRPC_MESSAGE _pRpcMessage,
  625. DWORD *_pdwStubPhase);
  626. HRESULT STDMETHODCALLTYPE ILastResourceManager_RecoveryDone_Proxy(
  627. ILastResourceManager * This);
  628. void __RPC_STUB ILastResourceManager_RecoveryDone_Stub(
  629. IRpcStubBuffer *This,
  630. IRpcChannelBuffer *_pRpcChannelBuffer,
  631. PRPC_MESSAGE _pRpcMessage,
  632. DWORD *_pdwStubPhase);
  633. #endif /* __ILastResourceManager_INTERFACE_DEFINED__ */
  634. #ifndef __IResourceManager2_INTERFACE_DEFINED__
  635. #define __IResourceManager2_INTERFACE_DEFINED__
  636. /* interface IResourceManager2 */
  637. /* [unique][object][uuid] */
  638. EXTERN_C const IID IID_IResourceManager2;
  639. #if defined(__cplusplus) && !defined(CINTERFACE)
  640. MIDL_INTERFACE("D136C69A-F749-11d1-8F47-00C04F8EE57D")
  641. IResourceManager2 : public IResourceManager
  642. {
  643. public:
  644. virtual HRESULT STDMETHODCALLTYPE Enlist2(
  645. /* [in] */ ITransaction *pTransaction,
  646. /* [in] */ ITransactionResourceAsync *pResAsync,
  647. /* [out] */ XACTUOW *pUOW,
  648. /* [out] */ LONG *pisoLevel,
  649. /* [out] */ XID *pXid,
  650. /* [out] */ ITransactionEnlistmentAsync **ppEnlist) = 0;
  651. virtual HRESULT STDMETHODCALLTYPE Reenlist2(
  652. /* [in] */ XID *pXid,
  653. /* [in] */ DWORD dwTimeout,
  654. /* [out] */ XACTSTAT *pXactStat) = 0;
  655. };
  656. #else /* C style interface */
  657. typedef struct IResourceManager2Vtbl
  658. {
  659. BEGIN_INTERFACE
  660. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  661. IResourceManager2 * This,
  662. /* [in] */ REFIID riid,
  663. /* [iid_is][out] */ void **ppvObject);
  664. ULONG ( STDMETHODCALLTYPE *AddRef )(
  665. IResourceManager2 * This);
  666. ULONG ( STDMETHODCALLTYPE *Release )(
  667. IResourceManager2 * This);
  668. HRESULT ( STDMETHODCALLTYPE *Enlist )(
  669. IResourceManager2 * This,
  670. /* [in] */ ITransaction *pTransaction,
  671. /* [in] */ ITransactionResourceAsync *pRes,
  672. /* [out] */ XACTUOW *pUOW,
  673. /* [out] */ LONG *pisoLevel,
  674. /* [out] */ ITransactionEnlistmentAsync **ppEnlist);
  675. HRESULT ( STDMETHODCALLTYPE *Reenlist )(
  676. IResourceManager2 * This,
  677. /* [size_is][in] */ byte *pPrepInfo,
  678. /* [in] */ ULONG cbPrepInfo,
  679. /* [in] */ DWORD lTimeout,
  680. /* [out] */ XACTSTAT *pXactStat);
  681. HRESULT ( STDMETHODCALLTYPE *ReenlistmentComplete )(
  682. IResourceManager2 * This);
  683. HRESULT ( STDMETHODCALLTYPE *GetDistributedTransactionManager )(
  684. IResourceManager2 * This,
  685. /* [in] */ REFIID iid,
  686. /* [iid_is][out] */ void **ppvObject);
  687. HRESULT ( STDMETHODCALLTYPE *Enlist2 )(
  688. IResourceManager2 * This,
  689. /* [in] */ ITransaction *pTransaction,
  690. /* [in] */ ITransactionResourceAsync *pResAsync,
  691. /* [out] */ XACTUOW *pUOW,
  692. /* [out] */ LONG *pisoLevel,
  693. /* [out] */ XID *pXid,
  694. /* [out] */ ITransactionEnlistmentAsync **ppEnlist);
  695. HRESULT ( STDMETHODCALLTYPE *Reenlist2 )(
  696. IResourceManager2 * This,
  697. /* [in] */ XID *pXid,
  698. /* [in] */ DWORD dwTimeout,
  699. /* [out] */ XACTSTAT *pXactStat);
  700. END_INTERFACE
  701. } IResourceManager2Vtbl;
  702. interface IResourceManager2
  703. {
  704. CONST_VTBL struct IResourceManager2Vtbl *lpVtbl;
  705. };
  706. #ifdef COBJMACROS
  707. #define IResourceManager2_QueryInterface(This,riid,ppvObject) \
  708. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  709. #define IResourceManager2_AddRef(This) \
  710. (This)->lpVtbl -> AddRef(This)
  711. #define IResourceManager2_Release(This) \
  712. (This)->lpVtbl -> Release(This)
  713. #define IResourceManager2_Enlist(This,pTransaction,pRes,pUOW,pisoLevel,ppEnlist) \
  714. (This)->lpVtbl -> Enlist(This,pTransaction,pRes,pUOW,pisoLevel,ppEnlist)
  715. #define IResourceManager2_Reenlist(This,pPrepInfo,cbPrepInfo,lTimeout,pXactStat) \
  716. (This)->lpVtbl -> Reenlist(This,pPrepInfo,cbPrepInfo,lTimeout,pXactStat)
  717. #define IResourceManager2_ReenlistmentComplete(This) \
  718. (This)->lpVtbl -> ReenlistmentComplete(This)
  719. #define IResourceManager2_GetDistributedTransactionManager(This,iid,ppvObject) \
  720. (This)->lpVtbl -> GetDistributedTransactionManager(This,iid,ppvObject)
  721. #define IResourceManager2_Enlist2(This,pTransaction,pResAsync,pUOW,pisoLevel,pXid,ppEnlist) \
  722. (This)->lpVtbl -> Enlist2(This,pTransaction,pResAsync,pUOW,pisoLevel,pXid,ppEnlist)
  723. #define IResourceManager2_Reenlist2(This,pXid,dwTimeout,pXactStat) \
  724. (This)->lpVtbl -> Reenlist2(This,pXid,dwTimeout,pXactStat)
  725. #endif /* COBJMACROS */
  726. #endif /* C style interface */
  727. HRESULT STDMETHODCALLTYPE IResourceManager2_Enlist2_Proxy(
  728. IResourceManager2 * This,
  729. /* [in] */ ITransaction *pTransaction,
  730. /* [in] */ ITransactionResourceAsync *pResAsync,
  731. /* [out] */ XACTUOW *pUOW,
  732. /* [out] */ LONG *pisoLevel,
  733. /* [out] */ XID *pXid,
  734. /* [out] */ ITransactionEnlistmentAsync **ppEnlist);
  735. void __RPC_STUB IResourceManager2_Enlist2_Stub(
  736. IRpcStubBuffer *This,
  737. IRpcChannelBuffer *_pRpcChannelBuffer,
  738. PRPC_MESSAGE _pRpcMessage,
  739. DWORD *_pdwStubPhase);
  740. HRESULT STDMETHODCALLTYPE IResourceManager2_Reenlist2_Proxy(
  741. IResourceManager2 * This,
  742. /* [in] */ XID *pXid,
  743. /* [in] */ DWORD dwTimeout,
  744. /* [out] */ XACTSTAT *pXactStat);
  745. void __RPC_STUB IResourceManager2_Reenlist2_Stub(
  746. IRpcStubBuffer *This,
  747. IRpcChannelBuffer *_pRpcChannelBuffer,
  748. PRPC_MESSAGE _pRpcMessage,
  749. DWORD *_pdwStubPhase);
  750. #endif /* __IResourceManager2_INTERFACE_DEFINED__ */
  751. #ifndef __IXAConfig_INTERFACE_DEFINED__
  752. #define __IXAConfig_INTERFACE_DEFINED__
  753. /* interface IXAConfig */
  754. /* [unique][object][uuid] */
  755. EXTERN_C const IID IID_IXAConfig;
  756. #if defined(__cplusplus) && !defined(CINTERFACE)
  757. MIDL_INTERFACE("C8A6E3A1-9A8C-11cf-A308-00A0C905416E")
  758. IXAConfig : public IUnknown
  759. {
  760. public:
  761. virtual HRESULT STDMETHODCALLTYPE Initialize(
  762. /* [in] */ GUID clsidHelperDll) = 0;
  763. virtual HRESULT STDMETHODCALLTYPE Terminate( void) = 0;
  764. };
  765. #else /* C style interface */
  766. typedef struct IXAConfigVtbl
  767. {
  768. BEGIN_INTERFACE
  769. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  770. IXAConfig * This,
  771. /* [in] */ REFIID riid,
  772. /* [iid_is][out] */ void **ppvObject);
  773. ULONG ( STDMETHODCALLTYPE *AddRef )(
  774. IXAConfig * This);
  775. ULONG ( STDMETHODCALLTYPE *Release )(
  776. IXAConfig * This);
  777. HRESULT ( STDMETHODCALLTYPE *Initialize )(
  778. IXAConfig * This,
  779. /* [in] */ GUID clsidHelperDll);
  780. HRESULT ( STDMETHODCALLTYPE *Terminate )(
  781. IXAConfig * This);
  782. END_INTERFACE
  783. } IXAConfigVtbl;
  784. interface IXAConfig
  785. {
  786. CONST_VTBL struct IXAConfigVtbl *lpVtbl;
  787. };
  788. #ifdef COBJMACROS
  789. #define IXAConfig_QueryInterface(This,riid,ppvObject) \
  790. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  791. #define IXAConfig_AddRef(This) \
  792. (This)->lpVtbl -> AddRef(This)
  793. #define IXAConfig_Release(This) \
  794. (This)->lpVtbl -> Release(This)
  795. #define IXAConfig_Initialize(This,clsidHelperDll) \
  796. (This)->lpVtbl -> Initialize(This,clsidHelperDll)
  797. #define IXAConfig_Terminate(This) \
  798. (This)->lpVtbl -> Terminate(This)
  799. #endif /* COBJMACROS */
  800. #endif /* C style interface */
  801. HRESULT STDMETHODCALLTYPE IXAConfig_Initialize_Proxy(
  802. IXAConfig * This,
  803. /* [in] */ GUID clsidHelperDll);
  804. void __RPC_STUB IXAConfig_Initialize_Stub(
  805. IRpcStubBuffer *This,
  806. IRpcChannelBuffer *_pRpcChannelBuffer,
  807. PRPC_MESSAGE _pRpcMessage,
  808. DWORD *_pdwStubPhase);
  809. HRESULT STDMETHODCALLTYPE IXAConfig_Terminate_Proxy(
  810. IXAConfig * This);
  811. void __RPC_STUB IXAConfig_Terminate_Stub(
  812. IRpcStubBuffer *This,
  813. IRpcChannelBuffer *_pRpcChannelBuffer,
  814. PRPC_MESSAGE _pRpcMessage,
  815. DWORD *_pdwStubPhase);
  816. #endif /* __IXAConfig_INTERFACE_DEFINED__ */
  817. #ifndef __IRMHelper_INTERFACE_DEFINED__
  818. #define __IRMHelper_INTERFACE_DEFINED__
  819. /* interface IRMHelper */
  820. /* [local][unique][object][uuid] */
  821. EXTERN_C const IID IID_IRMHelper;
  822. #if defined(__cplusplus) && !defined(CINTERFACE)
  823. MIDL_INTERFACE("E793F6D1-F53D-11cf-A60D-00A0C905416E")
  824. IRMHelper : public IUnknown
  825. {
  826. public:
  827. virtual HRESULT STDMETHODCALLTYPE RMCount(
  828. /* [in] */ DWORD dwcTotalNumberOfRMs) = 0;
  829. virtual HRESULT STDMETHODCALLTYPE RMInfo(
  830. /* [in] */ xa_switch_t *pXa_Switch,
  831. /* [in] */ BOOL fCDeclCallingConv,
  832. /* [string][in] */ char *pszOpenString,
  833. /* [string][in] */ char *pszCloseString,
  834. /* [in] */ GUID guidRMRecovery) = 0;
  835. };
  836. #else /* C style interface */
  837. typedef struct IRMHelperVtbl
  838. {
  839. BEGIN_INTERFACE
  840. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  841. IRMHelper * This,
  842. /* [in] */ REFIID riid,
  843. /* [iid_is][out] */ void **ppvObject);
  844. ULONG ( STDMETHODCALLTYPE *AddRef )(
  845. IRMHelper * This);
  846. ULONG ( STDMETHODCALLTYPE *Release )(
  847. IRMHelper * This);
  848. HRESULT ( STDMETHODCALLTYPE *RMCount )(
  849. IRMHelper * This,
  850. /* [in] */ DWORD dwcTotalNumberOfRMs);
  851. HRESULT ( STDMETHODCALLTYPE *RMInfo )(
  852. IRMHelper * This,
  853. /* [in] */ xa_switch_t *pXa_Switch,
  854. /* [in] */ BOOL fCDeclCallingConv,
  855. /* [string][in] */ char *pszOpenString,
  856. /* [string][in] */ char *pszCloseString,
  857. /* [in] */ GUID guidRMRecovery);
  858. END_INTERFACE
  859. } IRMHelperVtbl;
  860. interface IRMHelper
  861. {
  862. CONST_VTBL struct IRMHelperVtbl *lpVtbl;
  863. };
  864. #ifdef COBJMACROS
  865. #define IRMHelper_QueryInterface(This,riid,ppvObject) \
  866. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  867. #define IRMHelper_AddRef(This) \
  868. (This)->lpVtbl -> AddRef(This)
  869. #define IRMHelper_Release(This) \
  870. (This)->lpVtbl -> Release(This)
  871. #define IRMHelper_RMCount(This,dwcTotalNumberOfRMs) \
  872. (This)->lpVtbl -> RMCount(This,dwcTotalNumberOfRMs)
  873. #define IRMHelper_RMInfo(This,pXa_Switch,fCDeclCallingConv,pszOpenString,pszCloseString,guidRMRecovery) \
  874. (This)->lpVtbl -> RMInfo(This,pXa_Switch,fCDeclCallingConv,pszOpenString,pszCloseString,guidRMRecovery)
  875. #endif /* COBJMACROS */
  876. #endif /* C style interface */
  877. HRESULT STDMETHODCALLTYPE IRMHelper_RMCount_Proxy(
  878. IRMHelper * This,
  879. /* [in] */ DWORD dwcTotalNumberOfRMs);
  880. void __RPC_STUB IRMHelper_RMCount_Stub(
  881. IRpcStubBuffer *This,
  882. IRpcChannelBuffer *_pRpcChannelBuffer,
  883. PRPC_MESSAGE _pRpcMessage,
  884. DWORD *_pdwStubPhase);
  885. HRESULT STDMETHODCALLTYPE IRMHelper_RMInfo_Proxy(
  886. IRMHelper * This,
  887. /* [in] */ xa_switch_t *pXa_Switch,
  888. /* [in] */ BOOL fCDeclCallingConv,
  889. /* [string][in] */ char *pszOpenString,
  890. /* [string][in] */ char *pszCloseString,
  891. /* [in] */ GUID guidRMRecovery);
  892. void __RPC_STUB IRMHelper_RMInfo_Stub(
  893. IRpcStubBuffer *This,
  894. IRpcChannelBuffer *_pRpcChannelBuffer,
  895. PRPC_MESSAGE _pRpcMessage,
  896. DWORD *_pdwStubPhase);
  897. #endif /* __IRMHelper_INTERFACE_DEFINED__ */
  898. #ifndef __IXAObtainRMInfo_INTERFACE_DEFINED__
  899. #define __IXAObtainRMInfo_INTERFACE_DEFINED__
  900. /* interface IXAObtainRMInfo */
  901. /* [unique][object][uuid] */
  902. EXTERN_C const IID IID_IXAObtainRMInfo;
  903. #if defined(__cplusplus) && !defined(CINTERFACE)
  904. MIDL_INTERFACE("E793F6D2-F53D-11cf-A60D-00A0C905416E")
  905. IXAObtainRMInfo : public IUnknown
  906. {
  907. public:
  908. virtual HRESULT STDMETHODCALLTYPE ObtainRMInfo(
  909. /* [in] */ IRMHelper *pIRMHelper) = 0;
  910. };
  911. #else /* C style interface */
  912. typedef struct IXAObtainRMInfoVtbl
  913. {
  914. BEGIN_INTERFACE
  915. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  916. IXAObtainRMInfo * This,
  917. /* [in] */ REFIID riid,
  918. /* [iid_is][out] */ void **ppvObject);
  919. ULONG ( STDMETHODCALLTYPE *AddRef )(
  920. IXAObtainRMInfo * This);
  921. ULONG ( STDMETHODCALLTYPE *Release )(
  922. IXAObtainRMInfo * This);
  923. HRESULT ( STDMETHODCALLTYPE *ObtainRMInfo )(
  924. IXAObtainRMInfo * This,
  925. /* [in] */ IRMHelper *pIRMHelper);
  926. END_INTERFACE
  927. } IXAObtainRMInfoVtbl;
  928. interface IXAObtainRMInfo
  929. {
  930. CONST_VTBL struct IXAObtainRMInfoVtbl *lpVtbl;
  931. };
  932. #ifdef COBJMACROS
  933. #define IXAObtainRMInfo_QueryInterface(This,riid,ppvObject) \
  934. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  935. #define IXAObtainRMInfo_AddRef(This) \
  936. (This)->lpVtbl -> AddRef(This)
  937. #define IXAObtainRMInfo_Release(This) \
  938. (This)->lpVtbl -> Release(This)
  939. #define IXAObtainRMInfo_ObtainRMInfo(This,pIRMHelper) \
  940. (This)->lpVtbl -> ObtainRMInfo(This,pIRMHelper)
  941. #endif /* COBJMACROS */
  942. #endif /* C style interface */
  943. HRESULT STDMETHODCALLTYPE IXAObtainRMInfo_ObtainRMInfo_Proxy(
  944. IXAObtainRMInfo * This,
  945. /* [in] */ IRMHelper *pIRMHelper);
  946. void __RPC_STUB IXAObtainRMInfo_ObtainRMInfo_Stub(
  947. IRpcStubBuffer *This,
  948. IRpcChannelBuffer *_pRpcChannelBuffer,
  949. PRPC_MESSAGE _pRpcMessage,
  950. DWORD *_pdwStubPhase);
  951. #endif /* __IXAObtainRMInfo_INTERFACE_DEFINED__ */
  952. #ifndef __IResourceManagerFactory_INTERFACE_DEFINED__
  953. #define __IResourceManagerFactory_INTERFACE_DEFINED__
  954. /* interface IResourceManagerFactory */
  955. /* [unique][object][uuid] */
  956. EXTERN_C const IID IID_IResourceManagerFactory;
  957. #if defined(__cplusplus) && !defined(CINTERFACE)
  958. MIDL_INTERFACE("13741d20-87eb-11ce-8081-0080c758527e")
  959. IResourceManagerFactory : public IUnknown
  960. {
  961. public:
  962. virtual HRESULT STDMETHODCALLTYPE Create(
  963. /* [in] */ GUID *pguidRM,
  964. /* [string][in] */ CHAR *pszRMName,
  965. /* [in] */ IResourceManagerSink *pIResMgrSink,
  966. /* [out] */ IResourceManager **ppResMgr) = 0;
  967. };
  968. #else /* C style interface */
  969. typedef struct IResourceManagerFactoryVtbl
  970. {
  971. BEGIN_INTERFACE
  972. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  973. IResourceManagerFactory * This,
  974. /* [in] */ REFIID riid,
  975. /* [iid_is][out] */ void **ppvObject);
  976. ULONG ( STDMETHODCALLTYPE *AddRef )(
  977. IResourceManagerFactory * This);
  978. ULONG ( STDMETHODCALLTYPE *Release )(
  979. IResourceManagerFactory * This);
  980. HRESULT ( STDMETHODCALLTYPE *Create )(
  981. IResourceManagerFactory * This,
  982. /* [in] */ GUID *pguidRM,
  983. /* [string][in] */ CHAR *pszRMName,
  984. /* [in] */ IResourceManagerSink *pIResMgrSink,
  985. /* [out] */ IResourceManager **ppResMgr);
  986. END_INTERFACE
  987. } IResourceManagerFactoryVtbl;
  988. interface IResourceManagerFactory
  989. {
  990. CONST_VTBL struct IResourceManagerFactoryVtbl *lpVtbl;
  991. };
  992. #ifdef COBJMACROS
  993. #define IResourceManagerFactory_QueryInterface(This,riid,ppvObject) \
  994. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  995. #define IResourceManagerFactory_AddRef(This) \
  996. (This)->lpVtbl -> AddRef(This)
  997. #define IResourceManagerFactory_Release(This) \
  998. (This)->lpVtbl -> Release(This)
  999. #define IResourceManagerFactory_Create(This,pguidRM,pszRMName,pIResMgrSink,ppResMgr) \
  1000. (This)->lpVtbl -> Create(This,pguidRM,pszRMName,pIResMgrSink,ppResMgr)
  1001. #endif /* COBJMACROS */
  1002. #endif /* C style interface */
  1003. HRESULT STDMETHODCALLTYPE IResourceManagerFactory_Create_Proxy(
  1004. IResourceManagerFactory * This,
  1005. /* [in] */ GUID *pguidRM,
  1006. /* [string][in] */ CHAR *pszRMName,
  1007. /* [in] */ IResourceManagerSink *pIResMgrSink,
  1008. /* [out] */ IResourceManager **ppResMgr);
  1009. void __RPC_STUB IResourceManagerFactory_Create_Stub(
  1010. IRpcStubBuffer *This,
  1011. IRpcChannelBuffer *_pRpcChannelBuffer,
  1012. PRPC_MESSAGE _pRpcMessage,
  1013. DWORD *_pdwStubPhase);
  1014. #endif /* __IResourceManagerFactory_INTERFACE_DEFINED__ */
  1015. #ifndef __IResourceManagerFactory2_INTERFACE_DEFINED__
  1016. #define __IResourceManagerFactory2_INTERFACE_DEFINED__
  1017. /* interface IResourceManagerFactory2 */
  1018. /* [unique][object][uuid] */
  1019. EXTERN_C const IID IID_IResourceManagerFactory2;
  1020. #if defined(__cplusplus) && !defined(CINTERFACE)
  1021. MIDL_INTERFACE("6B369C21-FBD2-11d1-8F47-00C04F8EE57D")
  1022. IResourceManagerFactory2 : public IResourceManagerFactory
  1023. {
  1024. public:
  1025. virtual HRESULT STDMETHODCALLTYPE CreateEx(
  1026. /* [in] */ GUID *pguidRM,
  1027. /* [string][in] */ CHAR *pszRMName,
  1028. /* [in] */ IResourceManagerSink *pIResMgrSink,
  1029. /* [in] */ REFIID riidRequested,
  1030. /* [iid_is][out] */ void **ppvResMgr) = 0;
  1031. };
  1032. #else /* C style interface */
  1033. typedef struct IResourceManagerFactory2Vtbl
  1034. {
  1035. BEGIN_INTERFACE
  1036. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  1037. IResourceManagerFactory2 * This,
  1038. /* [in] */ REFIID riid,
  1039. /* [iid_is][out] */ void **ppvObject);
  1040. ULONG ( STDMETHODCALLTYPE *AddRef )(
  1041. IResourceManagerFactory2 * This);
  1042. ULONG ( STDMETHODCALLTYPE *Release )(
  1043. IResourceManagerFactory2 * This);
  1044. HRESULT ( STDMETHODCALLTYPE *Create )(
  1045. IResourceManagerFactory2 * This,
  1046. /* [in] */ GUID *pguidRM,
  1047. /* [string][in] */ CHAR *pszRMName,
  1048. /* [in] */ IResourceManagerSink *pIResMgrSink,
  1049. /* [out] */ IResourceManager **ppResMgr);
  1050. HRESULT ( STDMETHODCALLTYPE *CreateEx )(
  1051. IResourceManagerFactory2 * This,
  1052. /* [in] */ GUID *pguidRM,
  1053. /* [string][in] */ CHAR *pszRMName,
  1054. /* [in] */ IResourceManagerSink *pIResMgrSink,
  1055. /* [in] */ REFIID riidRequested,
  1056. /* [iid_is][out] */ void **ppvResMgr);
  1057. END_INTERFACE
  1058. } IResourceManagerFactory2Vtbl;
  1059. interface IResourceManagerFactory2
  1060. {
  1061. CONST_VTBL struct IResourceManagerFactory2Vtbl *lpVtbl;
  1062. };
  1063. #ifdef COBJMACROS
  1064. #define IResourceManagerFactory2_QueryInterface(This,riid,ppvObject) \
  1065. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  1066. #define IResourceManagerFactory2_AddRef(This) \
  1067. (This)->lpVtbl -> AddRef(This)
  1068. #define IResourceManagerFactory2_Release(This) \
  1069. (This)->lpVtbl -> Release(This)
  1070. #define IResourceManagerFactory2_Create(This,pguidRM,pszRMName,pIResMgrSink,ppResMgr) \
  1071. (This)->lpVtbl -> Create(This,pguidRM,pszRMName,pIResMgrSink,ppResMgr)
  1072. #define IResourceManagerFactory2_CreateEx(This,pguidRM,pszRMName,pIResMgrSink,riidRequested,ppvResMgr) \
  1073. (This)->lpVtbl -> CreateEx(This,pguidRM,pszRMName,pIResMgrSink,riidRequested,ppvResMgr)
  1074. #endif /* COBJMACROS */
  1075. #endif /* C style interface */
  1076. HRESULT STDMETHODCALLTYPE IResourceManagerFactory2_CreateEx_Proxy(
  1077. IResourceManagerFactory2 * This,
  1078. /* [in] */ GUID *pguidRM,
  1079. /* [string][in] */ CHAR *pszRMName,
  1080. /* [in] */ IResourceManagerSink *pIResMgrSink,
  1081. /* [in] */ REFIID riidRequested,
  1082. /* [iid_is][out] */ void **ppvResMgr);
  1083. void __RPC_STUB IResourceManagerFactory2_CreateEx_Stub(
  1084. IRpcStubBuffer *This,
  1085. IRpcChannelBuffer *_pRpcChannelBuffer,
  1086. PRPC_MESSAGE _pRpcMessage,
  1087. DWORD *_pdwStubPhase);
  1088. #endif /* __IResourceManagerFactory2_INTERFACE_DEFINED__ */
  1089. #ifndef __IPrepareInfo_INTERFACE_DEFINED__
  1090. #define __IPrepareInfo_INTERFACE_DEFINED__
  1091. /* interface IPrepareInfo */
  1092. /* [local][unique][object][uuid] */
  1093. EXTERN_C const IID IID_IPrepareInfo;
  1094. #if defined(__cplusplus) && !defined(CINTERFACE)
  1095. MIDL_INTERFACE("80c7bfd0-87ee-11ce-8081-0080c758527e")
  1096. IPrepareInfo : public IUnknown
  1097. {
  1098. public:
  1099. virtual HRESULT STDMETHODCALLTYPE GetPrepareInfoSize(
  1100. /* [out] */ ULONG *pcbPrepInfo) = 0;
  1101. virtual HRESULT STDMETHODCALLTYPE GetPrepareInfo(
  1102. /* [out] */ byte *pPrepInfo) = 0;
  1103. };
  1104. #else /* C style interface */
  1105. typedef struct IPrepareInfoVtbl
  1106. {
  1107. BEGIN_INTERFACE
  1108. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  1109. IPrepareInfo * This,
  1110. /* [in] */ REFIID riid,
  1111. /* [iid_is][out] */ void **ppvObject);
  1112. ULONG ( STDMETHODCALLTYPE *AddRef )(
  1113. IPrepareInfo * This);
  1114. ULONG ( STDMETHODCALLTYPE *Release )(
  1115. IPrepareInfo * This);
  1116. HRESULT ( STDMETHODCALLTYPE *GetPrepareInfoSize )(
  1117. IPrepareInfo * This,
  1118. /* [out] */ ULONG *pcbPrepInfo);
  1119. HRESULT ( STDMETHODCALLTYPE *GetPrepareInfo )(
  1120. IPrepareInfo * This,
  1121. /* [out] */ byte *pPrepInfo);
  1122. END_INTERFACE
  1123. } IPrepareInfoVtbl;
  1124. interface IPrepareInfo
  1125. {
  1126. CONST_VTBL struct IPrepareInfoVtbl *lpVtbl;
  1127. };
  1128. #ifdef COBJMACROS
  1129. #define IPrepareInfo_QueryInterface(This,riid,ppvObject) \
  1130. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  1131. #define IPrepareInfo_AddRef(This) \
  1132. (This)->lpVtbl -> AddRef(This)
  1133. #define IPrepareInfo_Release(This) \
  1134. (This)->lpVtbl -> Release(This)
  1135. #define IPrepareInfo_GetPrepareInfoSize(This,pcbPrepInfo) \
  1136. (This)->lpVtbl -> GetPrepareInfoSize(This,pcbPrepInfo)
  1137. #define IPrepareInfo_GetPrepareInfo(This,pPrepInfo) \
  1138. (This)->lpVtbl -> GetPrepareInfo(This,pPrepInfo)
  1139. #endif /* COBJMACROS */
  1140. #endif /* C style interface */
  1141. HRESULT STDMETHODCALLTYPE IPrepareInfo_GetPrepareInfoSize_Proxy(
  1142. IPrepareInfo * This,
  1143. /* [out] */ ULONG *pcbPrepInfo);
  1144. void __RPC_STUB IPrepareInfo_GetPrepareInfoSize_Stub(
  1145. IRpcStubBuffer *This,
  1146. IRpcChannelBuffer *_pRpcChannelBuffer,
  1147. PRPC_MESSAGE _pRpcMessage,
  1148. DWORD *_pdwStubPhase);
  1149. HRESULT STDMETHODCALLTYPE IPrepareInfo_GetPrepareInfo_Proxy(
  1150. IPrepareInfo * This,
  1151. /* [out] */ byte *pPrepInfo);
  1152. void __RPC_STUB IPrepareInfo_GetPrepareInfo_Stub(
  1153. IRpcStubBuffer *This,
  1154. IRpcChannelBuffer *_pRpcChannelBuffer,
  1155. PRPC_MESSAGE _pRpcMessage,
  1156. DWORD *_pdwStubPhase);
  1157. #endif /* __IPrepareInfo_INTERFACE_DEFINED__ */
  1158. #ifndef __IPrepareInfo2_INTERFACE_DEFINED__
  1159. #define __IPrepareInfo2_INTERFACE_DEFINED__
  1160. /* interface IPrepareInfo2 */
  1161. /* [unique][object][uuid] */
  1162. EXTERN_C const IID IID_IPrepareInfo2;
  1163. #if defined(__cplusplus) && !defined(CINTERFACE)
  1164. MIDL_INTERFACE("5FAB2547-9779-11d1-B886-00C04FB9618A")
  1165. IPrepareInfo2 : public IUnknown
  1166. {
  1167. public:
  1168. virtual HRESULT STDMETHODCALLTYPE GetPrepareInfoSize(
  1169. /* [out] */ ULONG *pcbPrepInfo) = 0;
  1170. virtual HRESULT STDMETHODCALLTYPE GetPrepareInfo(
  1171. /* [in] */ ULONG cbPrepareInfo,
  1172. /* [size_is][out] */ byte *pPrepInfo) = 0;
  1173. };
  1174. #else /* C style interface */
  1175. typedef struct IPrepareInfo2Vtbl
  1176. {
  1177. BEGIN_INTERFACE
  1178. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  1179. IPrepareInfo2 * This,
  1180. /* [in] */ REFIID riid,
  1181. /* [iid_is][out] */ void **ppvObject);
  1182. ULONG ( STDMETHODCALLTYPE *AddRef )(
  1183. IPrepareInfo2 * This);
  1184. ULONG ( STDMETHODCALLTYPE *Release )(
  1185. IPrepareInfo2 * This);
  1186. HRESULT ( STDMETHODCALLTYPE *GetPrepareInfoSize )(
  1187. IPrepareInfo2 * This,
  1188. /* [out] */ ULONG *pcbPrepInfo);
  1189. HRESULT ( STDMETHODCALLTYPE *GetPrepareInfo )(
  1190. IPrepareInfo2 * This,
  1191. /* [in] */ ULONG cbPrepareInfo,
  1192. /* [size_is][out] */ byte *pPrepInfo);
  1193. END_INTERFACE
  1194. } IPrepareInfo2Vtbl;
  1195. interface IPrepareInfo2
  1196. {
  1197. CONST_VTBL struct IPrepareInfo2Vtbl *lpVtbl;
  1198. };
  1199. #ifdef COBJMACROS
  1200. #define IPrepareInfo2_QueryInterface(This,riid,ppvObject) \
  1201. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  1202. #define IPrepareInfo2_AddRef(This) \
  1203. (This)->lpVtbl -> AddRef(This)
  1204. #define IPrepareInfo2_Release(This) \
  1205. (This)->lpVtbl -> Release(This)
  1206. #define IPrepareInfo2_GetPrepareInfoSize(This,pcbPrepInfo) \
  1207. (This)->lpVtbl -> GetPrepareInfoSize(This,pcbPrepInfo)
  1208. #define IPrepareInfo2_GetPrepareInfo(This,cbPrepareInfo,pPrepInfo) \
  1209. (This)->lpVtbl -> GetPrepareInfo(This,cbPrepareInfo,pPrepInfo)
  1210. #endif /* COBJMACROS */
  1211. #endif /* C style interface */
  1212. HRESULT STDMETHODCALLTYPE IPrepareInfo2_GetPrepareInfoSize_Proxy(
  1213. IPrepareInfo2 * This,
  1214. /* [out] */ ULONG *pcbPrepInfo);
  1215. void __RPC_STUB IPrepareInfo2_GetPrepareInfoSize_Stub(
  1216. IRpcStubBuffer *This,
  1217. IRpcChannelBuffer *_pRpcChannelBuffer,
  1218. PRPC_MESSAGE _pRpcMessage,
  1219. DWORD *_pdwStubPhase);
  1220. HRESULT STDMETHODCALLTYPE IPrepareInfo2_GetPrepareInfo_Proxy(
  1221. IPrepareInfo2 * This,
  1222. /* [in] */ ULONG cbPrepareInfo,
  1223. /* [size_is][out] */ byte *pPrepInfo);
  1224. void __RPC_STUB IPrepareInfo2_GetPrepareInfo_Stub(
  1225. IRpcStubBuffer *This,
  1226. IRpcChannelBuffer *_pRpcChannelBuffer,
  1227. PRPC_MESSAGE _pRpcMessage,
  1228. DWORD *_pdwStubPhase);
  1229. #endif /* __IPrepareInfo2_INTERFACE_DEFINED__ */
  1230. #ifndef __IGetDispenser_INTERFACE_DEFINED__
  1231. #define __IGetDispenser_INTERFACE_DEFINED__
  1232. /* interface IGetDispenser */
  1233. /* [unique][object][uuid] */
  1234. EXTERN_C const IID IID_IGetDispenser;
  1235. #if defined(__cplusplus) && !defined(CINTERFACE)
  1236. MIDL_INTERFACE("c23cc370-87ef-11ce-8081-0080c758527e")
  1237. IGetDispenser : public IUnknown
  1238. {
  1239. public:
  1240. virtual HRESULT STDMETHODCALLTYPE GetDispenser(
  1241. /* [in] */ REFIID iid,
  1242. /* [iid_is][out] */ void **ppvObject) = 0;
  1243. };
  1244. #else /* C style interface */
  1245. typedef struct IGetDispenserVtbl
  1246. {
  1247. BEGIN_INTERFACE
  1248. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  1249. IGetDispenser * This,
  1250. /* [in] */ REFIID riid,
  1251. /* [iid_is][out] */ void **ppvObject);
  1252. ULONG ( STDMETHODCALLTYPE *AddRef )(
  1253. IGetDispenser * This);
  1254. ULONG ( STDMETHODCALLTYPE *Release )(
  1255. IGetDispenser * This);
  1256. HRESULT ( STDMETHODCALLTYPE *GetDispenser )(
  1257. IGetDispenser * This,
  1258. /* [in] */ REFIID iid,
  1259. /* [iid_is][out] */ void **ppvObject);
  1260. END_INTERFACE
  1261. } IGetDispenserVtbl;
  1262. interface IGetDispenser
  1263. {
  1264. CONST_VTBL struct IGetDispenserVtbl *lpVtbl;
  1265. };
  1266. #ifdef COBJMACROS
  1267. #define IGetDispenser_QueryInterface(This,riid,ppvObject) \
  1268. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  1269. #define IGetDispenser_AddRef(This) \
  1270. (This)->lpVtbl -> AddRef(This)
  1271. #define IGetDispenser_Release(This) \
  1272. (This)->lpVtbl -> Release(This)
  1273. #define IGetDispenser_GetDispenser(This,iid,ppvObject) \
  1274. (This)->lpVtbl -> GetDispenser(This,iid,ppvObject)
  1275. #endif /* COBJMACROS */
  1276. #endif /* C style interface */
  1277. HRESULT STDMETHODCALLTYPE IGetDispenser_GetDispenser_Proxy(
  1278. IGetDispenser * This,
  1279. /* [in] */ REFIID iid,
  1280. /* [iid_is][out] */ void **ppvObject);
  1281. void __RPC_STUB IGetDispenser_GetDispenser_Stub(
  1282. IRpcStubBuffer *This,
  1283. IRpcChannelBuffer *_pRpcChannelBuffer,
  1284. PRPC_MESSAGE _pRpcMessage,
  1285. DWORD *_pdwStubPhase);
  1286. #endif /* __IGetDispenser_INTERFACE_DEFINED__ */
  1287. #ifndef __ITransactionVoterBallotAsync2_INTERFACE_DEFINED__
  1288. #define __ITransactionVoterBallotAsync2_INTERFACE_DEFINED__
  1289. /* interface ITransactionVoterBallotAsync2 */
  1290. /* [unique][object][uuid] */
  1291. EXTERN_C const IID IID_ITransactionVoterBallotAsync2;
  1292. #if defined(__cplusplus) && !defined(CINTERFACE)
  1293. MIDL_INTERFACE("5433376C-414D-11d3-B206-00C04FC2F3EF")
  1294. ITransactionVoterBallotAsync2 : public IUnknown
  1295. {
  1296. public:
  1297. virtual HRESULT STDMETHODCALLTYPE VoteRequestDone(
  1298. /* [in] */ HRESULT hr,
  1299. /* [unique][in] */ BOID *pboidReason) = 0;
  1300. };
  1301. #else /* C style interface */
  1302. typedef struct ITransactionVoterBallotAsync2Vtbl
  1303. {
  1304. BEGIN_INTERFACE
  1305. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  1306. ITransactionVoterBallotAsync2 * This,
  1307. /* [in] */ REFIID riid,
  1308. /* [iid_is][out] */ void **ppvObject);
  1309. ULONG ( STDMETHODCALLTYPE *AddRef )(
  1310. ITransactionVoterBallotAsync2 * This);
  1311. ULONG ( STDMETHODCALLTYPE *Release )(
  1312. ITransactionVoterBallotAsync2 * This);
  1313. HRESULT ( STDMETHODCALLTYPE *VoteRequestDone )(
  1314. ITransactionVoterBallotAsync2 * This,
  1315. /* [in] */ HRESULT hr,
  1316. /* [unique][in] */ BOID *pboidReason);
  1317. END_INTERFACE
  1318. } ITransactionVoterBallotAsync2Vtbl;
  1319. interface ITransactionVoterBallotAsync2
  1320. {
  1321. CONST_VTBL struct ITransactionVoterBallotAsync2Vtbl *lpVtbl;
  1322. };
  1323. #ifdef COBJMACROS
  1324. #define ITransactionVoterBallotAsync2_QueryInterface(This,riid,ppvObject) \
  1325. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  1326. #define ITransactionVoterBallotAsync2_AddRef(This) \
  1327. (This)->lpVtbl -> AddRef(This)
  1328. #define ITransactionVoterBallotAsync2_Release(This) \
  1329. (This)->lpVtbl -> Release(This)
  1330. #define ITransactionVoterBallotAsync2_VoteRequestDone(This,hr,pboidReason) \
  1331. (This)->lpVtbl -> VoteRequestDone(This,hr,pboidReason)
  1332. #endif /* COBJMACROS */
  1333. #endif /* C style interface */
  1334. HRESULT STDMETHODCALLTYPE ITransactionVoterBallotAsync2_VoteRequestDone_Proxy(
  1335. ITransactionVoterBallotAsync2 * This,
  1336. /* [in] */ HRESULT hr,
  1337. /* [unique][in] */ BOID *pboidReason);
  1338. void __RPC_STUB ITransactionVoterBallotAsync2_VoteRequestDone_Stub(
  1339. IRpcStubBuffer *This,
  1340. IRpcChannelBuffer *_pRpcChannelBuffer,
  1341. PRPC_MESSAGE _pRpcMessage,
  1342. DWORD *_pdwStubPhase);
  1343. #endif /* __ITransactionVoterBallotAsync2_INTERFACE_DEFINED__ */
  1344. #ifndef __ITransactionVoterNotifyAsync2_INTERFACE_DEFINED__
  1345. #define __ITransactionVoterNotifyAsync2_INTERFACE_DEFINED__
  1346. /* interface ITransactionVoterNotifyAsync2 */
  1347. /* [unique][object][uuid] */
  1348. EXTERN_C const IID IID_ITransactionVoterNotifyAsync2;
  1349. #if defined(__cplusplus) && !defined(CINTERFACE)
  1350. MIDL_INTERFACE("5433376B-414D-11d3-B206-00C04FC2F3EF")
  1351. ITransactionVoterNotifyAsync2 : public ITransactionOutcomeEvents
  1352. {
  1353. public:
  1354. virtual HRESULT STDMETHODCALLTYPE VoteRequest( void) = 0;
  1355. };
  1356. #else /* C style interface */
  1357. typedef struct ITransactionVoterNotifyAsync2Vtbl
  1358. {
  1359. BEGIN_INTERFACE
  1360. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  1361. ITransactionVoterNotifyAsync2 * This,
  1362. /* [in] */ REFIID riid,
  1363. /* [iid_is][out] */ void **ppvObject);
  1364. ULONG ( STDMETHODCALLTYPE *AddRef )(
  1365. ITransactionVoterNotifyAsync2 * This);
  1366. ULONG ( STDMETHODCALLTYPE *Release )(
  1367. ITransactionVoterNotifyAsync2 * This);
  1368. HRESULT ( STDMETHODCALLTYPE *Committed )(
  1369. ITransactionVoterNotifyAsync2 * This,
  1370. /* [in] */ BOOL fRetaining,
  1371. /* [unique][in] */ XACTUOW *pNewUOW,
  1372. /* [in] */ HRESULT hr);
  1373. HRESULT ( STDMETHODCALLTYPE *Aborted )(
  1374. ITransactionVoterNotifyAsync2 * This,
  1375. /* [unique][in] */ BOID *pboidReason,
  1376. /* [in] */ BOOL fRetaining,
  1377. /* [unique][in] */ XACTUOW *pNewUOW,
  1378. /* [in] */ HRESULT hr);
  1379. HRESULT ( STDMETHODCALLTYPE *HeuristicDecision )(
  1380. ITransactionVoterNotifyAsync2 * This,
  1381. /* [in] */ DWORD dwDecision,
  1382. /* [unique][in] */ BOID *pboidReason,
  1383. /* [in] */ HRESULT hr);
  1384. HRESULT ( STDMETHODCALLTYPE *Indoubt )(
  1385. ITransactionVoterNotifyAsync2 * This);
  1386. HRESULT ( STDMETHODCALLTYPE *VoteRequest )(
  1387. ITransactionVoterNotifyAsync2 * This);
  1388. END_INTERFACE
  1389. } ITransactionVoterNotifyAsync2Vtbl;
  1390. interface ITransactionVoterNotifyAsync2
  1391. {
  1392. CONST_VTBL struct ITransactionVoterNotifyAsync2Vtbl *lpVtbl;
  1393. };
  1394. #ifdef COBJMACROS
  1395. #define ITransactionVoterNotifyAsync2_QueryInterface(This,riid,ppvObject) \
  1396. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  1397. #define ITransactionVoterNotifyAsync2_AddRef(This) \
  1398. (This)->lpVtbl -> AddRef(This)
  1399. #define ITransactionVoterNotifyAsync2_Release(This) \
  1400. (This)->lpVtbl -> Release(This)
  1401. #define ITransactionVoterNotifyAsync2_Committed(This,fRetaining,pNewUOW,hr) \
  1402. (This)->lpVtbl -> Committed(This,fRetaining,pNewUOW,hr)
  1403. #define ITransactionVoterNotifyAsync2_Aborted(This,pboidReason,fRetaining,pNewUOW,hr) \
  1404. (This)->lpVtbl -> Aborted(This,pboidReason,fRetaining,pNewUOW,hr)
  1405. #define ITransactionVoterNotifyAsync2_HeuristicDecision(This,dwDecision,pboidReason,hr) \
  1406. (This)->lpVtbl -> HeuristicDecision(This,dwDecision,pboidReason,hr)
  1407. #define ITransactionVoterNotifyAsync2_Indoubt(This) \
  1408. (This)->lpVtbl -> Indoubt(This)
  1409. #define ITransactionVoterNotifyAsync2_VoteRequest(This) \
  1410. (This)->lpVtbl -> VoteRequest(This)
  1411. #endif /* COBJMACROS */
  1412. #endif /* C style interface */
  1413. HRESULT STDMETHODCALLTYPE ITransactionVoterNotifyAsync2_VoteRequest_Proxy(
  1414. ITransactionVoterNotifyAsync2 * This);
  1415. void __RPC_STUB ITransactionVoterNotifyAsync2_VoteRequest_Stub(
  1416. IRpcStubBuffer *This,
  1417. IRpcChannelBuffer *_pRpcChannelBuffer,
  1418. PRPC_MESSAGE _pRpcMessage,
  1419. DWORD *_pdwStubPhase);
  1420. #endif /* __ITransactionVoterNotifyAsync2_INTERFACE_DEFINED__ */
  1421. #ifndef __ITransactionVoterFactory2_INTERFACE_DEFINED__
  1422. #define __ITransactionVoterFactory2_INTERFACE_DEFINED__
  1423. /* interface ITransactionVoterFactory2 */
  1424. /* [unique][object][uuid] */
  1425. EXTERN_C const IID IID_ITransactionVoterFactory2;
  1426. #if defined(__cplusplus) && !defined(CINTERFACE)
  1427. MIDL_INTERFACE("5433376A-414D-11d3-B206-00C04FC2F3EF")
  1428. ITransactionVoterFactory2 : public IUnknown
  1429. {
  1430. public:
  1431. virtual HRESULT STDMETHODCALLTYPE Create(
  1432. /* [in] */ ITransaction *pTransaction,
  1433. /* [in] */ ITransactionVoterNotifyAsync2 *pVoterNotify,
  1434. /* [out] */ ITransactionVoterBallotAsync2 **ppVoterBallot) = 0;
  1435. };
  1436. #else /* C style interface */
  1437. typedef struct ITransactionVoterFactory2Vtbl
  1438. {
  1439. BEGIN_INTERFACE
  1440. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  1441. ITransactionVoterFactory2 * This,
  1442. /* [in] */ REFIID riid,
  1443. /* [iid_is][out] */ void **ppvObject);
  1444. ULONG ( STDMETHODCALLTYPE *AddRef )(
  1445. ITransactionVoterFactory2 * This);
  1446. ULONG ( STDMETHODCALLTYPE *Release )(
  1447. ITransactionVoterFactory2 * This);
  1448. HRESULT ( STDMETHODCALLTYPE *Create )(
  1449. ITransactionVoterFactory2 * This,
  1450. /* [in] */ ITransaction *pTransaction,
  1451. /* [in] */ ITransactionVoterNotifyAsync2 *pVoterNotify,
  1452. /* [out] */ ITransactionVoterBallotAsync2 **ppVoterBallot);
  1453. END_INTERFACE
  1454. } ITransactionVoterFactory2Vtbl;
  1455. interface ITransactionVoterFactory2
  1456. {
  1457. CONST_VTBL struct ITransactionVoterFactory2Vtbl *lpVtbl;
  1458. };
  1459. #ifdef COBJMACROS
  1460. #define ITransactionVoterFactory2_QueryInterface(This,riid,ppvObject) \
  1461. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  1462. #define ITransactionVoterFactory2_AddRef(This) \
  1463. (This)->lpVtbl -> AddRef(This)
  1464. #define ITransactionVoterFactory2_Release(This) \
  1465. (This)->lpVtbl -> Release(This)
  1466. #define ITransactionVoterFactory2_Create(This,pTransaction,pVoterNotify,ppVoterBallot) \
  1467. (This)->lpVtbl -> Create(This,pTransaction,pVoterNotify,ppVoterBallot)
  1468. #endif /* COBJMACROS */
  1469. #endif /* C style interface */
  1470. HRESULT STDMETHODCALLTYPE ITransactionVoterFactory2_Create_Proxy(
  1471. ITransactionVoterFactory2 * This,
  1472. /* [in] */ ITransaction *pTransaction,
  1473. /* [in] */ ITransactionVoterNotifyAsync2 *pVoterNotify,
  1474. /* [out] */ ITransactionVoterBallotAsync2 **ppVoterBallot);
  1475. void __RPC_STUB ITransactionVoterFactory2_Create_Stub(
  1476. IRpcStubBuffer *This,
  1477. IRpcChannelBuffer *_pRpcChannelBuffer,
  1478. PRPC_MESSAGE _pRpcMessage,
  1479. DWORD *_pdwStubPhase);
  1480. #endif /* __ITransactionVoterFactory2_INTERFACE_DEFINED__ */
  1481. #ifndef __ITransactionPhase0EnlistmentAsync_INTERFACE_DEFINED__
  1482. #define __ITransactionPhase0EnlistmentAsync_INTERFACE_DEFINED__
  1483. /* interface ITransactionPhase0EnlistmentAsync */
  1484. /* [unique][object][uuid] */
  1485. EXTERN_C const IID IID_ITransactionPhase0EnlistmentAsync;
  1486. #if defined(__cplusplus) && !defined(CINTERFACE)
  1487. MIDL_INTERFACE("82DC88E1-A954-11d1-8F88-00600895E7D5")
  1488. ITransactionPhase0EnlistmentAsync : public IUnknown
  1489. {
  1490. public:
  1491. virtual HRESULT STDMETHODCALLTYPE Enable( void) = 0;
  1492. virtual HRESULT STDMETHODCALLTYPE WaitForEnlistment( void) = 0;
  1493. virtual HRESULT STDMETHODCALLTYPE Phase0Done( void) = 0;
  1494. virtual HRESULT STDMETHODCALLTYPE Unenlist( void) = 0;
  1495. virtual HRESULT STDMETHODCALLTYPE GetTransaction(
  1496. /* [out] */ ITransaction **ppITransaction) = 0;
  1497. };
  1498. #else /* C style interface */
  1499. typedef struct ITransactionPhase0EnlistmentAsyncVtbl
  1500. {
  1501. BEGIN_INTERFACE
  1502. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  1503. ITransactionPhase0EnlistmentAsync * This,
  1504. /* [in] */ REFIID riid,
  1505. /* [iid_is][out] */ void **ppvObject);
  1506. ULONG ( STDMETHODCALLTYPE *AddRef )(
  1507. ITransactionPhase0EnlistmentAsync * This);
  1508. ULONG ( STDMETHODCALLTYPE *Release )(
  1509. ITransactionPhase0EnlistmentAsync * This);
  1510. HRESULT ( STDMETHODCALLTYPE *Enable )(
  1511. ITransactionPhase0EnlistmentAsync * This);
  1512. HRESULT ( STDMETHODCALLTYPE *WaitForEnlistment )(
  1513. ITransactionPhase0EnlistmentAsync * This);
  1514. HRESULT ( STDMETHODCALLTYPE *Phase0Done )(
  1515. ITransactionPhase0EnlistmentAsync * This);
  1516. HRESULT ( STDMETHODCALLTYPE *Unenlist )(
  1517. ITransactionPhase0EnlistmentAsync * This);
  1518. HRESULT ( STDMETHODCALLTYPE *GetTransaction )(
  1519. ITransactionPhase0EnlistmentAsync * This,
  1520. /* [out] */ ITransaction **ppITransaction);
  1521. END_INTERFACE
  1522. } ITransactionPhase0EnlistmentAsyncVtbl;
  1523. interface ITransactionPhase0EnlistmentAsync
  1524. {
  1525. CONST_VTBL struct ITransactionPhase0EnlistmentAsyncVtbl *lpVtbl;
  1526. };
  1527. #ifdef COBJMACROS
  1528. #define ITransactionPhase0EnlistmentAsync_QueryInterface(This,riid,ppvObject) \
  1529. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  1530. #define ITransactionPhase0EnlistmentAsync_AddRef(This) \
  1531. (This)->lpVtbl -> AddRef(This)
  1532. #define ITransactionPhase0EnlistmentAsync_Release(This) \
  1533. (This)->lpVtbl -> Release(This)
  1534. #define ITransactionPhase0EnlistmentAsync_Enable(This) \
  1535. (This)->lpVtbl -> Enable(This)
  1536. #define ITransactionPhase0EnlistmentAsync_WaitForEnlistment(This) \
  1537. (This)->lpVtbl -> WaitForEnlistment(This)
  1538. #define ITransactionPhase0EnlistmentAsync_Phase0Done(This) \
  1539. (This)->lpVtbl -> Phase0Done(This)
  1540. #define ITransactionPhase0EnlistmentAsync_Unenlist(This) \
  1541. (This)->lpVtbl -> Unenlist(This)
  1542. #define ITransactionPhase0EnlistmentAsync_GetTransaction(This,ppITransaction) \
  1543. (This)->lpVtbl -> GetTransaction(This,ppITransaction)
  1544. #endif /* COBJMACROS */
  1545. #endif /* C style interface */
  1546. HRESULT STDMETHODCALLTYPE ITransactionPhase0EnlistmentAsync_Enable_Proxy(
  1547. ITransactionPhase0EnlistmentAsync * This);
  1548. void __RPC_STUB ITransactionPhase0EnlistmentAsync_Enable_Stub(
  1549. IRpcStubBuffer *This,
  1550. IRpcChannelBuffer *_pRpcChannelBuffer,
  1551. PRPC_MESSAGE _pRpcMessage,
  1552. DWORD *_pdwStubPhase);
  1553. HRESULT STDMETHODCALLTYPE ITransactionPhase0EnlistmentAsync_WaitForEnlistment_Proxy(
  1554. ITransactionPhase0EnlistmentAsync * This);
  1555. void __RPC_STUB ITransactionPhase0EnlistmentAsync_WaitForEnlistment_Stub(
  1556. IRpcStubBuffer *This,
  1557. IRpcChannelBuffer *_pRpcChannelBuffer,
  1558. PRPC_MESSAGE _pRpcMessage,
  1559. DWORD *_pdwStubPhase);
  1560. HRESULT STDMETHODCALLTYPE ITransactionPhase0EnlistmentAsync_Phase0Done_Proxy(
  1561. ITransactionPhase0EnlistmentAsync * This);
  1562. void __RPC_STUB ITransactionPhase0EnlistmentAsync_Phase0Done_Stub(
  1563. IRpcStubBuffer *This,
  1564. IRpcChannelBuffer *_pRpcChannelBuffer,
  1565. PRPC_MESSAGE _pRpcMessage,
  1566. DWORD *_pdwStubPhase);
  1567. HRESULT STDMETHODCALLTYPE ITransactionPhase0EnlistmentAsync_Unenlist_Proxy(
  1568. ITransactionPhase0EnlistmentAsync * This);
  1569. void __RPC_STUB ITransactionPhase0EnlistmentAsync_Unenlist_Stub(
  1570. IRpcStubBuffer *This,
  1571. IRpcChannelBuffer *_pRpcChannelBuffer,
  1572. PRPC_MESSAGE _pRpcMessage,
  1573. DWORD *_pdwStubPhase);
  1574. HRESULT STDMETHODCALLTYPE ITransactionPhase0EnlistmentAsync_GetTransaction_Proxy(
  1575. ITransactionPhase0EnlistmentAsync * This,
  1576. /* [out] */ ITransaction **ppITransaction);
  1577. void __RPC_STUB ITransactionPhase0EnlistmentAsync_GetTransaction_Stub(
  1578. IRpcStubBuffer *This,
  1579. IRpcChannelBuffer *_pRpcChannelBuffer,
  1580. PRPC_MESSAGE _pRpcMessage,
  1581. DWORD *_pdwStubPhase);
  1582. #endif /* __ITransactionPhase0EnlistmentAsync_INTERFACE_DEFINED__ */
  1583. #ifndef __ITransactionPhase0NotifyAsync_INTERFACE_DEFINED__
  1584. #define __ITransactionPhase0NotifyAsync_INTERFACE_DEFINED__
  1585. /* interface ITransactionPhase0NotifyAsync */
  1586. /* [unique][object][uuid] */
  1587. EXTERN_C const IID IID_ITransactionPhase0NotifyAsync;
  1588. #if defined(__cplusplus) && !defined(CINTERFACE)
  1589. MIDL_INTERFACE("EF081809-0C76-11d2-87A6-00C04F990F34")
  1590. ITransactionPhase0NotifyAsync : public IUnknown
  1591. {
  1592. public:
  1593. virtual HRESULT STDMETHODCALLTYPE Phase0Request(
  1594. BOOL fAbortingHint) = 0;
  1595. virtual HRESULT STDMETHODCALLTYPE EnlistCompleted(
  1596. /* [in] */ HRESULT status) = 0;
  1597. };
  1598. #else /* C style interface */
  1599. typedef struct ITransactionPhase0NotifyAsyncVtbl
  1600. {
  1601. BEGIN_INTERFACE
  1602. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  1603. ITransactionPhase0NotifyAsync * This,
  1604. /* [in] */ REFIID riid,
  1605. /* [iid_is][out] */ void **ppvObject);
  1606. ULONG ( STDMETHODCALLTYPE *AddRef )(
  1607. ITransactionPhase0NotifyAsync * This);
  1608. ULONG ( STDMETHODCALLTYPE *Release )(
  1609. ITransactionPhase0NotifyAsync * This);
  1610. HRESULT ( STDMETHODCALLTYPE *Phase0Request )(
  1611. ITransactionPhase0NotifyAsync * This,
  1612. BOOL fAbortingHint);
  1613. HRESULT ( STDMETHODCALLTYPE *EnlistCompleted )(
  1614. ITransactionPhase0NotifyAsync * This,
  1615. /* [in] */ HRESULT status);
  1616. END_INTERFACE
  1617. } ITransactionPhase0NotifyAsyncVtbl;
  1618. interface ITransactionPhase0NotifyAsync
  1619. {
  1620. CONST_VTBL struct ITransactionPhase0NotifyAsyncVtbl *lpVtbl;
  1621. };
  1622. #ifdef COBJMACROS
  1623. #define ITransactionPhase0NotifyAsync_QueryInterface(This,riid,ppvObject) \
  1624. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  1625. #define ITransactionPhase0NotifyAsync_AddRef(This) \
  1626. (This)->lpVtbl -> AddRef(This)
  1627. #define ITransactionPhase0NotifyAsync_Release(This) \
  1628. (This)->lpVtbl -> Release(This)
  1629. #define ITransactionPhase0NotifyAsync_Phase0Request(This,fAbortingHint) \
  1630. (This)->lpVtbl -> Phase0Request(This,fAbortingHint)
  1631. #define ITransactionPhase0NotifyAsync_EnlistCompleted(This,status) \
  1632. (This)->lpVtbl -> EnlistCompleted(This,status)
  1633. #endif /* COBJMACROS */
  1634. #endif /* C style interface */
  1635. HRESULT STDMETHODCALLTYPE ITransactionPhase0NotifyAsync_Phase0Request_Proxy(
  1636. ITransactionPhase0NotifyAsync * This,
  1637. BOOL fAbortingHint);
  1638. void __RPC_STUB ITransactionPhase0NotifyAsync_Phase0Request_Stub(
  1639. IRpcStubBuffer *This,
  1640. IRpcChannelBuffer *_pRpcChannelBuffer,
  1641. PRPC_MESSAGE _pRpcMessage,
  1642. DWORD *_pdwStubPhase);
  1643. HRESULT STDMETHODCALLTYPE ITransactionPhase0NotifyAsync_EnlistCompleted_Proxy(
  1644. ITransactionPhase0NotifyAsync * This,
  1645. /* [in] */ HRESULT status);
  1646. void __RPC_STUB ITransactionPhase0NotifyAsync_EnlistCompleted_Stub(
  1647. IRpcStubBuffer *This,
  1648. IRpcChannelBuffer *_pRpcChannelBuffer,
  1649. PRPC_MESSAGE _pRpcMessage,
  1650. DWORD *_pdwStubPhase);
  1651. #endif /* __ITransactionPhase0NotifyAsync_INTERFACE_DEFINED__ */
  1652. #ifndef __ITransactionPhase0Factory_INTERFACE_DEFINED__
  1653. #define __ITransactionPhase0Factory_INTERFACE_DEFINED__
  1654. /* interface ITransactionPhase0Factory */
  1655. /* [unique][object][uuid] */
  1656. EXTERN_C const IID IID_ITransactionPhase0Factory;
  1657. #if defined(__cplusplus) && !defined(CINTERFACE)
  1658. MIDL_INTERFACE("82DC88E0-A954-11d1-8F88-00600895E7D5")
  1659. ITransactionPhase0Factory : public IUnknown
  1660. {
  1661. public:
  1662. virtual HRESULT STDMETHODCALLTYPE Create(
  1663. /* [in] */ ITransactionPhase0NotifyAsync *pPhase0Notify,
  1664. /* [out] */ ITransactionPhase0EnlistmentAsync **ppPhase0Enlistment) = 0;
  1665. };
  1666. #else /* C style interface */
  1667. typedef struct ITransactionPhase0FactoryVtbl
  1668. {
  1669. BEGIN_INTERFACE
  1670. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  1671. ITransactionPhase0Factory * This,
  1672. /* [in] */ REFIID riid,
  1673. /* [iid_is][out] */ void **ppvObject);
  1674. ULONG ( STDMETHODCALLTYPE *AddRef )(
  1675. ITransactionPhase0Factory * This);
  1676. ULONG ( STDMETHODCALLTYPE *Release )(
  1677. ITransactionPhase0Factory * This);
  1678. HRESULT ( STDMETHODCALLTYPE *Create )(
  1679. ITransactionPhase0Factory * This,
  1680. /* [in] */ ITransactionPhase0NotifyAsync *pPhase0Notify,
  1681. /* [out] */ ITransactionPhase0EnlistmentAsync **ppPhase0Enlistment);
  1682. END_INTERFACE
  1683. } ITransactionPhase0FactoryVtbl;
  1684. interface ITransactionPhase0Factory
  1685. {
  1686. CONST_VTBL struct ITransactionPhase0FactoryVtbl *lpVtbl;
  1687. };
  1688. #ifdef COBJMACROS
  1689. #define ITransactionPhase0Factory_QueryInterface(This,riid,ppvObject) \
  1690. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  1691. #define ITransactionPhase0Factory_AddRef(This) \
  1692. (This)->lpVtbl -> AddRef(This)
  1693. #define ITransactionPhase0Factory_Release(This) \
  1694. (This)->lpVtbl -> Release(This)
  1695. #define ITransactionPhase0Factory_Create(This,pPhase0Notify,ppPhase0Enlistment) \
  1696. (This)->lpVtbl -> Create(This,pPhase0Notify,ppPhase0Enlistment)
  1697. #endif /* COBJMACROS */
  1698. #endif /* C style interface */
  1699. HRESULT STDMETHODCALLTYPE ITransactionPhase0Factory_Create_Proxy(
  1700. ITransactionPhase0Factory * This,
  1701. /* [in] */ ITransactionPhase0NotifyAsync *pPhase0Notify,
  1702. /* [out] */ ITransactionPhase0EnlistmentAsync **ppPhase0Enlistment);
  1703. void __RPC_STUB ITransactionPhase0Factory_Create_Stub(
  1704. IRpcStubBuffer *This,
  1705. IRpcChannelBuffer *_pRpcChannelBuffer,
  1706. PRPC_MESSAGE _pRpcMessage,
  1707. DWORD *_pdwStubPhase);
  1708. #endif /* __ITransactionPhase0Factory_INTERFACE_DEFINED__ */
  1709. #ifndef __ITransactionTransmitter_INTERFACE_DEFINED__
  1710. #define __ITransactionTransmitter_INTERFACE_DEFINED__
  1711. /* interface ITransactionTransmitter */
  1712. /* [unique][object][uuid] */
  1713. EXTERN_C const IID IID_ITransactionTransmitter;
  1714. #if defined(__cplusplus) && !defined(CINTERFACE)
  1715. MIDL_INTERFACE("59313E01-B36C-11cf-A539-00AA006887C3")
  1716. ITransactionTransmitter : public IUnknown
  1717. {
  1718. public:
  1719. virtual HRESULT STDMETHODCALLTYPE Set(
  1720. /* [in] */ ITransaction *pTransaction) = 0;
  1721. virtual HRESULT STDMETHODCALLTYPE GetPropagationTokenSize(
  1722. /* [out] */ ULONG *pcbToken) = 0;
  1723. virtual HRESULT STDMETHODCALLTYPE MarshalPropagationToken(
  1724. /* [in] */ ULONG cbToken,
  1725. /* [size_is][out] */ byte *rgbToken,
  1726. /* [out] */ ULONG *pcbUsed) = 0;
  1727. virtual HRESULT STDMETHODCALLTYPE UnmarshalReturnToken(
  1728. /* [in] */ ULONG cbReturnToken,
  1729. /* [size_is][in] */ byte *rgbReturnToken) = 0;
  1730. virtual HRESULT STDMETHODCALLTYPE Reset( void) = 0;
  1731. };
  1732. #else /* C style interface */
  1733. typedef struct ITransactionTransmitterVtbl
  1734. {
  1735. BEGIN_INTERFACE
  1736. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  1737. ITransactionTransmitter * This,
  1738. /* [in] */ REFIID riid,
  1739. /* [iid_is][out] */ void **ppvObject);
  1740. ULONG ( STDMETHODCALLTYPE *AddRef )(
  1741. ITransactionTransmitter * This);
  1742. ULONG ( STDMETHODCALLTYPE *Release )(
  1743. ITransactionTransmitter * This);
  1744. HRESULT ( STDMETHODCALLTYPE *Set )(
  1745. ITransactionTransmitter * This,
  1746. /* [in] */ ITransaction *pTransaction);
  1747. HRESULT ( STDMETHODCALLTYPE *GetPropagationTokenSize )(
  1748. ITransactionTransmitter * This,
  1749. /* [out] */ ULONG *pcbToken);
  1750. HRESULT ( STDMETHODCALLTYPE *MarshalPropagationToken )(
  1751. ITransactionTransmitter * This,
  1752. /* [in] */ ULONG cbToken,
  1753. /* [size_is][out] */ byte *rgbToken,
  1754. /* [out] */ ULONG *pcbUsed);
  1755. HRESULT ( STDMETHODCALLTYPE *UnmarshalReturnToken )(
  1756. ITransactionTransmitter * This,
  1757. /* [in] */ ULONG cbReturnToken,
  1758. /* [size_is][in] */ byte *rgbReturnToken);
  1759. HRESULT ( STDMETHODCALLTYPE *Reset )(
  1760. ITransactionTransmitter * This);
  1761. END_INTERFACE
  1762. } ITransactionTransmitterVtbl;
  1763. interface ITransactionTransmitter
  1764. {
  1765. CONST_VTBL struct ITransactionTransmitterVtbl *lpVtbl;
  1766. };
  1767. #ifdef COBJMACROS
  1768. #define ITransactionTransmitter_QueryInterface(This,riid,ppvObject) \
  1769. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  1770. #define ITransactionTransmitter_AddRef(This) \
  1771. (This)->lpVtbl -> AddRef(This)
  1772. #define ITransactionTransmitter_Release(This) \
  1773. (This)->lpVtbl -> Release(This)
  1774. #define ITransactionTransmitter_Set(This,pTransaction) \
  1775. (This)->lpVtbl -> Set(This,pTransaction)
  1776. #define ITransactionTransmitter_GetPropagationTokenSize(This,pcbToken) \
  1777. (This)->lpVtbl -> GetPropagationTokenSize(This,pcbToken)
  1778. #define ITransactionTransmitter_MarshalPropagationToken(This,cbToken,rgbToken,pcbUsed) \
  1779. (This)->lpVtbl -> MarshalPropagationToken(This,cbToken,rgbToken,pcbUsed)
  1780. #define ITransactionTransmitter_UnmarshalReturnToken(This,cbReturnToken,rgbReturnToken) \
  1781. (This)->lpVtbl -> UnmarshalReturnToken(This,cbReturnToken,rgbReturnToken)
  1782. #define ITransactionTransmitter_Reset(This) \
  1783. (This)->lpVtbl -> Reset(This)
  1784. #endif /* COBJMACROS */
  1785. #endif /* C style interface */
  1786. HRESULT STDMETHODCALLTYPE ITransactionTransmitter_Set_Proxy(
  1787. ITransactionTransmitter * This,
  1788. /* [in] */ ITransaction *pTransaction);
  1789. void __RPC_STUB ITransactionTransmitter_Set_Stub(
  1790. IRpcStubBuffer *This,
  1791. IRpcChannelBuffer *_pRpcChannelBuffer,
  1792. PRPC_MESSAGE _pRpcMessage,
  1793. DWORD *_pdwStubPhase);
  1794. HRESULT STDMETHODCALLTYPE ITransactionTransmitter_GetPropagationTokenSize_Proxy(
  1795. ITransactionTransmitter * This,
  1796. /* [out] */ ULONG *pcbToken);
  1797. void __RPC_STUB ITransactionTransmitter_GetPropagationTokenSize_Stub(
  1798. IRpcStubBuffer *This,
  1799. IRpcChannelBuffer *_pRpcChannelBuffer,
  1800. PRPC_MESSAGE _pRpcMessage,
  1801. DWORD *_pdwStubPhase);
  1802. HRESULT STDMETHODCALLTYPE ITransactionTransmitter_MarshalPropagationToken_Proxy(
  1803. ITransactionTransmitter * This,
  1804. /* [in] */ ULONG cbToken,
  1805. /* [size_is][out] */ byte *rgbToken,
  1806. /* [out] */ ULONG *pcbUsed);
  1807. void __RPC_STUB ITransactionTransmitter_MarshalPropagationToken_Stub(
  1808. IRpcStubBuffer *This,
  1809. IRpcChannelBuffer *_pRpcChannelBuffer,
  1810. PRPC_MESSAGE _pRpcMessage,
  1811. DWORD *_pdwStubPhase);
  1812. HRESULT STDMETHODCALLTYPE ITransactionTransmitter_UnmarshalReturnToken_Proxy(
  1813. ITransactionTransmitter * This,
  1814. /* [in] */ ULONG cbReturnToken,
  1815. /* [size_is][in] */ byte *rgbReturnToken);
  1816. void __RPC_STUB ITransactionTransmitter_UnmarshalReturnToken_Stub(
  1817. IRpcStubBuffer *This,
  1818. IRpcChannelBuffer *_pRpcChannelBuffer,
  1819. PRPC_MESSAGE _pRpcMessage,
  1820. DWORD *_pdwStubPhase);
  1821. HRESULT STDMETHODCALLTYPE ITransactionTransmitter_Reset_Proxy(
  1822. ITransactionTransmitter * This);
  1823. void __RPC_STUB ITransactionTransmitter_Reset_Stub(
  1824. IRpcStubBuffer *This,
  1825. IRpcChannelBuffer *_pRpcChannelBuffer,
  1826. PRPC_MESSAGE _pRpcMessage,
  1827. DWORD *_pdwStubPhase);
  1828. #endif /* __ITransactionTransmitter_INTERFACE_DEFINED__ */
  1829. #ifndef __ITransactionTransmitterFactory_INTERFACE_DEFINED__
  1830. #define __ITransactionTransmitterFactory_INTERFACE_DEFINED__
  1831. /* interface ITransactionTransmitterFactory */
  1832. /* [unique][object][uuid] */
  1833. EXTERN_C const IID IID_ITransactionTransmitterFactory;
  1834. #if defined(__cplusplus) && !defined(CINTERFACE)
  1835. MIDL_INTERFACE("59313E00-B36C-11cf-A539-00AA006887C3")
  1836. ITransactionTransmitterFactory : public IUnknown
  1837. {
  1838. public:
  1839. virtual HRESULT STDMETHODCALLTYPE Create(
  1840. /* [out] */ ITransactionTransmitter **ppTransmitter) = 0;
  1841. };
  1842. #else /* C style interface */
  1843. typedef struct ITransactionTransmitterFactoryVtbl
  1844. {
  1845. BEGIN_INTERFACE
  1846. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  1847. ITransactionTransmitterFactory * This,
  1848. /* [in] */ REFIID riid,
  1849. /* [iid_is][out] */ void **ppvObject);
  1850. ULONG ( STDMETHODCALLTYPE *AddRef )(
  1851. ITransactionTransmitterFactory * This);
  1852. ULONG ( STDMETHODCALLTYPE *Release )(
  1853. ITransactionTransmitterFactory * This);
  1854. HRESULT ( STDMETHODCALLTYPE *Create )(
  1855. ITransactionTransmitterFactory * This,
  1856. /* [out] */ ITransactionTransmitter **ppTransmitter);
  1857. END_INTERFACE
  1858. } ITransactionTransmitterFactoryVtbl;
  1859. interface ITransactionTransmitterFactory
  1860. {
  1861. CONST_VTBL struct ITransactionTransmitterFactoryVtbl *lpVtbl;
  1862. };
  1863. #ifdef COBJMACROS
  1864. #define ITransactionTransmitterFactory_QueryInterface(This,riid,ppvObject) \
  1865. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  1866. #define ITransactionTransmitterFactory_AddRef(This) \
  1867. (This)->lpVtbl -> AddRef(This)
  1868. #define ITransactionTransmitterFactory_Release(This) \
  1869. (This)->lpVtbl -> Release(This)
  1870. #define ITransactionTransmitterFactory_Create(This,ppTransmitter) \
  1871. (This)->lpVtbl -> Create(This,ppTransmitter)
  1872. #endif /* COBJMACROS */
  1873. #endif /* C style interface */
  1874. HRESULT STDMETHODCALLTYPE ITransactionTransmitterFactory_Create_Proxy(
  1875. ITransactionTransmitterFactory * This,
  1876. /* [out] */ ITransactionTransmitter **ppTransmitter);
  1877. void __RPC_STUB ITransactionTransmitterFactory_Create_Stub(
  1878. IRpcStubBuffer *This,
  1879. IRpcChannelBuffer *_pRpcChannelBuffer,
  1880. PRPC_MESSAGE _pRpcMessage,
  1881. DWORD *_pdwStubPhase);
  1882. #endif /* __ITransactionTransmitterFactory_INTERFACE_DEFINED__ */
  1883. #ifndef __ITransactionReceiver_INTERFACE_DEFINED__
  1884. #define __ITransactionReceiver_INTERFACE_DEFINED__
  1885. /* interface ITransactionReceiver */
  1886. /* [unique][object][uuid] */
  1887. EXTERN_C const IID IID_ITransactionReceiver;
  1888. #if defined(__cplusplus) && !defined(CINTERFACE)
  1889. MIDL_INTERFACE("59313E03-B36C-11cf-A539-00AA006887C3")
  1890. ITransactionReceiver : public IUnknown
  1891. {
  1892. public:
  1893. virtual HRESULT STDMETHODCALLTYPE UnmarshalPropagationToken(
  1894. /* [in] */ ULONG cbToken,
  1895. /* [size_is][in] */ byte *rgbToken,
  1896. /* [out] */ ITransaction **ppTransaction) = 0;
  1897. virtual HRESULT STDMETHODCALLTYPE GetReturnTokenSize(
  1898. /* [out] */ ULONG *pcbReturnToken) = 0;
  1899. virtual HRESULT STDMETHODCALLTYPE MarshalReturnToken(
  1900. /* [in] */ ULONG cbReturnToken,
  1901. /* [size_is][out] */ byte *rgbReturnToken,
  1902. /* [out] */ ULONG *pcbUsed) = 0;
  1903. virtual HRESULT STDMETHODCALLTYPE Reset( void) = 0;
  1904. };
  1905. #else /* C style interface */
  1906. typedef struct ITransactionReceiverVtbl
  1907. {
  1908. BEGIN_INTERFACE
  1909. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  1910. ITransactionReceiver * This,
  1911. /* [in] */ REFIID riid,
  1912. /* [iid_is][out] */ void **ppvObject);
  1913. ULONG ( STDMETHODCALLTYPE *AddRef )(
  1914. ITransactionReceiver * This);
  1915. ULONG ( STDMETHODCALLTYPE *Release )(
  1916. ITransactionReceiver * This);
  1917. HRESULT ( STDMETHODCALLTYPE *UnmarshalPropagationToken )(
  1918. ITransactionReceiver * This,
  1919. /* [in] */ ULONG cbToken,
  1920. /* [size_is][in] */ byte *rgbToken,
  1921. /* [out] */ ITransaction **ppTransaction);
  1922. HRESULT ( STDMETHODCALLTYPE *GetReturnTokenSize )(
  1923. ITransactionReceiver * This,
  1924. /* [out] */ ULONG *pcbReturnToken);
  1925. HRESULT ( STDMETHODCALLTYPE *MarshalReturnToken )(
  1926. ITransactionReceiver * This,
  1927. /* [in] */ ULONG cbReturnToken,
  1928. /* [size_is][out] */ byte *rgbReturnToken,
  1929. /* [out] */ ULONG *pcbUsed);
  1930. HRESULT ( STDMETHODCALLTYPE *Reset )(
  1931. ITransactionReceiver * This);
  1932. END_INTERFACE
  1933. } ITransactionReceiverVtbl;
  1934. interface ITransactionReceiver
  1935. {
  1936. CONST_VTBL struct ITransactionReceiverVtbl *lpVtbl;
  1937. };
  1938. #ifdef COBJMACROS
  1939. #define ITransactionReceiver_QueryInterface(This,riid,ppvObject) \
  1940. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  1941. #define ITransactionReceiver_AddRef(This) \
  1942. (This)->lpVtbl -> AddRef(This)
  1943. #define ITransactionReceiver_Release(This) \
  1944. (This)->lpVtbl -> Release(This)
  1945. #define ITransactionReceiver_UnmarshalPropagationToken(This,cbToken,rgbToken,ppTransaction) \
  1946. (This)->lpVtbl -> UnmarshalPropagationToken(This,cbToken,rgbToken,ppTransaction)
  1947. #define ITransactionReceiver_GetReturnTokenSize(This,pcbReturnToken) \
  1948. (This)->lpVtbl -> GetReturnTokenSize(This,pcbReturnToken)
  1949. #define ITransactionReceiver_MarshalReturnToken(This,cbReturnToken,rgbReturnToken,pcbUsed) \
  1950. (This)->lpVtbl -> MarshalReturnToken(This,cbReturnToken,rgbReturnToken,pcbUsed)
  1951. #define ITransactionReceiver_Reset(This) \
  1952. (This)->lpVtbl -> Reset(This)
  1953. #endif /* COBJMACROS */
  1954. #endif /* C style interface */
  1955. HRESULT STDMETHODCALLTYPE ITransactionReceiver_UnmarshalPropagationToken_Proxy(
  1956. ITransactionReceiver * This,
  1957. /* [in] */ ULONG cbToken,
  1958. /* [size_is][in] */ byte *rgbToken,
  1959. /* [out] */ ITransaction **ppTransaction);
  1960. void __RPC_STUB ITransactionReceiver_UnmarshalPropagationToken_Stub(
  1961. IRpcStubBuffer *This,
  1962. IRpcChannelBuffer *_pRpcChannelBuffer,
  1963. PRPC_MESSAGE _pRpcMessage,
  1964. DWORD *_pdwStubPhase);
  1965. HRESULT STDMETHODCALLTYPE ITransactionReceiver_GetReturnTokenSize_Proxy(
  1966. ITransactionReceiver * This,
  1967. /* [out] */ ULONG *pcbReturnToken);
  1968. void __RPC_STUB ITransactionReceiver_GetReturnTokenSize_Stub(
  1969. IRpcStubBuffer *This,
  1970. IRpcChannelBuffer *_pRpcChannelBuffer,
  1971. PRPC_MESSAGE _pRpcMessage,
  1972. DWORD *_pdwStubPhase);
  1973. HRESULT STDMETHODCALLTYPE ITransactionReceiver_MarshalReturnToken_Proxy(
  1974. ITransactionReceiver * This,
  1975. /* [in] */ ULONG cbReturnToken,
  1976. /* [size_is][out] */ byte *rgbReturnToken,
  1977. /* [out] */ ULONG *pcbUsed);
  1978. void __RPC_STUB ITransactionReceiver_MarshalReturnToken_Stub(
  1979. IRpcStubBuffer *This,
  1980. IRpcChannelBuffer *_pRpcChannelBuffer,
  1981. PRPC_MESSAGE _pRpcMessage,
  1982. DWORD *_pdwStubPhase);
  1983. HRESULT STDMETHODCALLTYPE ITransactionReceiver_Reset_Proxy(
  1984. ITransactionReceiver * This);
  1985. void __RPC_STUB ITransactionReceiver_Reset_Stub(
  1986. IRpcStubBuffer *This,
  1987. IRpcChannelBuffer *_pRpcChannelBuffer,
  1988. PRPC_MESSAGE _pRpcMessage,
  1989. DWORD *_pdwStubPhase);
  1990. #endif /* __ITransactionReceiver_INTERFACE_DEFINED__ */
  1991. #ifndef __ITransactionReceiverFactory_INTERFACE_DEFINED__
  1992. #define __ITransactionReceiverFactory_INTERFACE_DEFINED__
  1993. /* interface ITransactionReceiverFactory */
  1994. /* [unique][object][uuid] */
  1995. EXTERN_C const IID IID_ITransactionReceiverFactory;
  1996. #if defined(__cplusplus) && !defined(CINTERFACE)
  1997. MIDL_INTERFACE("59313E02-B36C-11cf-A539-00AA006887C3")
  1998. ITransactionReceiverFactory : public IUnknown
  1999. {
  2000. public:
  2001. virtual HRESULT STDMETHODCALLTYPE Create(
  2002. /* [out] */ ITransactionReceiver **ppReceiver) = 0;
  2003. };
  2004. #else /* C style interface */
  2005. typedef struct ITransactionReceiverFactoryVtbl
  2006. {
  2007. BEGIN_INTERFACE
  2008. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  2009. ITransactionReceiverFactory * This,
  2010. /* [in] */ REFIID riid,
  2011. /* [iid_is][out] */ void **ppvObject);
  2012. ULONG ( STDMETHODCALLTYPE *AddRef )(
  2013. ITransactionReceiverFactory * This);
  2014. ULONG ( STDMETHODCALLTYPE *Release )(
  2015. ITransactionReceiverFactory * This);
  2016. HRESULT ( STDMETHODCALLTYPE *Create )(
  2017. ITransactionReceiverFactory * This,
  2018. /* [out] */ ITransactionReceiver **ppReceiver);
  2019. END_INTERFACE
  2020. } ITransactionReceiverFactoryVtbl;
  2021. interface ITransactionReceiverFactory
  2022. {
  2023. CONST_VTBL struct ITransactionReceiverFactoryVtbl *lpVtbl;
  2024. };
  2025. #ifdef COBJMACROS
  2026. #define ITransactionReceiverFactory_QueryInterface(This,riid,ppvObject) \
  2027. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  2028. #define ITransactionReceiverFactory_AddRef(This) \
  2029. (This)->lpVtbl -> AddRef(This)
  2030. #define ITransactionReceiverFactory_Release(This) \
  2031. (This)->lpVtbl -> Release(This)
  2032. #define ITransactionReceiverFactory_Create(This,ppReceiver) \
  2033. (This)->lpVtbl -> Create(This,ppReceiver)
  2034. #endif /* COBJMACROS */
  2035. #endif /* C style interface */
  2036. HRESULT STDMETHODCALLTYPE ITransactionReceiverFactory_Create_Proxy(
  2037. ITransactionReceiverFactory * This,
  2038. /* [out] */ ITransactionReceiver **ppReceiver);
  2039. void __RPC_STUB ITransactionReceiverFactory_Create_Stub(
  2040. IRpcStubBuffer *This,
  2041. IRpcChannelBuffer *_pRpcChannelBuffer,
  2042. PRPC_MESSAGE _pRpcMessage,
  2043. DWORD *_pdwStubPhase);
  2044. #endif /* __ITransactionReceiverFactory_INTERFACE_DEFINED__ */
  2045. /* interface __MIDL_itf_txdtc_0139 */
  2046. /* [local] */
  2047. typedef struct _ProxyConfigParams
  2048. {
  2049. WORD wcThreadsMax;
  2050. } PROXY_CONFIG_PARAMS;
  2051. extern RPC_IF_HANDLE __MIDL_itf_txdtc_0139_v0_0_c_ifspec;
  2052. extern RPC_IF_HANDLE __MIDL_itf_txdtc_0139_v0_0_s_ifspec;
  2053. #ifndef __IDtcLuConfigure_INTERFACE_DEFINED__
  2054. #define __IDtcLuConfigure_INTERFACE_DEFINED__
  2055. /* interface IDtcLuConfigure */
  2056. /* [uuid][unique][object] */
  2057. EXTERN_C const IID IID_IDtcLuConfigure;
  2058. #if defined(__cplusplus) && !defined(CINTERFACE)
  2059. MIDL_INTERFACE("4131E760-1AEA-11d0-944B-00A0C905416E")
  2060. IDtcLuConfigure : public IUnknown
  2061. {
  2062. public:
  2063. virtual HRESULT STDMETHODCALLTYPE Add(
  2064. /* [size_is][in] */ byte *pucLuPair,
  2065. /* [in] */ DWORD cbLuPair) = 0;
  2066. virtual HRESULT STDMETHODCALLTYPE Delete(
  2067. /* [size_is][in] */ byte *pucLuPair,
  2068. /* [in] */ DWORD cbLuPair) = 0;
  2069. };
  2070. #else /* C style interface */
  2071. typedef struct IDtcLuConfigureVtbl
  2072. {
  2073. BEGIN_INTERFACE
  2074. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  2075. IDtcLuConfigure * This,
  2076. /* [in] */ REFIID riid,
  2077. /* [iid_is][out] */ void **ppvObject);
  2078. ULONG ( STDMETHODCALLTYPE *AddRef )(
  2079. IDtcLuConfigure * This);
  2080. ULONG ( STDMETHODCALLTYPE *Release )(
  2081. IDtcLuConfigure * This);
  2082. HRESULT ( STDMETHODCALLTYPE *Add )(
  2083. IDtcLuConfigure * This,
  2084. /* [size_is][in] */ byte *pucLuPair,
  2085. /* [in] */ DWORD cbLuPair);
  2086. HRESULT ( STDMETHODCALLTYPE *Delete )(
  2087. IDtcLuConfigure * This,
  2088. /* [size_is][in] */ byte *pucLuPair,
  2089. /* [in] */ DWORD cbLuPair);
  2090. END_INTERFACE
  2091. } IDtcLuConfigureVtbl;
  2092. interface IDtcLuConfigure
  2093. {
  2094. CONST_VTBL struct IDtcLuConfigureVtbl *lpVtbl;
  2095. };
  2096. #ifdef COBJMACROS
  2097. #define IDtcLuConfigure_QueryInterface(This,riid,ppvObject) \
  2098. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  2099. #define IDtcLuConfigure_AddRef(This) \
  2100. (This)->lpVtbl -> AddRef(This)
  2101. #define IDtcLuConfigure_Release(This) \
  2102. (This)->lpVtbl -> Release(This)
  2103. #define IDtcLuConfigure_Add(This,pucLuPair,cbLuPair) \
  2104. (This)->lpVtbl -> Add(This,pucLuPair,cbLuPair)
  2105. #define IDtcLuConfigure_Delete(This,pucLuPair,cbLuPair) \
  2106. (This)->lpVtbl -> Delete(This,pucLuPair,cbLuPair)
  2107. #endif /* COBJMACROS */
  2108. #endif /* C style interface */
  2109. HRESULT STDMETHODCALLTYPE IDtcLuConfigure_Add_Proxy(
  2110. IDtcLuConfigure * This,
  2111. /* [size_is][in] */ byte *pucLuPair,
  2112. /* [in] */ DWORD cbLuPair);
  2113. void __RPC_STUB IDtcLuConfigure_Add_Stub(
  2114. IRpcStubBuffer *This,
  2115. IRpcChannelBuffer *_pRpcChannelBuffer,
  2116. PRPC_MESSAGE _pRpcMessage,
  2117. DWORD *_pdwStubPhase);
  2118. HRESULT STDMETHODCALLTYPE IDtcLuConfigure_Delete_Proxy(
  2119. IDtcLuConfigure * This,
  2120. /* [size_is][in] */ byte *pucLuPair,
  2121. /* [in] */ DWORD cbLuPair);
  2122. void __RPC_STUB IDtcLuConfigure_Delete_Stub(
  2123. IRpcStubBuffer *This,
  2124. IRpcChannelBuffer *_pRpcChannelBuffer,
  2125. PRPC_MESSAGE _pRpcMessage,
  2126. DWORD *_pdwStubPhase);
  2127. #endif /* __IDtcLuConfigure_INTERFACE_DEFINED__ */
  2128. #ifndef __IDtcLuRecovery_INTERFACE_DEFINED__
  2129. #define __IDtcLuRecovery_INTERFACE_DEFINED__
  2130. /* interface IDtcLuRecovery */
  2131. /* [uuid][unique][object] */
  2132. EXTERN_C const IID IID_IDtcLuRecovery;
  2133. #if defined(__cplusplus) && !defined(CINTERFACE)
  2134. MIDL_INTERFACE("AC2B8AD2-D6F0-11d0-B386-00A0C9083365")
  2135. IDtcLuRecovery : public IUnknown
  2136. {
  2137. public:
  2138. };
  2139. #else /* C style interface */
  2140. typedef struct IDtcLuRecoveryVtbl
  2141. {
  2142. BEGIN_INTERFACE
  2143. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  2144. IDtcLuRecovery * This,
  2145. /* [in] */ REFIID riid,
  2146. /* [iid_is][out] */ void **ppvObject);
  2147. ULONG ( STDMETHODCALLTYPE *AddRef )(
  2148. IDtcLuRecovery * This);
  2149. ULONG ( STDMETHODCALLTYPE *Release )(
  2150. IDtcLuRecovery * This);
  2151. END_INTERFACE
  2152. } IDtcLuRecoveryVtbl;
  2153. interface IDtcLuRecovery
  2154. {
  2155. CONST_VTBL struct IDtcLuRecoveryVtbl *lpVtbl;
  2156. };
  2157. #ifdef COBJMACROS
  2158. #define IDtcLuRecovery_QueryInterface(This,riid,ppvObject) \
  2159. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  2160. #define IDtcLuRecovery_AddRef(This) \
  2161. (This)->lpVtbl -> AddRef(This)
  2162. #define IDtcLuRecovery_Release(This) \
  2163. (This)->lpVtbl -> Release(This)
  2164. #endif /* COBJMACROS */
  2165. #endif /* C style interface */
  2166. #endif /* __IDtcLuRecovery_INTERFACE_DEFINED__ */
  2167. #ifndef __IDtcLuRecoveryFactory_INTERFACE_DEFINED__
  2168. #define __IDtcLuRecoveryFactory_INTERFACE_DEFINED__
  2169. /* interface IDtcLuRecoveryFactory */
  2170. /* [uuid][unique][object] */
  2171. EXTERN_C const IID IID_IDtcLuRecoveryFactory;
  2172. #if defined(__cplusplus) && !defined(CINTERFACE)
  2173. MIDL_INTERFACE("4131E762-1AEA-11d0-944B-00A0C905416E")
  2174. IDtcLuRecoveryFactory : public IUnknown
  2175. {
  2176. public:
  2177. virtual HRESULT STDMETHODCALLTYPE Create(
  2178. /* [size_is][in] */ byte *pucLuPair,
  2179. /* [in] */ DWORD cbLuPair,
  2180. /* [out] */ IDtcLuRecovery **ppRecovery) = 0;
  2181. };
  2182. #else /* C style interface */
  2183. typedef struct IDtcLuRecoveryFactoryVtbl
  2184. {
  2185. BEGIN_INTERFACE
  2186. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  2187. IDtcLuRecoveryFactory * This,
  2188. /* [in] */ REFIID riid,
  2189. /* [iid_is][out] */ void **ppvObject);
  2190. ULONG ( STDMETHODCALLTYPE *AddRef )(
  2191. IDtcLuRecoveryFactory * This);
  2192. ULONG ( STDMETHODCALLTYPE *Release )(
  2193. IDtcLuRecoveryFactory * This);
  2194. HRESULT ( STDMETHODCALLTYPE *Create )(
  2195. IDtcLuRecoveryFactory * This,
  2196. /* [size_is][in] */ byte *pucLuPair,
  2197. /* [in] */ DWORD cbLuPair,
  2198. /* [out] */ IDtcLuRecovery **ppRecovery);
  2199. END_INTERFACE
  2200. } IDtcLuRecoveryFactoryVtbl;
  2201. interface IDtcLuRecoveryFactory
  2202. {
  2203. CONST_VTBL struct IDtcLuRecoveryFactoryVtbl *lpVtbl;
  2204. };
  2205. #ifdef COBJMACROS
  2206. #define IDtcLuRecoveryFactory_QueryInterface(This,riid,ppvObject) \
  2207. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  2208. #define IDtcLuRecoveryFactory_AddRef(This) \
  2209. (This)->lpVtbl -> AddRef(This)
  2210. #define IDtcLuRecoveryFactory_Release(This) \
  2211. (This)->lpVtbl -> Release(This)
  2212. #define IDtcLuRecoveryFactory_Create(This,pucLuPair,cbLuPair,ppRecovery) \
  2213. (This)->lpVtbl -> Create(This,pucLuPair,cbLuPair,ppRecovery)
  2214. #endif /* COBJMACROS */
  2215. #endif /* C style interface */
  2216. HRESULT STDMETHODCALLTYPE IDtcLuRecoveryFactory_Create_Proxy(
  2217. IDtcLuRecoveryFactory * This,
  2218. /* [size_is][in] */ byte *pucLuPair,
  2219. /* [in] */ DWORD cbLuPair,
  2220. /* [out] */ IDtcLuRecovery **ppRecovery);
  2221. void __RPC_STUB IDtcLuRecoveryFactory_Create_Stub(
  2222. IRpcStubBuffer *This,
  2223. IRpcChannelBuffer *_pRpcChannelBuffer,
  2224. PRPC_MESSAGE _pRpcMessage,
  2225. DWORD *_pdwStubPhase);
  2226. #endif /* __IDtcLuRecoveryFactory_INTERFACE_DEFINED__ */
  2227. /* interface __MIDL_itf_txdtc_0142 */
  2228. /* [local] */
  2229. typedef
  2230. enum _DtcLu_LocalRecovery_Work
  2231. { DTCINITIATEDRECOVERYWORK_CHECKLUSTATUS = 1,
  2232. DTCINITIATEDRECOVERYWORK_TRANS = DTCINITIATEDRECOVERYWORK_CHECKLUSTATUS + 1,
  2233. DTCINITIATEDRECOVERYWORK_TMDOWN = DTCINITIATEDRECOVERYWORK_TRANS + 1
  2234. } DTCINITIATEDRECOVERYWORK;
  2235. typedef
  2236. enum _DtcLu_Xln
  2237. { DTCLUXLN_COLD = 1,
  2238. DTCLUXLN_WARM = DTCLUXLN_COLD + 1
  2239. } DTCLUXLN;
  2240. typedef
  2241. enum _DtcLu_Xln_Confirmation
  2242. { DTCLUXLNCONFIRMATION_CONFIRM = 1,
  2243. DTCLUXLNCONFIRMATION_LOGNAMEMISMATCH = DTCLUXLNCONFIRMATION_CONFIRM + 1,
  2244. DTCLUXLNCONFIRMATION_COLDWARMMISMATCH = DTCLUXLNCONFIRMATION_LOGNAMEMISMATCH + 1,
  2245. DTCLUXLNCONFIRMATION_OBSOLETE = DTCLUXLNCONFIRMATION_COLDWARMMISMATCH + 1
  2246. } DTCLUXLNCONFIRMATION;
  2247. typedef
  2248. enum _DtcLu_Xln_Response
  2249. { DTCLUXLNRESPONSE_OK_SENDOURXLNBACK = 1,
  2250. DTCLUXLNRESPONSE_OK_SENDCONFIRMATION = DTCLUXLNRESPONSE_OK_SENDOURXLNBACK + 1,
  2251. DTCLUXLNRESPONSE_LOGNAMEMISMATCH = DTCLUXLNRESPONSE_OK_SENDCONFIRMATION + 1,
  2252. DTCLUXLNRESPONSE_COLDWARMMISMATCH = DTCLUXLNRESPONSE_LOGNAMEMISMATCH + 1
  2253. } DTCLUXLNRESPONSE;
  2254. typedef
  2255. enum _DtcLu_Xln_Error
  2256. { DTCLUXLNERROR_PROTOCOL = 1,
  2257. DTCLUXLNERROR_LOGNAMEMISMATCH = DTCLUXLNERROR_PROTOCOL + 1,
  2258. DTCLUXLNERROR_COLDWARMMISMATCH = DTCLUXLNERROR_LOGNAMEMISMATCH + 1
  2259. } DTCLUXLNERROR;
  2260. typedef
  2261. enum _DtcLu_CompareState
  2262. { DTCLUCOMPARESTATE_COMMITTED = 1,
  2263. DTCLUCOMPARESTATE_HEURISTICCOMMITTED = DTCLUCOMPARESTATE_COMMITTED + 1,
  2264. DTCLUCOMPARESTATE_HEURISTICMIXED = DTCLUCOMPARESTATE_HEURISTICCOMMITTED + 1,
  2265. DTCLUCOMPARESTATE_HEURISTICRESET = DTCLUCOMPARESTATE_HEURISTICMIXED + 1,
  2266. DTCLUCOMPARESTATE_INDOUBT = DTCLUCOMPARESTATE_HEURISTICRESET + 1,
  2267. DTCLUCOMPARESTATE_RESET = DTCLUCOMPARESTATE_INDOUBT + 1
  2268. } DTCLUCOMPARESTATE;
  2269. typedef
  2270. enum _DtcLu_CompareStates_Confirmation
  2271. { DTCLUCOMPARESTATESCONFIRMATION_CONFIRM = 1,
  2272. DTCLUCOMPARESTATESCONFIRMATION_PROTOCOL = DTCLUCOMPARESTATESCONFIRMATION_CONFIRM + 1
  2273. } DTCLUCOMPARESTATESCONFIRMATION;
  2274. typedef
  2275. enum _DtcLu_CompareStates_Error
  2276. { DTCLUCOMPARESTATESERROR_PROTOCOL = 1
  2277. } DTCLUCOMPARESTATESERROR;
  2278. typedef
  2279. enum _DtcLu_CompareStates_Response
  2280. { DTCLUCOMPARESTATESRESPONSE_OK = 1,
  2281. DTCLUCOMPARESTATESRESPONSE_PROTOCOL = DTCLUCOMPARESTATESRESPONSE_OK + 1
  2282. } DTCLUCOMPARESTATESRESPONSE;
  2283. extern RPC_IF_HANDLE __MIDL_itf_txdtc_0142_v0_0_c_ifspec;
  2284. extern RPC_IF_HANDLE __MIDL_itf_txdtc_0142_v0_0_s_ifspec;
  2285. #ifndef __IDtcLuRecoveryInitiatedByDtcTransWork_INTERFACE_DEFINED__
  2286. #define __IDtcLuRecoveryInitiatedByDtcTransWork_INTERFACE_DEFINED__
  2287. /* interface IDtcLuRecoveryInitiatedByDtcTransWork */
  2288. /* [local][uuid][unique][object] */
  2289. EXTERN_C const IID IID_IDtcLuRecoveryInitiatedByDtcTransWork;
  2290. #if defined(__cplusplus) && !defined(CINTERFACE)
  2291. MIDL_INTERFACE("4131E765-1AEA-11d0-944B-00A0C905416E")
  2292. IDtcLuRecoveryInitiatedByDtcTransWork : public IUnknown
  2293. {
  2294. public:
  2295. virtual HRESULT STDMETHODCALLTYPE GetLogNameSizes(
  2296. /* [out] */ DWORD *pcbOurLogName,
  2297. /* [out] */ DWORD *pcbRemoteLogName) = 0;
  2298. virtual HRESULT STDMETHODCALLTYPE GetOurXln(
  2299. /* [out] */ DTCLUXLN *pXln,
  2300. /* [out][in] */ unsigned char *pOurLogName,
  2301. /* [out][in] */ unsigned char *pRemoteLogName,
  2302. /* [out] */ DWORD *pdwProtocol) = 0;
  2303. virtual HRESULT STDMETHODCALLTYPE HandleConfirmationFromOurXln(
  2304. /* [in] */ DTCLUXLNCONFIRMATION Confirmation) = 0;
  2305. virtual HRESULT STDMETHODCALLTYPE HandleTheirXlnResponse(
  2306. /* [in] */ DTCLUXLN Xln,
  2307. /* [in] */ unsigned char *pRemoteLogName,
  2308. /* [in] */ DWORD cbRemoteLogName,
  2309. /* [in] */ DWORD dwProtocol,
  2310. /* [out] */ DTCLUXLNCONFIRMATION *pConfirmation) = 0;
  2311. virtual HRESULT STDMETHODCALLTYPE HandleErrorFromOurXln(
  2312. /* [in] */ DTCLUXLNERROR Error) = 0;
  2313. virtual HRESULT STDMETHODCALLTYPE CheckForCompareStates(
  2314. /* [out] */ BOOL *fCompareStates) = 0;
  2315. virtual HRESULT STDMETHODCALLTYPE GetOurTransIdSize(
  2316. /* [out][in] */ DWORD *pcbOurTransId) = 0;
  2317. virtual HRESULT STDMETHODCALLTYPE GetOurCompareStates(
  2318. /* [out][in] */ unsigned char *pOurTransId,
  2319. /* [out] */ DTCLUCOMPARESTATE *pCompareState) = 0;
  2320. virtual HRESULT STDMETHODCALLTYPE HandleTheirCompareStatesResponse(
  2321. /* [in] */ DTCLUCOMPARESTATE CompareState,
  2322. /* [out] */ DTCLUCOMPARESTATESCONFIRMATION *pConfirmation) = 0;
  2323. virtual HRESULT STDMETHODCALLTYPE HandleErrorFromOurCompareStates(
  2324. /* [in] */ DTCLUCOMPARESTATESERROR Error) = 0;
  2325. virtual HRESULT STDMETHODCALLTYPE ConversationLost( void) = 0;
  2326. virtual HRESULT STDMETHODCALLTYPE GetRecoverySeqNum(
  2327. /* [out] */ LONG *plRecoverySeqNum) = 0;
  2328. virtual HRESULT STDMETHODCALLTYPE ObsoleteRecoverySeqNum(
  2329. /* [in] */ LONG lNewRecoverySeqNum) = 0;
  2330. };
  2331. #else /* C style interface */
  2332. typedef struct IDtcLuRecoveryInitiatedByDtcTransWorkVtbl
  2333. {
  2334. BEGIN_INTERFACE
  2335. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  2336. IDtcLuRecoveryInitiatedByDtcTransWork * This,
  2337. /* [in] */ REFIID riid,
  2338. /* [iid_is][out] */ void **ppvObject);
  2339. ULONG ( STDMETHODCALLTYPE *AddRef )(
  2340. IDtcLuRecoveryInitiatedByDtcTransWork * This);
  2341. ULONG ( STDMETHODCALLTYPE *Release )(
  2342. IDtcLuRecoveryInitiatedByDtcTransWork * This);
  2343. HRESULT ( STDMETHODCALLTYPE *GetLogNameSizes )(
  2344. IDtcLuRecoveryInitiatedByDtcTransWork * This,
  2345. /* [out] */ DWORD *pcbOurLogName,
  2346. /* [out] */ DWORD *pcbRemoteLogName);
  2347. HRESULT ( STDMETHODCALLTYPE *GetOurXln )(
  2348. IDtcLuRecoveryInitiatedByDtcTransWork * This,
  2349. /* [out] */ DTCLUXLN *pXln,
  2350. /* [out][in] */ unsigned char *pOurLogName,
  2351. /* [out][in] */ unsigned char *pRemoteLogName,
  2352. /* [out] */ DWORD *pdwProtocol);
  2353. HRESULT ( STDMETHODCALLTYPE *HandleConfirmationFromOurXln )(
  2354. IDtcLuRecoveryInitiatedByDtcTransWork * This,
  2355. /* [in] */ DTCLUXLNCONFIRMATION Confirmation);
  2356. HRESULT ( STDMETHODCALLTYPE *HandleTheirXlnResponse )(
  2357. IDtcLuRecoveryInitiatedByDtcTransWork * This,
  2358. /* [in] */ DTCLUXLN Xln,
  2359. /* [in] */ unsigned char *pRemoteLogName,
  2360. /* [in] */ DWORD cbRemoteLogName,
  2361. /* [in] */ DWORD dwProtocol,
  2362. /* [out] */ DTCLUXLNCONFIRMATION *pConfirmation);
  2363. HRESULT ( STDMETHODCALLTYPE *HandleErrorFromOurXln )(
  2364. IDtcLuRecoveryInitiatedByDtcTransWork * This,
  2365. /* [in] */ DTCLUXLNERROR Error);
  2366. HRESULT ( STDMETHODCALLTYPE *CheckForCompareStates )(
  2367. IDtcLuRecoveryInitiatedByDtcTransWork * This,
  2368. /* [out] */ BOOL *fCompareStates);
  2369. HRESULT ( STDMETHODCALLTYPE *GetOurTransIdSize )(
  2370. IDtcLuRecoveryInitiatedByDtcTransWork * This,
  2371. /* [out][in] */ DWORD *pcbOurTransId);
  2372. HRESULT ( STDMETHODCALLTYPE *GetOurCompareStates )(
  2373. IDtcLuRecoveryInitiatedByDtcTransWork * This,
  2374. /* [out][in] */ unsigned char *pOurTransId,
  2375. /* [out] */ DTCLUCOMPARESTATE *pCompareState);
  2376. HRESULT ( STDMETHODCALLTYPE *HandleTheirCompareStatesResponse )(
  2377. IDtcLuRecoveryInitiatedByDtcTransWork * This,
  2378. /* [in] */ DTCLUCOMPARESTATE CompareState,
  2379. /* [out] */ DTCLUCOMPARESTATESCONFIRMATION *pConfirmation);
  2380. HRESULT ( STDMETHODCALLTYPE *HandleErrorFromOurCompareStates )(
  2381. IDtcLuRecoveryInitiatedByDtcTransWork * This,
  2382. /* [in] */ DTCLUCOMPARESTATESERROR Error);
  2383. HRESULT ( STDMETHODCALLTYPE *ConversationLost )(
  2384. IDtcLuRecoveryInitiatedByDtcTransWork * This);
  2385. HRESULT ( STDMETHODCALLTYPE *GetRecoverySeqNum )(
  2386. IDtcLuRecoveryInitiatedByDtcTransWork * This,
  2387. /* [out] */ LONG *plRecoverySeqNum);
  2388. HRESULT ( STDMETHODCALLTYPE *ObsoleteRecoverySeqNum )(
  2389. IDtcLuRecoveryInitiatedByDtcTransWork * This,
  2390. /* [in] */ LONG lNewRecoverySeqNum);
  2391. END_INTERFACE
  2392. } IDtcLuRecoveryInitiatedByDtcTransWorkVtbl;
  2393. interface IDtcLuRecoveryInitiatedByDtcTransWork
  2394. {
  2395. CONST_VTBL struct IDtcLuRecoveryInitiatedByDtcTransWorkVtbl *lpVtbl;
  2396. };
  2397. #ifdef COBJMACROS
  2398. #define IDtcLuRecoveryInitiatedByDtcTransWork_QueryInterface(This,riid,ppvObject) \
  2399. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  2400. #define IDtcLuRecoveryInitiatedByDtcTransWork_AddRef(This) \
  2401. (This)->lpVtbl -> AddRef(This)
  2402. #define IDtcLuRecoveryInitiatedByDtcTransWork_Release(This) \
  2403. (This)->lpVtbl -> Release(This)
  2404. #define IDtcLuRecoveryInitiatedByDtcTransWork_GetLogNameSizes(This,pcbOurLogName,pcbRemoteLogName) \
  2405. (This)->lpVtbl -> GetLogNameSizes(This,pcbOurLogName,pcbRemoteLogName)
  2406. #define IDtcLuRecoveryInitiatedByDtcTransWork_GetOurXln(This,pXln,pOurLogName,pRemoteLogName,pdwProtocol) \
  2407. (This)->lpVtbl -> GetOurXln(This,pXln,pOurLogName,pRemoteLogName,pdwProtocol)
  2408. #define IDtcLuRecoveryInitiatedByDtcTransWork_HandleConfirmationFromOurXln(This,Confirmation) \
  2409. (This)->lpVtbl -> HandleConfirmationFromOurXln(This,Confirmation)
  2410. #define IDtcLuRecoveryInitiatedByDtcTransWork_HandleTheirXlnResponse(This,Xln,pRemoteLogName,cbRemoteLogName,dwProtocol,pConfirmation) \
  2411. (This)->lpVtbl -> HandleTheirXlnResponse(This,Xln,pRemoteLogName,cbRemoteLogName,dwProtocol,pConfirmation)
  2412. #define IDtcLuRecoveryInitiatedByDtcTransWork_HandleErrorFromOurXln(This,Error) \
  2413. (This)->lpVtbl -> HandleErrorFromOurXln(This,Error)
  2414. #define IDtcLuRecoveryInitiatedByDtcTransWork_CheckForCompareStates(This,fCompareStates) \
  2415. (This)->lpVtbl -> CheckForCompareStates(This,fCompareStates)
  2416. #define IDtcLuRecoveryInitiatedByDtcTransWork_GetOurTransIdSize(This,pcbOurTransId) \
  2417. (This)->lpVtbl -> GetOurTransIdSize(This,pcbOurTransId)
  2418. #define IDtcLuRecoveryInitiatedByDtcTransWork_GetOurCompareStates(This,pOurTransId,pCompareState) \
  2419. (This)->lpVtbl -> GetOurCompareStates(This,pOurTransId,pCompareState)
  2420. #define IDtcLuRecoveryInitiatedByDtcTransWork_HandleTheirCompareStatesResponse(This,CompareState,pConfirmation) \
  2421. (This)->lpVtbl -> HandleTheirCompareStatesResponse(This,CompareState,pConfirmation)
  2422. #define IDtcLuRecoveryInitiatedByDtcTransWork_HandleErrorFromOurCompareStates(This,Error) \
  2423. (This)->lpVtbl -> HandleErrorFromOurCompareStates(This,Error)
  2424. #define IDtcLuRecoveryInitiatedByDtcTransWork_ConversationLost(This) \
  2425. (This)->lpVtbl -> ConversationLost(This)
  2426. #define IDtcLuRecoveryInitiatedByDtcTransWork_GetRecoverySeqNum(This,plRecoverySeqNum) \
  2427. (This)->lpVtbl -> GetRecoverySeqNum(This,plRecoverySeqNum)
  2428. #define IDtcLuRecoveryInitiatedByDtcTransWork_ObsoleteRecoverySeqNum(This,lNewRecoverySeqNum) \
  2429. (This)->lpVtbl -> ObsoleteRecoverySeqNum(This,lNewRecoverySeqNum)
  2430. #endif /* COBJMACROS */
  2431. #endif /* C style interface */
  2432. HRESULT STDMETHODCALLTYPE IDtcLuRecoveryInitiatedByDtcTransWork_GetLogNameSizes_Proxy(
  2433. IDtcLuRecoveryInitiatedByDtcTransWork * This,
  2434. /* [out] */ DWORD *pcbOurLogName,
  2435. /* [out] */ DWORD *pcbRemoteLogName);
  2436. void __RPC_STUB IDtcLuRecoveryInitiatedByDtcTransWork_GetLogNameSizes_Stub(
  2437. IRpcStubBuffer *This,
  2438. IRpcChannelBuffer *_pRpcChannelBuffer,
  2439. PRPC_MESSAGE _pRpcMessage,
  2440. DWORD *_pdwStubPhase);
  2441. HRESULT STDMETHODCALLTYPE IDtcLuRecoveryInitiatedByDtcTransWork_GetOurXln_Proxy(
  2442. IDtcLuRecoveryInitiatedByDtcTransWork * This,
  2443. /* [out] */ DTCLUXLN *pXln,
  2444. /* [out][in] */ unsigned char *pOurLogName,
  2445. /* [out][in] */ unsigned char *pRemoteLogName,
  2446. /* [out] */ DWORD *pdwProtocol);
  2447. void __RPC_STUB IDtcLuRecoveryInitiatedByDtcTransWork_GetOurXln_Stub(
  2448. IRpcStubBuffer *This,
  2449. IRpcChannelBuffer *_pRpcChannelBuffer,
  2450. PRPC_MESSAGE _pRpcMessage,
  2451. DWORD *_pdwStubPhase);
  2452. HRESULT STDMETHODCALLTYPE IDtcLuRecoveryInitiatedByDtcTransWork_HandleConfirmationFromOurXln_Proxy(
  2453. IDtcLuRecoveryInitiatedByDtcTransWork * This,
  2454. /* [in] */ DTCLUXLNCONFIRMATION Confirmation);
  2455. void __RPC_STUB IDtcLuRecoveryInitiatedByDtcTransWork_HandleConfirmationFromOurXln_Stub(
  2456. IRpcStubBuffer *This,
  2457. IRpcChannelBuffer *_pRpcChannelBuffer,
  2458. PRPC_MESSAGE _pRpcMessage,
  2459. DWORD *_pdwStubPhase);
  2460. HRESULT STDMETHODCALLTYPE IDtcLuRecoveryInitiatedByDtcTransWork_HandleTheirXlnResponse_Proxy(
  2461. IDtcLuRecoveryInitiatedByDtcTransWork * This,
  2462. /* [in] */ DTCLUXLN Xln,
  2463. /* [in] */ unsigned char *pRemoteLogName,
  2464. /* [in] */ DWORD cbRemoteLogName,
  2465. /* [in] */ DWORD dwProtocol,
  2466. /* [out] */ DTCLUXLNCONFIRMATION *pConfirmation);
  2467. void __RPC_STUB IDtcLuRecoveryInitiatedByDtcTransWork_HandleTheirXlnResponse_Stub(
  2468. IRpcStubBuffer *This,
  2469. IRpcChannelBuffer *_pRpcChannelBuffer,
  2470. PRPC_MESSAGE _pRpcMessage,
  2471. DWORD *_pdwStubPhase);
  2472. HRESULT STDMETHODCALLTYPE IDtcLuRecoveryInitiatedByDtcTransWork_HandleErrorFromOurXln_Proxy(
  2473. IDtcLuRecoveryInitiatedByDtcTransWork * This,
  2474. /* [in] */ DTCLUXLNERROR Error);
  2475. void __RPC_STUB IDtcLuRecoveryInitiatedByDtcTransWork_HandleErrorFromOurXln_Stub(
  2476. IRpcStubBuffer *This,
  2477. IRpcChannelBuffer *_pRpcChannelBuffer,
  2478. PRPC_MESSAGE _pRpcMessage,
  2479. DWORD *_pdwStubPhase);
  2480. HRESULT STDMETHODCALLTYPE IDtcLuRecoveryInitiatedByDtcTransWork_CheckForCompareStates_Proxy(
  2481. IDtcLuRecoveryInitiatedByDtcTransWork * This,
  2482. /* [out] */ BOOL *fCompareStates);
  2483. void __RPC_STUB IDtcLuRecoveryInitiatedByDtcTransWork_CheckForCompareStates_Stub(
  2484. IRpcStubBuffer *This,
  2485. IRpcChannelBuffer *_pRpcChannelBuffer,
  2486. PRPC_MESSAGE _pRpcMessage,
  2487. DWORD *_pdwStubPhase);
  2488. HRESULT STDMETHODCALLTYPE IDtcLuRecoveryInitiatedByDtcTransWork_GetOurTransIdSize_Proxy(
  2489. IDtcLuRecoveryInitiatedByDtcTransWork * This,
  2490. /* [out][in] */ DWORD *pcbOurTransId);
  2491. void __RPC_STUB IDtcLuRecoveryInitiatedByDtcTransWork_GetOurTransIdSize_Stub(
  2492. IRpcStubBuffer *This,
  2493. IRpcChannelBuffer *_pRpcChannelBuffer,
  2494. PRPC_MESSAGE _pRpcMessage,
  2495. DWORD *_pdwStubPhase);
  2496. HRESULT STDMETHODCALLTYPE IDtcLuRecoveryInitiatedByDtcTransWork_GetOurCompareStates_Proxy(
  2497. IDtcLuRecoveryInitiatedByDtcTransWork * This,
  2498. /* [out][in] */ unsigned char *pOurTransId,
  2499. /* [out] */ DTCLUCOMPARESTATE *pCompareState);
  2500. void __RPC_STUB IDtcLuRecoveryInitiatedByDtcTransWork_GetOurCompareStates_Stub(
  2501. IRpcStubBuffer *This,
  2502. IRpcChannelBuffer *_pRpcChannelBuffer,
  2503. PRPC_MESSAGE _pRpcMessage,
  2504. DWORD *_pdwStubPhase);
  2505. HRESULT STDMETHODCALLTYPE IDtcLuRecoveryInitiatedByDtcTransWork_HandleTheirCompareStatesResponse_Proxy(
  2506. IDtcLuRecoveryInitiatedByDtcTransWork * This,
  2507. /* [in] */ DTCLUCOMPARESTATE CompareState,
  2508. /* [out] */ DTCLUCOMPARESTATESCONFIRMATION *pConfirmation);
  2509. void __RPC_STUB IDtcLuRecoveryInitiatedByDtcTransWork_HandleTheirCompareStatesResponse_Stub(
  2510. IRpcStubBuffer *This,
  2511. IRpcChannelBuffer *_pRpcChannelBuffer,
  2512. PRPC_MESSAGE _pRpcMessage,
  2513. DWORD *_pdwStubPhase);
  2514. HRESULT STDMETHODCALLTYPE IDtcLuRecoveryInitiatedByDtcTransWork_HandleErrorFromOurCompareStates_Proxy(
  2515. IDtcLuRecoveryInitiatedByDtcTransWork * This,
  2516. /* [in] */ DTCLUCOMPARESTATESERROR Error);
  2517. void __RPC_STUB IDtcLuRecoveryInitiatedByDtcTransWork_HandleErrorFromOurCompareStates_Stub(
  2518. IRpcStubBuffer *This,
  2519. IRpcChannelBuffer *_pRpcChannelBuffer,
  2520. PRPC_MESSAGE _pRpcMessage,
  2521. DWORD *_pdwStubPhase);
  2522. HRESULT STDMETHODCALLTYPE IDtcLuRecoveryInitiatedByDtcTransWork_ConversationLost_Proxy(
  2523. IDtcLuRecoveryInitiatedByDtcTransWork * This);
  2524. void __RPC_STUB IDtcLuRecoveryInitiatedByDtcTransWork_ConversationLost_Stub(
  2525. IRpcStubBuffer *This,
  2526. IRpcChannelBuffer *_pRpcChannelBuffer,
  2527. PRPC_MESSAGE _pRpcMessage,
  2528. DWORD *_pdwStubPhase);
  2529. HRESULT STDMETHODCALLTYPE IDtcLuRecoveryInitiatedByDtcTransWork_GetRecoverySeqNum_Proxy(
  2530. IDtcLuRecoveryInitiatedByDtcTransWork * This,
  2531. /* [out] */ LONG *plRecoverySeqNum);
  2532. void __RPC_STUB IDtcLuRecoveryInitiatedByDtcTransWork_GetRecoverySeqNum_Stub(
  2533. IRpcStubBuffer *This,
  2534. IRpcChannelBuffer *_pRpcChannelBuffer,
  2535. PRPC_MESSAGE _pRpcMessage,
  2536. DWORD *_pdwStubPhase);
  2537. HRESULT STDMETHODCALLTYPE IDtcLuRecoveryInitiatedByDtcTransWork_ObsoleteRecoverySeqNum_Proxy(
  2538. IDtcLuRecoveryInitiatedByDtcTransWork * This,
  2539. /* [in] */ LONG lNewRecoverySeqNum);
  2540. void __RPC_STUB IDtcLuRecoveryInitiatedByDtcTransWork_ObsoleteRecoverySeqNum_Stub(
  2541. IRpcStubBuffer *This,
  2542. IRpcChannelBuffer *_pRpcChannelBuffer,
  2543. PRPC_MESSAGE _pRpcMessage,
  2544. DWORD *_pdwStubPhase);
  2545. #endif /* __IDtcLuRecoveryInitiatedByDtcTransWork_INTERFACE_DEFINED__ */
  2546. #ifndef __IDtcLuRecoveryInitiatedByDtcStatusWork_INTERFACE_DEFINED__
  2547. #define __IDtcLuRecoveryInitiatedByDtcStatusWork_INTERFACE_DEFINED__
  2548. /* interface IDtcLuRecoveryInitiatedByDtcStatusWork */
  2549. /* [uuid][unique][object] */
  2550. EXTERN_C const IID IID_IDtcLuRecoveryInitiatedByDtcStatusWork;
  2551. #if defined(__cplusplus) && !defined(CINTERFACE)
  2552. MIDL_INTERFACE("4131E766-1AEA-11d0-944B-00A0C905416E")
  2553. IDtcLuRecoveryInitiatedByDtcStatusWork : public IUnknown
  2554. {
  2555. public:
  2556. virtual HRESULT STDMETHODCALLTYPE HandleCheckLuStatus(
  2557. /* [in] */ LONG lRecoverySeqNum) = 0;
  2558. };
  2559. #else /* C style interface */
  2560. typedef struct IDtcLuRecoveryInitiatedByDtcStatusWorkVtbl
  2561. {
  2562. BEGIN_INTERFACE
  2563. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  2564. IDtcLuRecoveryInitiatedByDtcStatusWork * This,
  2565. /* [in] */ REFIID riid,
  2566. /* [iid_is][out] */ void **ppvObject);
  2567. ULONG ( STDMETHODCALLTYPE *AddRef )(
  2568. IDtcLuRecoveryInitiatedByDtcStatusWork * This);
  2569. ULONG ( STDMETHODCALLTYPE *Release )(
  2570. IDtcLuRecoveryInitiatedByDtcStatusWork * This);
  2571. HRESULT ( STDMETHODCALLTYPE *HandleCheckLuStatus )(
  2572. IDtcLuRecoveryInitiatedByDtcStatusWork * This,
  2573. /* [in] */ LONG lRecoverySeqNum);
  2574. END_INTERFACE
  2575. } IDtcLuRecoveryInitiatedByDtcStatusWorkVtbl;
  2576. interface IDtcLuRecoveryInitiatedByDtcStatusWork
  2577. {
  2578. CONST_VTBL struct IDtcLuRecoveryInitiatedByDtcStatusWorkVtbl *lpVtbl;
  2579. };
  2580. #ifdef COBJMACROS
  2581. #define IDtcLuRecoveryInitiatedByDtcStatusWork_QueryInterface(This,riid,ppvObject) \
  2582. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  2583. #define IDtcLuRecoveryInitiatedByDtcStatusWork_AddRef(This) \
  2584. (This)->lpVtbl -> AddRef(This)
  2585. #define IDtcLuRecoveryInitiatedByDtcStatusWork_Release(This) \
  2586. (This)->lpVtbl -> Release(This)
  2587. #define IDtcLuRecoveryInitiatedByDtcStatusWork_HandleCheckLuStatus(This,lRecoverySeqNum) \
  2588. (This)->lpVtbl -> HandleCheckLuStatus(This,lRecoverySeqNum)
  2589. #endif /* COBJMACROS */
  2590. #endif /* C style interface */
  2591. HRESULT STDMETHODCALLTYPE IDtcLuRecoveryInitiatedByDtcStatusWork_HandleCheckLuStatus_Proxy(
  2592. IDtcLuRecoveryInitiatedByDtcStatusWork * This,
  2593. /* [in] */ LONG lRecoverySeqNum);
  2594. void __RPC_STUB IDtcLuRecoveryInitiatedByDtcStatusWork_HandleCheckLuStatus_Stub(
  2595. IRpcStubBuffer *This,
  2596. IRpcChannelBuffer *_pRpcChannelBuffer,
  2597. PRPC_MESSAGE _pRpcMessage,
  2598. DWORD *_pdwStubPhase);
  2599. #endif /* __IDtcLuRecoveryInitiatedByDtcStatusWork_INTERFACE_DEFINED__ */
  2600. #ifndef __IDtcLuRecoveryInitiatedByDtc_INTERFACE_DEFINED__
  2601. #define __IDtcLuRecoveryInitiatedByDtc_INTERFACE_DEFINED__
  2602. /* interface IDtcLuRecoveryInitiatedByDtc */
  2603. /* [local][uuid][unique][object] */
  2604. EXTERN_C const IID IID_IDtcLuRecoveryInitiatedByDtc;
  2605. #if defined(__cplusplus) && !defined(CINTERFACE)
  2606. MIDL_INTERFACE("4131E764-1AEA-11d0-944B-00A0C905416E")
  2607. IDtcLuRecoveryInitiatedByDtc : public IUnknown
  2608. {
  2609. public:
  2610. virtual HRESULT STDMETHODCALLTYPE GetWork(
  2611. /* [out][in] */ DTCINITIATEDRECOVERYWORK *pWork,
  2612. /* [out][in] */ void **ppv) = 0;
  2613. };
  2614. #else /* C style interface */
  2615. typedef struct IDtcLuRecoveryInitiatedByDtcVtbl
  2616. {
  2617. BEGIN_INTERFACE
  2618. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  2619. IDtcLuRecoveryInitiatedByDtc * This,
  2620. /* [in] */ REFIID riid,
  2621. /* [iid_is][out] */ void **ppvObject);
  2622. ULONG ( STDMETHODCALLTYPE *AddRef )(
  2623. IDtcLuRecoveryInitiatedByDtc * This);
  2624. ULONG ( STDMETHODCALLTYPE *Release )(
  2625. IDtcLuRecoveryInitiatedByDtc * This);
  2626. HRESULT ( STDMETHODCALLTYPE *GetWork )(
  2627. IDtcLuRecoveryInitiatedByDtc * This,
  2628. /* [out][in] */ DTCINITIATEDRECOVERYWORK *pWork,
  2629. /* [out][in] */ void **ppv);
  2630. END_INTERFACE
  2631. } IDtcLuRecoveryInitiatedByDtcVtbl;
  2632. interface IDtcLuRecoveryInitiatedByDtc
  2633. {
  2634. CONST_VTBL struct IDtcLuRecoveryInitiatedByDtcVtbl *lpVtbl;
  2635. };
  2636. #ifdef COBJMACROS
  2637. #define IDtcLuRecoveryInitiatedByDtc_QueryInterface(This,riid,ppvObject) \
  2638. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  2639. #define IDtcLuRecoveryInitiatedByDtc_AddRef(This) \
  2640. (This)->lpVtbl -> AddRef(This)
  2641. #define IDtcLuRecoveryInitiatedByDtc_Release(This) \
  2642. (This)->lpVtbl -> Release(This)
  2643. #define IDtcLuRecoveryInitiatedByDtc_GetWork(This,pWork,ppv) \
  2644. (This)->lpVtbl -> GetWork(This,pWork,ppv)
  2645. #endif /* COBJMACROS */
  2646. #endif /* C style interface */
  2647. HRESULT STDMETHODCALLTYPE IDtcLuRecoveryInitiatedByDtc_GetWork_Proxy(
  2648. IDtcLuRecoveryInitiatedByDtc * This,
  2649. /* [out][in] */ DTCINITIATEDRECOVERYWORK *pWork,
  2650. /* [out][in] */ void **ppv);
  2651. void __RPC_STUB IDtcLuRecoveryInitiatedByDtc_GetWork_Stub(
  2652. IRpcStubBuffer *This,
  2653. IRpcChannelBuffer *_pRpcChannelBuffer,
  2654. PRPC_MESSAGE _pRpcMessage,
  2655. DWORD *_pdwStubPhase);
  2656. #endif /* __IDtcLuRecoveryInitiatedByDtc_INTERFACE_DEFINED__ */
  2657. #ifndef __IDtcLuRecoveryInitiatedByLuWork_INTERFACE_DEFINED__
  2658. #define __IDtcLuRecoveryInitiatedByLuWork_INTERFACE_DEFINED__
  2659. /* interface IDtcLuRecoveryInitiatedByLuWork */
  2660. /* [local][uuid][unique][object] */
  2661. EXTERN_C const IID IID_IDtcLuRecoveryInitiatedByLuWork;
  2662. #if defined(__cplusplus) && !defined(CINTERFACE)
  2663. MIDL_INTERFACE("AC2B8AD1-D6F0-11d0-B386-00A0C9083365")
  2664. IDtcLuRecoveryInitiatedByLuWork : public IUnknown
  2665. {
  2666. public:
  2667. virtual HRESULT STDMETHODCALLTYPE HandleTheirXln(
  2668. /* [in] */ LONG lRecoverySeqNum,
  2669. /* [in] */ DTCLUXLN Xln,
  2670. /* [in] */ unsigned char *pRemoteLogName,
  2671. /* [in] */ DWORD cbRemoteLogName,
  2672. /* [in] */ unsigned char *pOurLogName,
  2673. /* [in] */ DWORD cbOurLogName,
  2674. /* [in] */ DWORD dwProtocol,
  2675. /* [out] */ DTCLUXLNRESPONSE *pResponse) = 0;
  2676. virtual HRESULT STDMETHODCALLTYPE GetOurLogNameSize(
  2677. /* [out][in] */ DWORD *pcbOurLogName) = 0;
  2678. virtual HRESULT STDMETHODCALLTYPE GetOurXln(
  2679. /* [out] */ DTCLUXLN *pXln,
  2680. /* [out][in] */ unsigned char *pOurLogName,
  2681. /* [out] */ DWORD *pdwProtocol) = 0;
  2682. virtual HRESULT STDMETHODCALLTYPE HandleConfirmationOfOurXln(
  2683. /* [in] */ DTCLUXLNCONFIRMATION Confirmation) = 0;
  2684. virtual HRESULT STDMETHODCALLTYPE HandleTheirCompareStates(
  2685. /* [out][in] */ unsigned char *pRemoteTransId,
  2686. /* [in] */ DWORD cbRemoteTransId,
  2687. /* [in] */ DTCLUCOMPARESTATE CompareState,
  2688. /* [out] */ DTCLUCOMPARESTATESRESPONSE *pResponse,
  2689. /* [out] */ DTCLUCOMPARESTATE *pCompareState) = 0;
  2690. virtual HRESULT STDMETHODCALLTYPE HandleConfirmationOfOurCompareStates(
  2691. /* [in] */ DTCLUCOMPARESTATESCONFIRMATION Confirmation) = 0;
  2692. virtual HRESULT STDMETHODCALLTYPE HandleErrorFromOurCompareStates(
  2693. /* [in] */ DTCLUCOMPARESTATESERROR Error) = 0;
  2694. virtual HRESULT STDMETHODCALLTYPE ConversationLost( void) = 0;
  2695. };
  2696. #else /* C style interface */
  2697. typedef struct IDtcLuRecoveryInitiatedByLuWorkVtbl
  2698. {
  2699. BEGIN_INTERFACE
  2700. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  2701. IDtcLuRecoveryInitiatedByLuWork * This,
  2702. /* [in] */ REFIID riid,
  2703. /* [iid_is][out] */ void **ppvObject);
  2704. ULONG ( STDMETHODCALLTYPE *AddRef )(
  2705. IDtcLuRecoveryInitiatedByLuWork * This);
  2706. ULONG ( STDMETHODCALLTYPE *Release )(
  2707. IDtcLuRecoveryInitiatedByLuWork * This);
  2708. HRESULT ( STDMETHODCALLTYPE *HandleTheirXln )(
  2709. IDtcLuRecoveryInitiatedByLuWork * This,
  2710. /* [in] */ LONG lRecoverySeqNum,
  2711. /* [in] */ DTCLUXLN Xln,
  2712. /* [in] */ unsigned char *pRemoteLogName,
  2713. /* [in] */ DWORD cbRemoteLogName,
  2714. /* [in] */ unsigned char *pOurLogName,
  2715. /* [in] */ DWORD cbOurLogName,
  2716. /* [in] */ DWORD dwProtocol,
  2717. /* [out] */ DTCLUXLNRESPONSE *pResponse);
  2718. HRESULT ( STDMETHODCALLTYPE *GetOurLogNameSize )(
  2719. IDtcLuRecoveryInitiatedByLuWork * This,
  2720. /* [out][in] */ DWORD *pcbOurLogName);
  2721. HRESULT ( STDMETHODCALLTYPE *GetOurXln )(
  2722. IDtcLuRecoveryInitiatedByLuWork * This,
  2723. /* [out] */ DTCLUXLN *pXln,
  2724. /* [out][in] */ unsigned char *pOurLogName,
  2725. /* [out] */ DWORD *pdwProtocol);
  2726. HRESULT ( STDMETHODCALLTYPE *HandleConfirmationOfOurXln )(
  2727. IDtcLuRecoveryInitiatedByLuWork * This,
  2728. /* [in] */ DTCLUXLNCONFIRMATION Confirmation);
  2729. HRESULT ( STDMETHODCALLTYPE *HandleTheirCompareStates )(
  2730. IDtcLuRecoveryInitiatedByLuWork * This,
  2731. /* [out][in] */ unsigned char *pRemoteTransId,
  2732. /* [in] */ DWORD cbRemoteTransId,
  2733. /* [in] */ DTCLUCOMPARESTATE CompareState,
  2734. /* [out] */ DTCLUCOMPARESTATESRESPONSE *pResponse,
  2735. /* [out] */ DTCLUCOMPARESTATE *pCompareState);
  2736. HRESULT ( STDMETHODCALLTYPE *HandleConfirmationOfOurCompareStates )(
  2737. IDtcLuRecoveryInitiatedByLuWork * This,
  2738. /* [in] */ DTCLUCOMPARESTATESCONFIRMATION Confirmation);
  2739. HRESULT ( STDMETHODCALLTYPE *HandleErrorFromOurCompareStates )(
  2740. IDtcLuRecoveryInitiatedByLuWork * This,
  2741. /* [in] */ DTCLUCOMPARESTATESERROR Error);
  2742. HRESULT ( STDMETHODCALLTYPE *ConversationLost )(
  2743. IDtcLuRecoveryInitiatedByLuWork * This);
  2744. END_INTERFACE
  2745. } IDtcLuRecoveryInitiatedByLuWorkVtbl;
  2746. interface IDtcLuRecoveryInitiatedByLuWork
  2747. {
  2748. CONST_VTBL struct IDtcLuRecoveryInitiatedByLuWorkVtbl *lpVtbl;
  2749. };
  2750. #ifdef COBJMACROS
  2751. #define IDtcLuRecoveryInitiatedByLuWork_QueryInterface(This,riid,ppvObject) \
  2752. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  2753. #define IDtcLuRecoveryInitiatedByLuWork_AddRef(This) \
  2754. (This)->lpVtbl -> AddRef(This)
  2755. #define IDtcLuRecoveryInitiatedByLuWork_Release(This) \
  2756. (This)->lpVtbl -> Release(This)
  2757. #define IDtcLuRecoveryInitiatedByLuWork_HandleTheirXln(This,lRecoverySeqNum,Xln,pRemoteLogName,cbRemoteLogName,pOurLogName,cbOurLogName,dwProtocol,pResponse) \
  2758. (This)->lpVtbl -> HandleTheirXln(This,lRecoverySeqNum,Xln,pRemoteLogName,cbRemoteLogName,pOurLogName,cbOurLogName,dwProtocol,pResponse)
  2759. #define IDtcLuRecoveryInitiatedByLuWork_GetOurLogNameSize(This,pcbOurLogName) \
  2760. (This)->lpVtbl -> GetOurLogNameSize(This,pcbOurLogName)
  2761. #define IDtcLuRecoveryInitiatedByLuWork_GetOurXln(This,pXln,pOurLogName,pdwProtocol) \
  2762. (This)->lpVtbl -> GetOurXln(This,pXln,pOurLogName,pdwProtocol)
  2763. #define IDtcLuRecoveryInitiatedByLuWork_HandleConfirmationOfOurXln(This,Confirmation) \
  2764. (This)->lpVtbl -> HandleConfirmationOfOurXln(This,Confirmation)
  2765. #define IDtcLuRecoveryInitiatedByLuWork_HandleTheirCompareStates(This,pRemoteTransId,cbRemoteTransId,CompareState,pResponse,pCompareState) \
  2766. (This)->lpVtbl -> HandleTheirCompareStates(This,pRemoteTransId,cbRemoteTransId,CompareState,pResponse,pCompareState)
  2767. #define IDtcLuRecoveryInitiatedByLuWork_HandleConfirmationOfOurCompareStates(This,Confirmation) \
  2768. (This)->lpVtbl -> HandleConfirmationOfOurCompareStates(This,Confirmation)
  2769. #define IDtcLuRecoveryInitiatedByLuWork_HandleErrorFromOurCompareStates(This,Error) \
  2770. (This)->lpVtbl -> HandleErrorFromOurCompareStates(This,Error)
  2771. #define IDtcLuRecoveryInitiatedByLuWork_ConversationLost(This) \
  2772. (This)->lpVtbl -> ConversationLost(This)
  2773. #endif /* COBJMACROS */
  2774. #endif /* C style interface */
  2775. HRESULT STDMETHODCALLTYPE IDtcLuRecoveryInitiatedByLuWork_HandleTheirXln_Proxy(
  2776. IDtcLuRecoveryInitiatedByLuWork * This,
  2777. /* [in] */ LONG lRecoverySeqNum,
  2778. /* [in] */ DTCLUXLN Xln,
  2779. /* [in] */ unsigned char *pRemoteLogName,
  2780. /* [in] */ DWORD cbRemoteLogName,
  2781. /* [in] */ unsigned char *pOurLogName,
  2782. /* [in] */ DWORD cbOurLogName,
  2783. /* [in] */ DWORD dwProtocol,
  2784. /* [out] */ DTCLUXLNRESPONSE *pResponse);
  2785. void __RPC_STUB IDtcLuRecoveryInitiatedByLuWork_HandleTheirXln_Stub(
  2786. IRpcStubBuffer *This,
  2787. IRpcChannelBuffer *_pRpcChannelBuffer,
  2788. PRPC_MESSAGE _pRpcMessage,
  2789. DWORD *_pdwStubPhase);
  2790. HRESULT STDMETHODCALLTYPE IDtcLuRecoveryInitiatedByLuWork_GetOurLogNameSize_Proxy(
  2791. IDtcLuRecoveryInitiatedByLuWork * This,
  2792. /* [out][in] */ DWORD *pcbOurLogName);
  2793. void __RPC_STUB IDtcLuRecoveryInitiatedByLuWork_GetOurLogNameSize_Stub(
  2794. IRpcStubBuffer *This,
  2795. IRpcChannelBuffer *_pRpcChannelBuffer,
  2796. PRPC_MESSAGE _pRpcMessage,
  2797. DWORD *_pdwStubPhase);
  2798. HRESULT STDMETHODCALLTYPE IDtcLuRecoveryInitiatedByLuWork_GetOurXln_Proxy(
  2799. IDtcLuRecoveryInitiatedByLuWork * This,
  2800. /* [out] */ DTCLUXLN *pXln,
  2801. /* [out][in] */ unsigned char *pOurLogName,
  2802. /* [out] */ DWORD *pdwProtocol);
  2803. void __RPC_STUB IDtcLuRecoveryInitiatedByLuWork_GetOurXln_Stub(
  2804. IRpcStubBuffer *This,
  2805. IRpcChannelBuffer *_pRpcChannelBuffer,
  2806. PRPC_MESSAGE _pRpcMessage,
  2807. DWORD *_pdwStubPhase);
  2808. HRESULT STDMETHODCALLTYPE IDtcLuRecoveryInitiatedByLuWork_HandleConfirmationOfOurXln_Proxy(
  2809. IDtcLuRecoveryInitiatedByLuWork * This,
  2810. /* [in] */ DTCLUXLNCONFIRMATION Confirmation);
  2811. void __RPC_STUB IDtcLuRecoveryInitiatedByLuWork_HandleConfirmationOfOurXln_Stub(
  2812. IRpcStubBuffer *This,
  2813. IRpcChannelBuffer *_pRpcChannelBuffer,
  2814. PRPC_MESSAGE _pRpcMessage,
  2815. DWORD *_pdwStubPhase);
  2816. HRESULT STDMETHODCALLTYPE IDtcLuRecoveryInitiatedByLuWork_HandleTheirCompareStates_Proxy(
  2817. IDtcLuRecoveryInitiatedByLuWork * This,
  2818. /* [out][in] */ unsigned char *pRemoteTransId,
  2819. /* [in] */ DWORD cbRemoteTransId,
  2820. /* [in] */ DTCLUCOMPARESTATE CompareState,
  2821. /* [out] */ DTCLUCOMPARESTATESRESPONSE *pResponse,
  2822. /* [out] */ DTCLUCOMPARESTATE *pCompareState);
  2823. void __RPC_STUB IDtcLuRecoveryInitiatedByLuWork_HandleTheirCompareStates_Stub(
  2824. IRpcStubBuffer *This,
  2825. IRpcChannelBuffer *_pRpcChannelBuffer,
  2826. PRPC_MESSAGE _pRpcMessage,
  2827. DWORD *_pdwStubPhase);
  2828. HRESULT STDMETHODCALLTYPE IDtcLuRecoveryInitiatedByLuWork_HandleConfirmationOfOurCompareStates_Proxy(
  2829. IDtcLuRecoveryInitiatedByLuWork * This,
  2830. /* [in] */ DTCLUCOMPARESTATESCONFIRMATION Confirmation);
  2831. void __RPC_STUB IDtcLuRecoveryInitiatedByLuWork_HandleConfirmationOfOurCompareStates_Stub(
  2832. IRpcStubBuffer *This,
  2833. IRpcChannelBuffer *_pRpcChannelBuffer,
  2834. PRPC_MESSAGE _pRpcMessage,
  2835. DWORD *_pdwStubPhase);
  2836. HRESULT STDMETHODCALLTYPE IDtcLuRecoveryInitiatedByLuWork_HandleErrorFromOurCompareStates_Proxy(
  2837. IDtcLuRecoveryInitiatedByLuWork * This,
  2838. /* [in] */ DTCLUCOMPARESTATESERROR Error);
  2839. void __RPC_STUB IDtcLuRecoveryInitiatedByLuWork_HandleErrorFromOurCompareStates_Stub(
  2840. IRpcStubBuffer *This,
  2841. IRpcChannelBuffer *_pRpcChannelBuffer,
  2842. PRPC_MESSAGE _pRpcMessage,
  2843. DWORD *_pdwStubPhase);
  2844. HRESULT STDMETHODCALLTYPE IDtcLuRecoveryInitiatedByLuWork_ConversationLost_Proxy(
  2845. IDtcLuRecoveryInitiatedByLuWork * This);
  2846. void __RPC_STUB IDtcLuRecoveryInitiatedByLuWork_ConversationLost_Stub(
  2847. IRpcStubBuffer *This,
  2848. IRpcChannelBuffer *_pRpcChannelBuffer,
  2849. PRPC_MESSAGE _pRpcMessage,
  2850. DWORD *_pdwStubPhase);
  2851. #endif /* __IDtcLuRecoveryInitiatedByLuWork_INTERFACE_DEFINED__ */
  2852. #ifndef __IDtcLuRecoveryInitiatedByLu_INTERFACE_DEFINED__
  2853. #define __IDtcLuRecoveryInitiatedByLu_INTERFACE_DEFINED__
  2854. /* interface IDtcLuRecoveryInitiatedByLu */
  2855. /* [uuid][unique][object] */
  2856. EXTERN_C const IID IID_IDtcLuRecoveryInitiatedByLu;
  2857. #if defined(__cplusplus) && !defined(CINTERFACE)
  2858. MIDL_INTERFACE("4131E768-1AEA-11d0-944B-00A0C905416E")
  2859. IDtcLuRecoveryInitiatedByLu : public IUnknown
  2860. {
  2861. public:
  2862. virtual HRESULT STDMETHODCALLTYPE GetObjectToHandleWorkFromLu(
  2863. /* [out] */ IDtcLuRecoveryInitiatedByLuWork **ppWork) = 0;
  2864. };
  2865. #else /* C style interface */
  2866. typedef struct IDtcLuRecoveryInitiatedByLuVtbl
  2867. {
  2868. BEGIN_INTERFACE
  2869. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  2870. IDtcLuRecoveryInitiatedByLu * This,
  2871. /* [in] */ REFIID riid,
  2872. /* [iid_is][out] */ void **ppvObject);
  2873. ULONG ( STDMETHODCALLTYPE *AddRef )(
  2874. IDtcLuRecoveryInitiatedByLu * This);
  2875. ULONG ( STDMETHODCALLTYPE *Release )(
  2876. IDtcLuRecoveryInitiatedByLu * This);
  2877. HRESULT ( STDMETHODCALLTYPE *GetObjectToHandleWorkFromLu )(
  2878. IDtcLuRecoveryInitiatedByLu * This,
  2879. /* [out] */ IDtcLuRecoveryInitiatedByLuWork **ppWork);
  2880. END_INTERFACE
  2881. } IDtcLuRecoveryInitiatedByLuVtbl;
  2882. interface IDtcLuRecoveryInitiatedByLu
  2883. {
  2884. CONST_VTBL struct IDtcLuRecoveryInitiatedByLuVtbl *lpVtbl;
  2885. };
  2886. #ifdef COBJMACROS
  2887. #define IDtcLuRecoveryInitiatedByLu_QueryInterface(This,riid,ppvObject) \
  2888. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  2889. #define IDtcLuRecoveryInitiatedByLu_AddRef(This) \
  2890. (This)->lpVtbl -> AddRef(This)
  2891. #define IDtcLuRecoveryInitiatedByLu_Release(This) \
  2892. (This)->lpVtbl -> Release(This)
  2893. #define IDtcLuRecoveryInitiatedByLu_GetObjectToHandleWorkFromLu(This,ppWork) \
  2894. (This)->lpVtbl -> GetObjectToHandleWorkFromLu(This,ppWork)
  2895. #endif /* COBJMACROS */
  2896. #endif /* C style interface */
  2897. HRESULT STDMETHODCALLTYPE IDtcLuRecoveryInitiatedByLu_GetObjectToHandleWorkFromLu_Proxy(
  2898. IDtcLuRecoveryInitiatedByLu * This,
  2899. /* [out] */ IDtcLuRecoveryInitiatedByLuWork **ppWork);
  2900. void __RPC_STUB IDtcLuRecoveryInitiatedByLu_GetObjectToHandleWorkFromLu_Stub(
  2901. IRpcStubBuffer *This,
  2902. IRpcChannelBuffer *_pRpcChannelBuffer,
  2903. PRPC_MESSAGE _pRpcMessage,
  2904. DWORD *_pdwStubPhase);
  2905. #endif /* __IDtcLuRecoveryInitiatedByLu_INTERFACE_DEFINED__ */
  2906. #ifndef __IDtcLuRmEnlistment_INTERFACE_DEFINED__
  2907. #define __IDtcLuRmEnlistment_INTERFACE_DEFINED__
  2908. /* interface IDtcLuRmEnlistment */
  2909. /* [uuid][unique][object] */
  2910. EXTERN_C const IID IID_IDtcLuRmEnlistment;
  2911. #if defined(__cplusplus) && !defined(CINTERFACE)
  2912. MIDL_INTERFACE("4131E769-1AEA-11d0-944B-00A0C905416E")
  2913. IDtcLuRmEnlistment : public IUnknown
  2914. {
  2915. public:
  2916. virtual HRESULT STDMETHODCALLTYPE Unplug(
  2917. /* [in] */ BOOL fConversationLost) = 0;
  2918. virtual HRESULT STDMETHODCALLTYPE BackedOut( void) = 0;
  2919. virtual HRESULT STDMETHODCALLTYPE BackOut( void) = 0;
  2920. virtual HRESULT STDMETHODCALLTYPE Committed( void) = 0;
  2921. virtual HRESULT STDMETHODCALLTYPE Forget( void) = 0;
  2922. virtual HRESULT STDMETHODCALLTYPE RequestCommit( void) = 0;
  2923. };
  2924. #else /* C style interface */
  2925. typedef struct IDtcLuRmEnlistmentVtbl
  2926. {
  2927. BEGIN_INTERFACE
  2928. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  2929. IDtcLuRmEnlistment * This,
  2930. /* [in] */ REFIID riid,
  2931. /* [iid_is][out] */ void **ppvObject);
  2932. ULONG ( STDMETHODCALLTYPE *AddRef )(
  2933. IDtcLuRmEnlistment * This);
  2934. ULONG ( STDMETHODCALLTYPE *Release )(
  2935. IDtcLuRmEnlistment * This);
  2936. HRESULT ( STDMETHODCALLTYPE *Unplug )(
  2937. IDtcLuRmEnlistment * This,
  2938. /* [in] */ BOOL fConversationLost);
  2939. HRESULT ( STDMETHODCALLTYPE *BackedOut )(
  2940. IDtcLuRmEnlistment * This);
  2941. HRESULT ( STDMETHODCALLTYPE *BackOut )(
  2942. IDtcLuRmEnlistment * This);
  2943. HRESULT ( STDMETHODCALLTYPE *Committed )(
  2944. IDtcLuRmEnlistment * This);
  2945. HRESULT ( STDMETHODCALLTYPE *Forget )(
  2946. IDtcLuRmEnlistment * This);
  2947. HRESULT ( STDMETHODCALLTYPE *RequestCommit )(
  2948. IDtcLuRmEnlistment * This);
  2949. END_INTERFACE
  2950. } IDtcLuRmEnlistmentVtbl;
  2951. interface IDtcLuRmEnlistment
  2952. {
  2953. CONST_VTBL struct IDtcLuRmEnlistmentVtbl *lpVtbl;
  2954. };
  2955. #ifdef COBJMACROS
  2956. #define IDtcLuRmEnlistment_QueryInterface(This,riid,ppvObject) \
  2957. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  2958. #define IDtcLuRmEnlistment_AddRef(This) \
  2959. (This)->lpVtbl -> AddRef(This)
  2960. #define IDtcLuRmEnlistment_Release(This) \
  2961. (This)->lpVtbl -> Release(This)
  2962. #define IDtcLuRmEnlistment_Unplug(This,fConversationLost) \
  2963. (This)->lpVtbl -> Unplug(This,fConversationLost)
  2964. #define IDtcLuRmEnlistment_BackedOut(This) \
  2965. (This)->lpVtbl -> BackedOut(This)
  2966. #define IDtcLuRmEnlistment_BackOut(This) \
  2967. (This)->lpVtbl -> BackOut(This)
  2968. #define IDtcLuRmEnlistment_Committed(This) \
  2969. (This)->lpVtbl -> Committed(This)
  2970. #define IDtcLuRmEnlistment_Forget(This) \
  2971. (This)->lpVtbl -> Forget(This)
  2972. #define IDtcLuRmEnlistment_RequestCommit(This) \
  2973. (This)->lpVtbl -> RequestCommit(This)
  2974. #endif /* COBJMACROS */
  2975. #endif /* C style interface */
  2976. HRESULT STDMETHODCALLTYPE IDtcLuRmEnlistment_Unplug_Proxy(
  2977. IDtcLuRmEnlistment * This,
  2978. /* [in] */ BOOL fConversationLost);
  2979. void __RPC_STUB IDtcLuRmEnlistment_Unplug_Stub(
  2980. IRpcStubBuffer *This,
  2981. IRpcChannelBuffer *_pRpcChannelBuffer,
  2982. PRPC_MESSAGE _pRpcMessage,
  2983. DWORD *_pdwStubPhase);
  2984. HRESULT STDMETHODCALLTYPE IDtcLuRmEnlistment_BackedOut_Proxy(
  2985. IDtcLuRmEnlistment * This);
  2986. void __RPC_STUB IDtcLuRmEnlistment_BackedOut_Stub(
  2987. IRpcStubBuffer *This,
  2988. IRpcChannelBuffer *_pRpcChannelBuffer,
  2989. PRPC_MESSAGE _pRpcMessage,
  2990. DWORD *_pdwStubPhase);
  2991. HRESULT STDMETHODCALLTYPE IDtcLuRmEnlistment_BackOut_Proxy(
  2992. IDtcLuRmEnlistment * This);
  2993. void __RPC_STUB IDtcLuRmEnlistment_BackOut_Stub(
  2994. IRpcStubBuffer *This,
  2995. IRpcChannelBuffer *_pRpcChannelBuffer,
  2996. PRPC_MESSAGE _pRpcMessage,
  2997. DWORD *_pdwStubPhase);
  2998. HRESULT STDMETHODCALLTYPE IDtcLuRmEnlistment_Committed_Proxy(
  2999. IDtcLuRmEnlistment * This);
  3000. void __RPC_STUB IDtcLuRmEnlistment_Committed_Stub(
  3001. IRpcStubBuffer *This,
  3002. IRpcChannelBuffer *_pRpcChannelBuffer,
  3003. PRPC_MESSAGE _pRpcMessage,
  3004. DWORD *_pdwStubPhase);
  3005. HRESULT STDMETHODCALLTYPE IDtcLuRmEnlistment_Forget_Proxy(
  3006. IDtcLuRmEnlistment * This);
  3007. void __RPC_STUB IDtcLuRmEnlistment_Forget_Stub(
  3008. IRpcStubBuffer *This,
  3009. IRpcChannelBuffer *_pRpcChannelBuffer,
  3010. PRPC_MESSAGE _pRpcMessage,
  3011. DWORD *_pdwStubPhase);
  3012. HRESULT STDMETHODCALLTYPE IDtcLuRmEnlistment_RequestCommit_Proxy(
  3013. IDtcLuRmEnlistment * This);
  3014. void __RPC_STUB IDtcLuRmEnlistment_RequestCommit_Stub(
  3015. IRpcStubBuffer *This,
  3016. IRpcChannelBuffer *_pRpcChannelBuffer,
  3017. PRPC_MESSAGE _pRpcMessage,
  3018. DWORD *_pdwStubPhase);
  3019. #endif /* __IDtcLuRmEnlistment_INTERFACE_DEFINED__ */
  3020. #ifndef __IDtcLuRmEnlistmentSink_INTERFACE_DEFINED__
  3021. #define __IDtcLuRmEnlistmentSink_INTERFACE_DEFINED__
  3022. /* interface IDtcLuRmEnlistmentSink */
  3023. /* [uuid][unique][object] */
  3024. EXTERN_C const IID IID_IDtcLuRmEnlistmentSink;
  3025. #if defined(__cplusplus) && !defined(CINTERFACE)
  3026. MIDL_INTERFACE("4131E770-1AEA-11d0-944B-00A0C905416E")
  3027. IDtcLuRmEnlistmentSink : public IUnknown
  3028. {
  3029. public:
  3030. virtual HRESULT STDMETHODCALLTYPE AckUnplug( void) = 0;
  3031. virtual HRESULT STDMETHODCALLTYPE TmDown( void) = 0;
  3032. virtual HRESULT STDMETHODCALLTYPE SessionLost( void) = 0;
  3033. virtual HRESULT STDMETHODCALLTYPE BackedOut( void) = 0;
  3034. virtual HRESULT STDMETHODCALLTYPE BackOut( void) = 0;
  3035. virtual HRESULT STDMETHODCALLTYPE Committed( void) = 0;
  3036. virtual HRESULT STDMETHODCALLTYPE Forget( void) = 0;
  3037. virtual HRESULT STDMETHODCALLTYPE Prepare( void) = 0;
  3038. virtual HRESULT STDMETHODCALLTYPE RequestCommit( void) = 0;
  3039. };
  3040. #else /* C style interface */
  3041. typedef struct IDtcLuRmEnlistmentSinkVtbl
  3042. {
  3043. BEGIN_INTERFACE
  3044. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  3045. IDtcLuRmEnlistmentSink * This,
  3046. /* [in] */ REFIID riid,
  3047. /* [iid_is][out] */ void **ppvObject);
  3048. ULONG ( STDMETHODCALLTYPE *AddRef )(
  3049. IDtcLuRmEnlistmentSink * This);
  3050. ULONG ( STDMETHODCALLTYPE *Release )(
  3051. IDtcLuRmEnlistmentSink * This);
  3052. HRESULT ( STDMETHODCALLTYPE *AckUnplug )(
  3053. IDtcLuRmEnlistmentSink * This);
  3054. HRESULT ( STDMETHODCALLTYPE *TmDown )(
  3055. IDtcLuRmEnlistmentSink * This);
  3056. HRESULT ( STDMETHODCALLTYPE *SessionLost )(
  3057. IDtcLuRmEnlistmentSink * This);
  3058. HRESULT ( STDMETHODCALLTYPE *BackedOut )(
  3059. IDtcLuRmEnlistmentSink * This);
  3060. HRESULT ( STDMETHODCALLTYPE *BackOut )(
  3061. IDtcLuRmEnlistmentSink * This);
  3062. HRESULT ( STDMETHODCALLTYPE *Committed )(
  3063. IDtcLuRmEnlistmentSink * This);
  3064. HRESULT ( STDMETHODCALLTYPE *Forget )(
  3065. IDtcLuRmEnlistmentSink * This);
  3066. HRESULT ( STDMETHODCALLTYPE *Prepare )(
  3067. IDtcLuRmEnlistmentSink * This);
  3068. HRESULT ( STDMETHODCALLTYPE *RequestCommit )(
  3069. IDtcLuRmEnlistmentSink * This);
  3070. END_INTERFACE
  3071. } IDtcLuRmEnlistmentSinkVtbl;
  3072. interface IDtcLuRmEnlistmentSink
  3073. {
  3074. CONST_VTBL struct IDtcLuRmEnlistmentSinkVtbl *lpVtbl;
  3075. };
  3076. #ifdef COBJMACROS
  3077. #define IDtcLuRmEnlistmentSink_QueryInterface(This,riid,ppvObject) \
  3078. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  3079. #define IDtcLuRmEnlistmentSink_AddRef(This) \
  3080. (This)->lpVtbl -> AddRef(This)
  3081. #define IDtcLuRmEnlistmentSink_Release(This) \
  3082. (This)->lpVtbl -> Release(This)
  3083. #define IDtcLuRmEnlistmentSink_AckUnplug(This) \
  3084. (This)->lpVtbl -> AckUnplug(This)
  3085. #define IDtcLuRmEnlistmentSink_TmDown(This) \
  3086. (This)->lpVtbl -> TmDown(This)
  3087. #define IDtcLuRmEnlistmentSink_SessionLost(This) \
  3088. (This)->lpVtbl -> SessionLost(This)
  3089. #define IDtcLuRmEnlistmentSink_BackedOut(This) \
  3090. (This)->lpVtbl -> BackedOut(This)
  3091. #define IDtcLuRmEnlistmentSink_BackOut(This) \
  3092. (This)->lpVtbl -> BackOut(This)
  3093. #define IDtcLuRmEnlistmentSink_Committed(This) \
  3094. (This)->lpVtbl -> Committed(This)
  3095. #define IDtcLuRmEnlistmentSink_Forget(This) \
  3096. (This)->lpVtbl -> Forget(This)
  3097. #define IDtcLuRmEnlistmentSink_Prepare(This) \
  3098. (This)->lpVtbl -> Prepare(This)
  3099. #define IDtcLuRmEnlistmentSink_RequestCommit(This) \
  3100. (This)->lpVtbl -> RequestCommit(This)
  3101. #endif /* COBJMACROS */
  3102. #endif /* C style interface */
  3103. HRESULT STDMETHODCALLTYPE IDtcLuRmEnlistmentSink_AckUnplug_Proxy(
  3104. IDtcLuRmEnlistmentSink * This);
  3105. void __RPC_STUB IDtcLuRmEnlistmentSink_AckUnplug_Stub(
  3106. IRpcStubBuffer *This,
  3107. IRpcChannelBuffer *_pRpcChannelBuffer,
  3108. PRPC_MESSAGE _pRpcMessage,
  3109. DWORD *_pdwStubPhase);
  3110. HRESULT STDMETHODCALLTYPE IDtcLuRmEnlistmentSink_TmDown_Proxy(
  3111. IDtcLuRmEnlistmentSink * This);
  3112. void __RPC_STUB IDtcLuRmEnlistmentSink_TmDown_Stub(
  3113. IRpcStubBuffer *This,
  3114. IRpcChannelBuffer *_pRpcChannelBuffer,
  3115. PRPC_MESSAGE _pRpcMessage,
  3116. DWORD *_pdwStubPhase);
  3117. HRESULT STDMETHODCALLTYPE IDtcLuRmEnlistmentSink_SessionLost_Proxy(
  3118. IDtcLuRmEnlistmentSink * This);
  3119. void __RPC_STUB IDtcLuRmEnlistmentSink_SessionLost_Stub(
  3120. IRpcStubBuffer *This,
  3121. IRpcChannelBuffer *_pRpcChannelBuffer,
  3122. PRPC_MESSAGE _pRpcMessage,
  3123. DWORD *_pdwStubPhase);
  3124. HRESULT STDMETHODCALLTYPE IDtcLuRmEnlistmentSink_BackedOut_Proxy(
  3125. IDtcLuRmEnlistmentSink * This);
  3126. void __RPC_STUB IDtcLuRmEnlistmentSink_BackedOut_Stub(
  3127. IRpcStubBuffer *This,
  3128. IRpcChannelBuffer *_pRpcChannelBuffer,
  3129. PRPC_MESSAGE _pRpcMessage,
  3130. DWORD *_pdwStubPhase);
  3131. HRESULT STDMETHODCALLTYPE IDtcLuRmEnlistmentSink_BackOut_Proxy(
  3132. IDtcLuRmEnlistmentSink * This);
  3133. void __RPC_STUB IDtcLuRmEnlistmentSink_BackOut_Stub(
  3134. IRpcStubBuffer *This,
  3135. IRpcChannelBuffer *_pRpcChannelBuffer,
  3136. PRPC_MESSAGE _pRpcMessage,
  3137. DWORD *_pdwStubPhase);
  3138. HRESULT STDMETHODCALLTYPE IDtcLuRmEnlistmentSink_Committed_Proxy(
  3139. IDtcLuRmEnlistmentSink * This);
  3140. void __RPC_STUB IDtcLuRmEnlistmentSink_Committed_Stub(
  3141. IRpcStubBuffer *This,
  3142. IRpcChannelBuffer *_pRpcChannelBuffer,
  3143. PRPC_MESSAGE _pRpcMessage,
  3144. DWORD *_pdwStubPhase);
  3145. HRESULT STDMETHODCALLTYPE IDtcLuRmEnlistmentSink_Forget_Proxy(
  3146. IDtcLuRmEnlistmentSink * This);
  3147. void __RPC_STUB IDtcLuRmEnlistmentSink_Forget_Stub(
  3148. IRpcStubBuffer *This,
  3149. IRpcChannelBuffer *_pRpcChannelBuffer,
  3150. PRPC_MESSAGE _pRpcMessage,
  3151. DWORD *_pdwStubPhase);
  3152. HRESULT STDMETHODCALLTYPE IDtcLuRmEnlistmentSink_Prepare_Proxy(
  3153. IDtcLuRmEnlistmentSink * This);
  3154. void __RPC_STUB IDtcLuRmEnlistmentSink_Prepare_Stub(
  3155. IRpcStubBuffer *This,
  3156. IRpcChannelBuffer *_pRpcChannelBuffer,
  3157. PRPC_MESSAGE _pRpcMessage,
  3158. DWORD *_pdwStubPhase);
  3159. HRESULT STDMETHODCALLTYPE IDtcLuRmEnlistmentSink_RequestCommit_Proxy(
  3160. IDtcLuRmEnlistmentSink * This);
  3161. void __RPC_STUB IDtcLuRmEnlistmentSink_RequestCommit_Stub(
  3162. IRpcStubBuffer *This,
  3163. IRpcChannelBuffer *_pRpcChannelBuffer,
  3164. PRPC_MESSAGE _pRpcMessage,
  3165. DWORD *_pdwStubPhase);
  3166. #endif /* __IDtcLuRmEnlistmentSink_INTERFACE_DEFINED__ */
  3167. #ifndef __IDtcLuRmEnlistmentFactory_INTERFACE_DEFINED__
  3168. #define __IDtcLuRmEnlistmentFactory_INTERFACE_DEFINED__
  3169. /* interface IDtcLuRmEnlistmentFactory */
  3170. /* [local][uuid][unique][object] */
  3171. EXTERN_C const IID IID_IDtcLuRmEnlistmentFactory;
  3172. #if defined(__cplusplus) && !defined(CINTERFACE)
  3173. MIDL_INTERFACE("4131E771-1AEA-11d0-944B-00A0C905416E")
  3174. IDtcLuRmEnlistmentFactory : public IUnknown
  3175. {
  3176. public:
  3177. virtual HRESULT STDMETHODCALLTYPE Create(
  3178. /* [in] */ unsigned char *pucLuPair,
  3179. /* [in] */ DWORD cbLuPair,
  3180. /* [in] */ ITransaction *pITransaction,
  3181. /* [in] */ unsigned char *pTransId,
  3182. /* [in] */ DWORD cbTransId,
  3183. /* [in] */ IDtcLuRmEnlistmentSink *pRmEnlistmentSink,
  3184. /* [out][in] */ IDtcLuRmEnlistment **ppRmEnlistment) = 0;
  3185. };
  3186. #else /* C style interface */
  3187. typedef struct IDtcLuRmEnlistmentFactoryVtbl
  3188. {
  3189. BEGIN_INTERFACE
  3190. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  3191. IDtcLuRmEnlistmentFactory * This,
  3192. /* [in] */ REFIID riid,
  3193. /* [iid_is][out] */ void **ppvObject);
  3194. ULONG ( STDMETHODCALLTYPE *AddRef )(
  3195. IDtcLuRmEnlistmentFactory * This);
  3196. ULONG ( STDMETHODCALLTYPE *Release )(
  3197. IDtcLuRmEnlistmentFactory * This);
  3198. HRESULT ( STDMETHODCALLTYPE *Create )(
  3199. IDtcLuRmEnlistmentFactory * This,
  3200. /* [in] */ unsigned char *pucLuPair,
  3201. /* [in] */ DWORD cbLuPair,
  3202. /* [in] */ ITransaction *pITransaction,
  3203. /* [in] */ unsigned char *pTransId,
  3204. /* [in] */ DWORD cbTransId,
  3205. /* [in] */ IDtcLuRmEnlistmentSink *pRmEnlistmentSink,
  3206. /* [out][in] */ IDtcLuRmEnlistment **ppRmEnlistment);
  3207. END_INTERFACE
  3208. } IDtcLuRmEnlistmentFactoryVtbl;
  3209. interface IDtcLuRmEnlistmentFactory
  3210. {
  3211. CONST_VTBL struct IDtcLuRmEnlistmentFactoryVtbl *lpVtbl;
  3212. };
  3213. #ifdef COBJMACROS
  3214. #define IDtcLuRmEnlistmentFactory_QueryInterface(This,riid,ppvObject) \
  3215. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  3216. #define IDtcLuRmEnlistmentFactory_AddRef(This) \
  3217. (This)->lpVtbl -> AddRef(This)
  3218. #define IDtcLuRmEnlistmentFactory_Release(This) \
  3219. (This)->lpVtbl -> Release(This)
  3220. #define IDtcLuRmEnlistmentFactory_Create(This,pucLuPair,cbLuPair,pITransaction,pTransId,cbTransId,pRmEnlistmentSink,ppRmEnlistment) \
  3221. (This)->lpVtbl -> Create(This,pucLuPair,cbLuPair,pITransaction,pTransId,cbTransId,pRmEnlistmentSink,ppRmEnlistment)
  3222. #endif /* COBJMACROS */
  3223. #endif /* C style interface */
  3224. HRESULT STDMETHODCALLTYPE IDtcLuRmEnlistmentFactory_Create_Proxy(
  3225. IDtcLuRmEnlistmentFactory * This,
  3226. /* [in] */ unsigned char *pucLuPair,
  3227. /* [in] */ DWORD cbLuPair,
  3228. /* [in] */ ITransaction *pITransaction,
  3229. /* [in] */ unsigned char *pTransId,
  3230. /* [in] */ DWORD cbTransId,
  3231. /* [in] */ IDtcLuRmEnlistmentSink *pRmEnlistmentSink,
  3232. /* [out][in] */ IDtcLuRmEnlistment **ppRmEnlistment);
  3233. void __RPC_STUB IDtcLuRmEnlistmentFactory_Create_Stub(
  3234. IRpcStubBuffer *This,
  3235. IRpcChannelBuffer *_pRpcChannelBuffer,
  3236. PRPC_MESSAGE _pRpcMessage,
  3237. DWORD *_pdwStubPhase);
  3238. #endif /* __IDtcLuRmEnlistmentFactory_INTERFACE_DEFINED__ */
  3239. #ifndef __IDtcLuSubordinateDtc_INTERFACE_DEFINED__
  3240. #define __IDtcLuSubordinateDtc_INTERFACE_DEFINED__
  3241. /* interface IDtcLuSubordinateDtc */
  3242. /* [uuid][unique][object] */
  3243. EXTERN_C const IID IID_IDtcLuSubordinateDtc;
  3244. #if defined(__cplusplus) && !defined(CINTERFACE)
  3245. MIDL_INTERFACE("4131E773-1AEA-11d0-944B-00A0C905416E")
  3246. IDtcLuSubordinateDtc : public IUnknown
  3247. {
  3248. public:
  3249. virtual HRESULT STDMETHODCALLTYPE Unplug(
  3250. /* [in] */ BOOL fConversationLost) = 0;
  3251. virtual HRESULT STDMETHODCALLTYPE BackedOut( void) = 0;
  3252. virtual HRESULT STDMETHODCALLTYPE BackOut( void) = 0;
  3253. virtual HRESULT STDMETHODCALLTYPE Committed( void) = 0;
  3254. virtual HRESULT STDMETHODCALLTYPE Forget( void) = 0;
  3255. virtual HRESULT STDMETHODCALLTYPE Prepare( void) = 0;
  3256. virtual HRESULT STDMETHODCALLTYPE RequestCommit( void) = 0;
  3257. };
  3258. #else /* C style interface */
  3259. typedef struct IDtcLuSubordinateDtcVtbl
  3260. {
  3261. BEGIN_INTERFACE
  3262. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  3263. IDtcLuSubordinateDtc * This,
  3264. /* [in] */ REFIID riid,
  3265. /* [iid_is][out] */ void **ppvObject);
  3266. ULONG ( STDMETHODCALLTYPE *AddRef )(
  3267. IDtcLuSubordinateDtc * This);
  3268. ULONG ( STDMETHODCALLTYPE *Release )(
  3269. IDtcLuSubordinateDtc * This);
  3270. HRESULT ( STDMETHODCALLTYPE *Unplug )(
  3271. IDtcLuSubordinateDtc * This,
  3272. /* [in] */ BOOL fConversationLost);
  3273. HRESULT ( STDMETHODCALLTYPE *BackedOut )(
  3274. IDtcLuSubordinateDtc * This);
  3275. HRESULT ( STDMETHODCALLTYPE *BackOut )(
  3276. IDtcLuSubordinateDtc * This);
  3277. HRESULT ( STDMETHODCALLTYPE *Committed )(
  3278. IDtcLuSubordinateDtc * This);
  3279. HRESULT ( STDMETHODCALLTYPE *Forget )(
  3280. IDtcLuSubordinateDtc * This);
  3281. HRESULT ( STDMETHODCALLTYPE *Prepare )(
  3282. IDtcLuSubordinateDtc * This);
  3283. HRESULT ( STDMETHODCALLTYPE *RequestCommit )(
  3284. IDtcLuSubordinateDtc * This);
  3285. END_INTERFACE
  3286. } IDtcLuSubordinateDtcVtbl;
  3287. interface IDtcLuSubordinateDtc
  3288. {
  3289. CONST_VTBL struct IDtcLuSubordinateDtcVtbl *lpVtbl;
  3290. };
  3291. #ifdef COBJMACROS
  3292. #define IDtcLuSubordinateDtc_QueryInterface(This,riid,ppvObject) \
  3293. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  3294. #define IDtcLuSubordinateDtc_AddRef(This) \
  3295. (This)->lpVtbl -> AddRef(This)
  3296. #define IDtcLuSubordinateDtc_Release(This) \
  3297. (This)->lpVtbl -> Release(This)
  3298. #define IDtcLuSubordinateDtc_Unplug(This,fConversationLost) \
  3299. (This)->lpVtbl -> Unplug(This,fConversationLost)
  3300. #define IDtcLuSubordinateDtc_BackedOut(This) \
  3301. (This)->lpVtbl -> BackedOut(This)
  3302. #define IDtcLuSubordinateDtc_BackOut(This) \
  3303. (This)->lpVtbl -> BackOut(This)
  3304. #define IDtcLuSubordinateDtc_Committed(This) \
  3305. (This)->lpVtbl -> Committed(This)
  3306. #define IDtcLuSubordinateDtc_Forget(This) \
  3307. (This)->lpVtbl -> Forget(This)
  3308. #define IDtcLuSubordinateDtc_Prepare(This) \
  3309. (This)->lpVtbl -> Prepare(This)
  3310. #define IDtcLuSubordinateDtc_RequestCommit(This) \
  3311. (This)->lpVtbl -> RequestCommit(This)
  3312. #endif /* COBJMACROS */
  3313. #endif /* C style interface */
  3314. HRESULT STDMETHODCALLTYPE IDtcLuSubordinateDtc_Unplug_Proxy(
  3315. IDtcLuSubordinateDtc * This,
  3316. /* [in] */ BOOL fConversationLost);
  3317. void __RPC_STUB IDtcLuSubordinateDtc_Unplug_Stub(
  3318. IRpcStubBuffer *This,
  3319. IRpcChannelBuffer *_pRpcChannelBuffer,
  3320. PRPC_MESSAGE _pRpcMessage,
  3321. DWORD *_pdwStubPhase);
  3322. HRESULT STDMETHODCALLTYPE IDtcLuSubordinateDtc_BackedOut_Proxy(
  3323. IDtcLuSubordinateDtc * This);
  3324. void __RPC_STUB IDtcLuSubordinateDtc_BackedOut_Stub(
  3325. IRpcStubBuffer *This,
  3326. IRpcChannelBuffer *_pRpcChannelBuffer,
  3327. PRPC_MESSAGE _pRpcMessage,
  3328. DWORD *_pdwStubPhase);
  3329. HRESULT STDMETHODCALLTYPE IDtcLuSubordinateDtc_BackOut_Proxy(
  3330. IDtcLuSubordinateDtc * This);
  3331. void __RPC_STUB IDtcLuSubordinateDtc_BackOut_Stub(
  3332. IRpcStubBuffer *This,
  3333. IRpcChannelBuffer *_pRpcChannelBuffer,
  3334. PRPC_MESSAGE _pRpcMessage,
  3335. DWORD *_pdwStubPhase);
  3336. HRESULT STDMETHODCALLTYPE IDtcLuSubordinateDtc_Committed_Proxy(
  3337. IDtcLuSubordinateDtc * This);
  3338. void __RPC_STUB IDtcLuSubordinateDtc_Committed_Stub(
  3339. IRpcStubBuffer *This,
  3340. IRpcChannelBuffer *_pRpcChannelBuffer,
  3341. PRPC_MESSAGE _pRpcMessage,
  3342. DWORD *_pdwStubPhase);
  3343. HRESULT STDMETHODCALLTYPE IDtcLuSubordinateDtc_Forget_Proxy(
  3344. IDtcLuSubordinateDtc * This);
  3345. void __RPC_STUB IDtcLuSubordinateDtc_Forget_Stub(
  3346. IRpcStubBuffer *This,
  3347. IRpcChannelBuffer *_pRpcChannelBuffer,
  3348. PRPC_MESSAGE _pRpcMessage,
  3349. DWORD *_pdwStubPhase);
  3350. HRESULT STDMETHODCALLTYPE IDtcLuSubordinateDtc_Prepare_Proxy(
  3351. IDtcLuSubordinateDtc * This);
  3352. void __RPC_STUB IDtcLuSubordinateDtc_Prepare_Stub(
  3353. IRpcStubBuffer *This,
  3354. IRpcChannelBuffer *_pRpcChannelBuffer,
  3355. PRPC_MESSAGE _pRpcMessage,
  3356. DWORD *_pdwStubPhase);
  3357. HRESULT STDMETHODCALLTYPE IDtcLuSubordinateDtc_RequestCommit_Proxy(
  3358. IDtcLuSubordinateDtc * This);
  3359. void __RPC_STUB IDtcLuSubordinateDtc_RequestCommit_Stub(
  3360. IRpcStubBuffer *This,
  3361. IRpcChannelBuffer *_pRpcChannelBuffer,
  3362. PRPC_MESSAGE _pRpcMessage,
  3363. DWORD *_pdwStubPhase);
  3364. #endif /* __IDtcLuSubordinateDtc_INTERFACE_DEFINED__ */
  3365. #ifndef __IDtcLuSubordinateDtcSink_INTERFACE_DEFINED__
  3366. #define __IDtcLuSubordinateDtcSink_INTERFACE_DEFINED__
  3367. /* interface IDtcLuSubordinateDtcSink */
  3368. /* [local][uuid][unique][object] */
  3369. EXTERN_C const IID IID_IDtcLuSubordinateDtcSink;
  3370. #if defined(__cplusplus) && !defined(CINTERFACE)
  3371. MIDL_INTERFACE("4131E774-1AEA-11d0-944B-00A0C905416E")
  3372. IDtcLuSubordinateDtcSink : public IUnknown
  3373. {
  3374. public:
  3375. virtual HRESULT STDMETHODCALLTYPE AckUnplug( void) = 0;
  3376. virtual HRESULT STDMETHODCALLTYPE TmDown( void) = 0;
  3377. virtual HRESULT STDMETHODCALLTYPE SessionLost( void) = 0;
  3378. virtual HRESULT STDMETHODCALLTYPE BackedOut( void) = 0;
  3379. virtual HRESULT STDMETHODCALLTYPE BackOut( void) = 0;
  3380. virtual HRESULT STDMETHODCALLTYPE Committed( void) = 0;
  3381. virtual HRESULT STDMETHODCALLTYPE Forget( void) = 0;
  3382. virtual HRESULT STDMETHODCALLTYPE RequestCommit( void) = 0;
  3383. };
  3384. #else /* C style interface */
  3385. typedef struct IDtcLuSubordinateDtcSinkVtbl
  3386. {
  3387. BEGIN_INTERFACE
  3388. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  3389. IDtcLuSubordinateDtcSink * This,
  3390. /* [in] */ REFIID riid,
  3391. /* [iid_is][out] */ void **ppvObject);
  3392. ULONG ( STDMETHODCALLTYPE *AddRef )(
  3393. IDtcLuSubordinateDtcSink * This);
  3394. ULONG ( STDMETHODCALLTYPE *Release )(
  3395. IDtcLuSubordinateDtcSink * This);
  3396. HRESULT ( STDMETHODCALLTYPE *AckUnplug )(
  3397. IDtcLuSubordinateDtcSink * This);
  3398. HRESULT ( STDMETHODCALLTYPE *TmDown )(
  3399. IDtcLuSubordinateDtcSink * This);
  3400. HRESULT ( STDMETHODCALLTYPE *SessionLost )(
  3401. IDtcLuSubordinateDtcSink * This);
  3402. HRESULT ( STDMETHODCALLTYPE *BackedOut )(
  3403. IDtcLuSubordinateDtcSink * This);
  3404. HRESULT ( STDMETHODCALLTYPE *BackOut )(
  3405. IDtcLuSubordinateDtcSink * This);
  3406. HRESULT ( STDMETHODCALLTYPE *Committed )(
  3407. IDtcLuSubordinateDtcSink * This);
  3408. HRESULT ( STDMETHODCALLTYPE *Forget )(
  3409. IDtcLuSubordinateDtcSink * This);
  3410. HRESULT ( STDMETHODCALLTYPE *RequestCommit )(
  3411. IDtcLuSubordinateDtcSink * This);
  3412. END_INTERFACE
  3413. } IDtcLuSubordinateDtcSinkVtbl;
  3414. interface IDtcLuSubordinateDtcSink
  3415. {
  3416. CONST_VTBL struct IDtcLuSubordinateDtcSinkVtbl *lpVtbl;
  3417. };
  3418. #ifdef COBJMACROS
  3419. #define IDtcLuSubordinateDtcSink_QueryInterface(This,riid,ppvObject) \
  3420. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  3421. #define IDtcLuSubordinateDtcSink_AddRef(This) \
  3422. (This)->lpVtbl -> AddRef(This)
  3423. #define IDtcLuSubordinateDtcSink_Release(This) \
  3424. (This)->lpVtbl -> Release(This)
  3425. #define IDtcLuSubordinateDtcSink_AckUnplug(This) \
  3426. (This)->lpVtbl -> AckUnplug(This)
  3427. #define IDtcLuSubordinateDtcSink_TmDown(This) \
  3428. (This)->lpVtbl -> TmDown(This)
  3429. #define IDtcLuSubordinateDtcSink_SessionLost(This) \
  3430. (This)->lpVtbl -> SessionLost(This)
  3431. #define IDtcLuSubordinateDtcSink_BackedOut(This) \
  3432. (This)->lpVtbl -> BackedOut(This)
  3433. #define IDtcLuSubordinateDtcSink_BackOut(This) \
  3434. (This)->lpVtbl -> BackOut(This)
  3435. #define IDtcLuSubordinateDtcSink_Committed(This) \
  3436. (This)->lpVtbl -> Committed(This)
  3437. #define IDtcLuSubordinateDtcSink_Forget(This) \
  3438. (This)->lpVtbl -> Forget(This)
  3439. #define IDtcLuSubordinateDtcSink_RequestCommit(This) \
  3440. (This)->lpVtbl -> RequestCommit(This)
  3441. #endif /* COBJMACROS */
  3442. #endif /* C style interface */
  3443. HRESULT STDMETHODCALLTYPE IDtcLuSubordinateDtcSink_AckUnplug_Proxy(
  3444. IDtcLuSubordinateDtcSink * This);
  3445. void __RPC_STUB IDtcLuSubordinateDtcSink_AckUnplug_Stub(
  3446. IRpcStubBuffer *This,
  3447. IRpcChannelBuffer *_pRpcChannelBuffer,
  3448. PRPC_MESSAGE _pRpcMessage,
  3449. DWORD *_pdwStubPhase);
  3450. HRESULT STDMETHODCALLTYPE IDtcLuSubordinateDtcSink_TmDown_Proxy(
  3451. IDtcLuSubordinateDtcSink * This);
  3452. void __RPC_STUB IDtcLuSubordinateDtcSink_TmDown_Stub(
  3453. IRpcStubBuffer *This,
  3454. IRpcChannelBuffer *_pRpcChannelBuffer,
  3455. PRPC_MESSAGE _pRpcMessage,
  3456. DWORD *_pdwStubPhase);
  3457. HRESULT STDMETHODCALLTYPE IDtcLuSubordinateDtcSink_SessionLost_Proxy(
  3458. IDtcLuSubordinateDtcSink * This);
  3459. void __RPC_STUB IDtcLuSubordinateDtcSink_SessionLost_Stub(
  3460. IRpcStubBuffer *This,
  3461. IRpcChannelBuffer *_pRpcChannelBuffer,
  3462. PRPC_MESSAGE _pRpcMessage,
  3463. DWORD *_pdwStubPhase);
  3464. HRESULT STDMETHODCALLTYPE IDtcLuSubordinateDtcSink_BackedOut_Proxy(
  3465. IDtcLuSubordinateDtcSink * This);
  3466. void __RPC_STUB IDtcLuSubordinateDtcSink_BackedOut_Stub(
  3467. IRpcStubBuffer *This,
  3468. IRpcChannelBuffer *_pRpcChannelBuffer,
  3469. PRPC_MESSAGE _pRpcMessage,
  3470. DWORD *_pdwStubPhase);
  3471. HRESULT STDMETHODCALLTYPE IDtcLuSubordinateDtcSink_BackOut_Proxy(
  3472. IDtcLuSubordinateDtcSink * This);
  3473. void __RPC_STUB IDtcLuSubordinateDtcSink_BackOut_Stub(
  3474. IRpcStubBuffer *This,
  3475. IRpcChannelBuffer *_pRpcChannelBuffer,
  3476. PRPC_MESSAGE _pRpcMessage,
  3477. DWORD *_pdwStubPhase);
  3478. HRESULT STDMETHODCALLTYPE IDtcLuSubordinateDtcSink_Committed_Proxy(
  3479. IDtcLuSubordinateDtcSink * This);
  3480. void __RPC_STUB IDtcLuSubordinateDtcSink_Committed_Stub(
  3481. IRpcStubBuffer *This,
  3482. IRpcChannelBuffer *_pRpcChannelBuffer,
  3483. PRPC_MESSAGE _pRpcMessage,
  3484. DWORD *_pdwStubPhase);
  3485. HRESULT STDMETHODCALLTYPE IDtcLuSubordinateDtcSink_Forget_Proxy(
  3486. IDtcLuSubordinateDtcSink * This);
  3487. void __RPC_STUB IDtcLuSubordinateDtcSink_Forget_Stub(
  3488. IRpcStubBuffer *This,
  3489. IRpcChannelBuffer *_pRpcChannelBuffer,
  3490. PRPC_MESSAGE _pRpcMessage,
  3491. DWORD *_pdwStubPhase);
  3492. HRESULT STDMETHODCALLTYPE IDtcLuSubordinateDtcSink_RequestCommit_Proxy(
  3493. IDtcLuSubordinateDtcSink * This);
  3494. void __RPC_STUB IDtcLuSubordinateDtcSink_RequestCommit_Stub(
  3495. IRpcStubBuffer *This,
  3496. IRpcChannelBuffer *_pRpcChannelBuffer,
  3497. PRPC_MESSAGE _pRpcMessage,
  3498. DWORD *_pdwStubPhase);
  3499. #endif /* __IDtcLuSubordinateDtcSink_INTERFACE_DEFINED__ */
  3500. #ifndef __IDtcLuSubordinateDtcFactory_INTERFACE_DEFINED__
  3501. #define __IDtcLuSubordinateDtcFactory_INTERFACE_DEFINED__
  3502. /* interface IDtcLuSubordinateDtcFactory */
  3503. /* [local][uuid][unique][object] */
  3504. EXTERN_C const IID IID_IDtcLuSubordinateDtcFactory;
  3505. #if defined(__cplusplus) && !defined(CINTERFACE)
  3506. MIDL_INTERFACE("4131E775-1AEA-11d0-944B-00A0C905416E")
  3507. IDtcLuSubordinateDtcFactory : public IUnknown
  3508. {
  3509. public:
  3510. virtual HRESULT STDMETHODCALLTYPE Create(
  3511. /* [in] */ unsigned char *pucLuPair,
  3512. /* [in] */ DWORD cbLuPair,
  3513. /* [in] */ IUnknown *punkTransactionOuter,
  3514. /* [in] */ ISOLEVEL isoLevel,
  3515. /* [in] */ ULONG isoFlags,
  3516. /* [in] */ ITransactionOptions *pOptions,
  3517. /* [out] */ ITransaction **ppTransaction,
  3518. /* [in] */ unsigned char *pTransId,
  3519. /* [in] */ DWORD cbTransId,
  3520. /* [in] */ IDtcLuSubordinateDtcSink *pSubordinateDtcSink,
  3521. /* [out][in] */ IDtcLuSubordinateDtc **ppSubordinateDtc) = 0;
  3522. };
  3523. #else /* C style interface */
  3524. typedef struct IDtcLuSubordinateDtcFactoryVtbl
  3525. {
  3526. BEGIN_INTERFACE
  3527. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  3528. IDtcLuSubordinateDtcFactory * This,
  3529. /* [in] */ REFIID riid,
  3530. /* [iid_is][out] */ void **ppvObject);
  3531. ULONG ( STDMETHODCALLTYPE *AddRef )(
  3532. IDtcLuSubordinateDtcFactory * This);
  3533. ULONG ( STDMETHODCALLTYPE *Release )(
  3534. IDtcLuSubordinateDtcFactory * This);
  3535. HRESULT ( STDMETHODCALLTYPE *Create )(
  3536. IDtcLuSubordinateDtcFactory * This,
  3537. /* [in] */ unsigned char *pucLuPair,
  3538. /* [in] */ DWORD cbLuPair,
  3539. /* [in] */ IUnknown *punkTransactionOuter,
  3540. /* [in] */ ISOLEVEL isoLevel,
  3541. /* [in] */ ULONG isoFlags,
  3542. /* [in] */ ITransactionOptions *pOptions,
  3543. /* [out] */ ITransaction **ppTransaction,
  3544. /* [in] */ unsigned char *pTransId,
  3545. /* [in] */ DWORD cbTransId,
  3546. /* [in] */ IDtcLuSubordinateDtcSink *pSubordinateDtcSink,
  3547. /* [out][in] */ IDtcLuSubordinateDtc **ppSubordinateDtc);
  3548. END_INTERFACE
  3549. } IDtcLuSubordinateDtcFactoryVtbl;
  3550. interface IDtcLuSubordinateDtcFactory
  3551. {
  3552. CONST_VTBL struct IDtcLuSubordinateDtcFactoryVtbl *lpVtbl;
  3553. };
  3554. #ifdef COBJMACROS
  3555. #define IDtcLuSubordinateDtcFactory_QueryInterface(This,riid,ppvObject) \
  3556. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  3557. #define IDtcLuSubordinateDtcFactory_AddRef(This) \
  3558. (This)->lpVtbl -> AddRef(This)
  3559. #define IDtcLuSubordinateDtcFactory_Release(This) \
  3560. (This)->lpVtbl -> Release(This)
  3561. #define IDtcLuSubordinateDtcFactory_Create(This,pucLuPair,cbLuPair,punkTransactionOuter,isoLevel,isoFlags,pOptions,ppTransaction,pTransId,cbTransId,pSubordinateDtcSink,ppSubordinateDtc) \
  3562. (This)->lpVtbl -> Create(This,pucLuPair,cbLuPair,punkTransactionOuter,isoLevel,isoFlags,pOptions,ppTransaction,pTransId,cbTransId,pSubordinateDtcSink,ppSubordinateDtc)
  3563. #endif /* COBJMACROS */
  3564. #endif /* C style interface */
  3565. HRESULT STDMETHODCALLTYPE IDtcLuSubordinateDtcFactory_Create_Proxy(
  3566. IDtcLuSubordinateDtcFactory * This,
  3567. /* [in] */ unsigned char *pucLuPair,
  3568. /* [in] */ DWORD cbLuPair,
  3569. /* [in] */ IUnknown *punkTransactionOuter,
  3570. /* [in] */ ISOLEVEL isoLevel,
  3571. /* [in] */ ULONG isoFlags,
  3572. /* [in] */ ITransactionOptions *pOptions,
  3573. /* [out] */ ITransaction **ppTransaction,
  3574. /* [in] */ unsigned char *pTransId,
  3575. /* [in] */ DWORD cbTransId,
  3576. /* [in] */ IDtcLuSubordinateDtcSink *pSubordinateDtcSink,
  3577. /* [out][in] */ IDtcLuSubordinateDtc **ppSubordinateDtc);
  3578. void __RPC_STUB IDtcLuSubordinateDtcFactory_Create_Stub(
  3579. IRpcStubBuffer *This,
  3580. IRpcChannelBuffer *_pRpcChannelBuffer,
  3581. PRPC_MESSAGE _pRpcMessage,
  3582. DWORD *_pdwStubPhase);
  3583. #endif /* __IDtcLuSubordinateDtcFactory_INTERFACE_DEFINED__ */
  3584. /* interface __MIDL_itf_txdtc_0153 */
  3585. /* [local] */
  3586. #if _MSC_VER < 1100 || !defined(__cplusplus)
  3587. DEFINE_GUID(IID_IXATransLookup, 0xF3B1F131, 0xEEDA, 0x11ce, 0xAE, 0xD4, 0x00, 0xAA, 0x00, 0x51, 0xE2, 0xC4);
  3588. DEFINE_GUID(IID_IXATransLookup2,0xbf193c85, 0xd1a, 0x4290, 0xb8, 0x8f, 0xd2, 0xcb, 0x88, 0x73, 0xd1, 0xe7);
  3589. DEFINE_GUID(IID_IResourceManagerSink, 0x0D563181, 0xDEFB, 0x11ce, 0xAE, 0xD1, 0x00, 0xAA, 0x00, 0x51, 0xE2, 0xC4);
  3590. DEFINE_GUID(IID_IResourceManager, 0x3741d21, 0x87eb, 0x11ce, 0x80, 0x81, 0x00, 0x80, 0xc7, 0x58, 0x52, 0x7e);
  3591. DEFINE_GUID(IID_IResourceManager2, 0xd136c69a, 0xf749, 0x11d1, 0x8f, 0x47, 0x0, 0xc0, 0x4f, 0x8e, 0xe5, 0x7d);
  3592. DEFINE_GUID(IID_ILastResourceManager, 0x4d964ad4, 0x5b33, 0x11d3, 0x8a, 0x91, 0x00, 0xc0, 0x4f, 0x79, 0xeb, 0x6d);
  3593. DEFINE_GUID(IID_IXAConfig, 0xC8A6E3A1, 0x9A8C, 0x11cf, 0xA3, 0x08, 0x00, 0xA0, 0xC9, 0x05, 0x41, 0x6E);
  3594. DEFINE_GUID(IID_IRMHelper, 0xE793F6D1, 0xF53D, 0x11cf, 0xA6, 0x0D, 0x00, 0xA0, 0xC9, 0x05, 0x41, 0x6E);
  3595. DEFINE_GUID(IID_IXAObtainRMInfo, 0xE793F6D2, 0xF53D, 0x11cf, 0xA6, 0x0D, 0x00, 0xA0, 0xC9, 0x05, 0x41, 0x6E);
  3596. DEFINE_GUID(IID_IXAResourceManager, 0x4131E751, 0x1AEA, 0x11d0, 0x94, 0x4B, 0x00, 0xA0, 0xC9, 0x05, 0x41, 0x6E);
  3597. DEFINE_GUID(IID_IXAResourceManagerFactory, 0x4131E750, 0x1AEA, 0x11d0, 0x94, 0x4B, 0x00, 0xA0, 0xC9, 0x05, 0x41, 0x6E);
  3598. DEFINE_GUID(IID_IXATransaction, 0x4131E752, 0x1AEA, 0x11d0, 0x94, 0x4B, 0x00, 0xA0, 0xC9, 0x05, 0x41, 0x6E);
  3599. DEFINE_GUID(IID_IResourceManagerFactory, 0x13741d20, 0x87eb, 0x11ce, 0x80, 0x81, 0x00, 0x80, 0xc7, 0x58, 0x52, 0x7e);
  3600. DEFINE_GUID(IID_IResourceManagerFactory2, 0x6b369c21, 0xfbd2, 0x11d1, 0x8f, 0x47, 0x0, 0xc0, 0x4f, 0x8e, 0xe5, 0x7d);
  3601. DEFINE_GUID(IID_IPrepareInfo, 0x80c7bfd0, 0x87ee, 0x11ce, 0x80, 0x81, 0x00, 0x80, 0xc7, 0x58, 0x52, 0x7e);
  3602. DEFINE_GUID(IID_IPrepareInfo2, 0x5FAB2547, 0x9779, 0x11d1, 0xB8, 0x86, 0x00, 0xC0, 0x4F, 0xB9, 0x61, 0x8A);
  3603. DEFINE_GUID(IID_IGetDispenser, 0xc23cc370, 0x87ef, 0x11ce, 0x80, 0x81, 0x00, 0x80, 0xc7, 0x58, 0x52, 0x7e);
  3604. DEFINE_GUID(IID_ITransactionVoterNotifyAsync2, 0x5433376b, 0x414d, 0x11d3, 0xb2, 0x6, 0x0, 0xc0, 0x4f, 0xc2, 0xf3, 0xef);
  3605. DEFINE_GUID(IID_ITransactionVoterBallotAsync2, 0x5433376c, 0x414d, 0x11d3, 0xb2, 0x6, 0x0, 0xc0, 0x4f, 0xc2, 0xf3, 0xef);
  3606. DEFINE_GUID(IID_ITransactionVoterFactory2, 0x5433376a, 0x414d, 0x11d3, 0xb2, 0x6, 0x0, 0xc0, 0x4f, 0xc2, 0xf3, 0xef);
  3607. DEFINE_GUID(IID_ITransactionPhase0EnlistmentAsync, 0x82DC88E1, 0xA954, 0x11d1, 0x8F, 0x88, 0x00, 0x60, 0x08, 0x95, 0xE7, 0xD5);
  3608. DEFINE_GUID(IID_ITransactionPhase0NotifyAsync, 0xEF081809, 0x0C76, 0x11d2, 0x87, 0xA6, 0x00, 0xC0, 0x4F, 0x99, 0x0F, 0x34);
  3609. DEFINE_GUID(IID_ITransactionPhase0Factory, 0x82DC88E0, 0xA954, 0x11d1, 0x8F, 0x88, 0x00, 0x60, 0x08, 0x95, 0xE7, 0xD5);
  3610. DEFINE_GUID(IID_ITransactionTransmitter, 0x59313E01, 0xB36C, 0x11cf, 0xA5, 0x39, 0x00, 0xAA, 0x00, 0x68, 0x87, 0xC3);
  3611. DEFINE_GUID(IID_ITransactionTransmitterFactory, 0x59313E00, 0xB36C, 0x11cf, 0xA5, 0x39, 0x00, 0xAA, 0x00, 0x68, 0x87, 0xC3);
  3612. DEFINE_GUID(IID_ITransactionReceiver, 0x59313E03, 0xB36C, 0x11cf, 0xA5, 0x39, 0x00, 0xAA, 0x00, 0x68, 0x87, 0xC3);
  3613. DEFINE_GUID(IID_ITransactionReceiverFactory, 0x59313E02, 0xB36C, 0x11cf, 0xA5, 0x39, 0x00, 0xAA, 0x00, 0x68, 0x87, 0xC3);
  3614. DEFINE_GUID(IID_IDtcLuConfigure, 0x4131E760, 0x1AEA, 0x11d0, 0x94, 0x4B, 0x00, 0xA0, 0xC9, 0x05, 0x41, 0x6E);
  3615. DEFINE_GUID(IID_IDtcLuRecovery, 0xac2b8ad2, 0xd6f0, 0x11d0, 0xb3, 0x86, 0x0, 0xa0, 0xc9, 0x8, 0x33, 0x65);
  3616. DEFINE_GUID(IID_IDtcLuRecoveryFactory, 0x4131E762, 0x1AEA, 0x11d0, 0x94, 0x4B, 0x00, 0xA0, 0xC9, 0x05, 0x41, 0x6E);
  3617. DEFINE_GUID(IID_IDtcLuRecoveryInitiatedByDtcTransWork, 0x4131E765, 0x1AEA, 0x11d0, 0x94, 0x4B, 0x00, 0xA0, 0xC9, 0x05, 0x41, 0x6E);
  3618. DEFINE_GUID(IID_IDtcLuRecoveryInitiatedByDtcStatusWork, 0x4131E766, 0x1AEA, 0x11d0, 0x94, 0x4B, 0x00, 0xA0, 0xC9, 0x05, 0x41, 0x6E);
  3619. DEFINE_GUID(IID_IDtcLuRecoveryInitiatedByDtc, 0x4131E764, 0x1AEA, 0x11d0, 0x94, 0x4B, 0x00, 0xA0, 0xC9, 0x05, 0x41, 0x6E);
  3620. DEFINE_GUID(IID_IDtcLuRecoveryInitiatedByLuWork, 0xac2b8ad1, 0xd6f0, 0x11d0, 0xb3, 0x86, 0x0, 0xa0, 0xc9, 0x8, 0x33, 0x65);
  3621. DEFINE_GUID(IID_IDtcLuRecoveryInitiatedByLu, 0x4131E768, 0x1AEA, 0x11d0, 0x94, 0x4B, 0x00, 0xA0, 0xC9, 0x05, 0x41, 0x6E);
  3622. DEFINE_GUID(IID_IDtcLuRmEnlistment, 0x4131E769, 0x1AEA, 0x11d0, 0x94, 0x4B, 0x00, 0xA0, 0xC9, 0x05, 0x41, 0x6E);
  3623. DEFINE_GUID(IID_IDtcLuRmEnlistmentSink, 0x4131E770, 0x1AEA, 0x11d0, 0x94, 0x4B, 0x00, 0xA0, 0xC9, 0x05, 0x41, 0x6E);
  3624. DEFINE_GUID(IID_IDtcLuRmEnlistmentFactory, 0x4131E771, 0x1AEA, 0x11d0, 0x94, 0x4B, 0x00, 0xA0, 0xC9, 0x05, 0x41, 0x6E);
  3625. DEFINE_GUID(IID_IDtcLuSubordinateDtc, 0x4131E773, 0x1AEA, 0x11d0, 0x94, 0x4B, 0x00, 0xA0, 0xC9, 0x05, 0x41, 0x6E);
  3626. DEFINE_GUID(IID_IDtcLuSubordinateDtcSink, 0x4131E774, 0x1AEA, 0x11d0, 0x94, 0x4B, 0x00, 0xA0, 0xC9, 0x05, 0x41, 0x6E);
  3627. DEFINE_GUID(IID_IDtcLuSubordinateDtcFactory, 0x4131E775, 0x1AEA, 0x11d0, 0x94, 0x4B, 0x00, 0xA0, 0xC9, 0x05, 0x41, 0x6E);
  3628. #else
  3629. #define IID_IXATransLookup __uuidof(IXATransLookup)
  3630. #define IID_IXATransLookup2 __uuidof(IXATransLookup2)
  3631. #define IID_IResourceManagerSink __uuidof(IResourceManagerSink)
  3632. #define IID_IResourceManager __uuidof(IResourceManager)
  3633. #define IID_IResourceManager2 __uuidof(IResourceManager2)
  3634. #define IID_ILastResourceManager __uuidof(ILastResourceManager)
  3635. #define IID_IXAConfig __uuidof(IXAConfig)
  3636. #define IID_IRMHelper __uuidof(IRMHelper)
  3637. #define IID_IXAObtainRMInfo __uuidof(IXAObtainRMInfo)
  3638. #define IID_IXAResourceManager __uuidof(IXAResourceManager)
  3639. #define IID_IXAResourceManagerFactory __uuidof(IXAResourceManagerFactory)
  3640. #define IID_IXATransaction __uuidof(IXATransaction)
  3641. #define IID_IResourceManagerFactory __uuidof(IResourceManagerFactory)
  3642. #define IID_IResourceManagerFactory2 __uuidof(IResourceManagerFactory2)
  3643. #define IID_IPrepareInfo __uuidof(IPrepareInfo)
  3644. #define IID_IPrepareInfo2 __uuidof(IPrepareInfo2)
  3645. #define IID_IGetDispenser __uuidof(IGetDispenser)
  3646. #define IID_ITransactionVoterNotifyAsync2 __uuidof(ITransactionVoterNotifyAsync2)
  3647. #define IID_ITransactionVoterBallotAsync2 __uuidof(ITransactionVoterBallotAsync2)
  3648. #define IID_ITransactionVoterFactory2 __uuidof(ITransactionVoterFactory2)
  3649. #define IID_ITransactionPhase0EnlistmentAsync __uuidof(ITransactionPhase0EnlistmentAsync)
  3650. #define IID_ITransactionPhase0NotifyAsync __uuidof(ITransactionPhase0NotifyAsync)
  3651. #define IID_ITransactionPhase0Factory __uuidof(ITransactionPhase0Factory)
  3652. #define IID_ITransactionTransmitter __uuidof(ITransactionTransmitter)
  3653. #define IID_ITransactionTransmitterFactory __uuidof(ITransactionTransmitterFactory)
  3654. #define IID_ITransactionReceiver __uuidof(ITransactionReceiver)
  3655. #define IID_ITransactionReceiverFactory __uuidof(ITransactionReceiverFactory)
  3656. #define IID_IDtcLuConfigure __uuidof(IDtcLuConfigure)
  3657. #define IID_IDtcLuRecovery __uuidof(IDtcLuRecovery)
  3658. #define IID_IDtcLuRecoveryFactory __uuidof(IDtcLuRecoveryFactory)
  3659. #define IID_IDtcLuRecoveryInitiatedByDtcTransWork __uuidof(IDtcLuRecoveryInitiatedByDtcTransWork)
  3660. #define IID_IDtcLuRecoveryInitiatedByDtcStatusWork __uuidof(IDtcLuRecoveryInitiatedByDtcStatusWork)
  3661. #define IID_IDtcLuRecoveryInitiatedByDtc __uuidof(IDtcLuRecoveryInitiatedByDtc)
  3662. #define IID_IDtcLuRecoveryInitiatedByLuWork __uuidof(IDtcLuRecoveryInitiatedByLuWork)
  3663. #define IID_IDtcLuRecoveryInitiatedByLu __uuidof(IDtcLuRecoveryInitiatedByLu)
  3664. #define IID_IDtcLuRmEnlistment __uuidof(IDtcLuRmEnlistment)
  3665. #define IID_IDtcLuRmEnlistmentSink __uuidof(IDtcLuRmEnlistmentSink)
  3666. #define IID_IDtcLuRmEnlistmentFactory __uuidof(IDtcLuRmEnlistmentFactory)
  3667. #define IID_IDtcLuSubordinateDtc __uuidof(IDtcLuSubordinateDtc)
  3668. #define IID_IDtcLuSubordinateDtcSink __uuidof(IDtcLuSubordinateDtcSink)
  3669. #define IID_IDtcLuSubordinateDtcFactory __uuidof(IDtcLuSubordinateDtcFactory)
  3670. #endif
  3671. extern RPC_IF_HANDLE __MIDL_itf_txdtc_0153_v0_0_c_ifspec;
  3672. extern RPC_IF_HANDLE __MIDL_itf_txdtc_0153_v0_0_s_ifspec;
  3673. /* Additional Prototypes for ALL interfaces */
  3674. /* end of Additional Prototypes */
  3675. #ifdef __cplusplus
  3676. }
  3677. #endif
  3678. #endif