Source code of Windows XP (NT5)
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.

1722 lines
49 KiB

  1. #pragma warning( disable: 4049 ) /* more than 64k source lines */
  2. /* this ALWAYS GENERATED file contains the definitions for the interfaces */
  3. /* File created by MIDL compiler version 6.00.0340 */
  4. /* Compiler settings for txcoord.idl:
  5. Os, W1, Zp8, env=Win32 (32b run)
  6. protocol : dce , ms_ext, c_ext
  7. error checks: allocation ref bounds_check enum stub_data
  8. VC __declspec() decoration level:
  9. __declspec(uuid()), __declspec(selectany), __declspec(novtable)
  10. DECLSPEC_UUID(), MIDL_INTERFACE()
  11. */
  12. //@@MIDL_FILE_HEADING( )
  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__ 440
  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 __txcoord_h__
  27. #define __txcoord_h__
  28. #if defined(_MSC_VER) && (_MSC_VER >= 1020)
  29. #pragma once
  30. #endif
  31. /* Forward Declarations */
  32. #ifndef __ITransactionResourceAsync_FWD_DEFINED__
  33. #define __ITransactionResourceAsync_FWD_DEFINED__
  34. typedef interface ITransactionResourceAsync ITransactionResourceAsync;
  35. #endif /* __ITransactionResourceAsync_FWD_DEFINED__ */
  36. #ifndef __ITransactionLastResourceAsync_FWD_DEFINED__
  37. #define __ITransactionLastResourceAsync_FWD_DEFINED__
  38. typedef interface ITransactionLastResourceAsync ITransactionLastResourceAsync;
  39. #endif /* __ITransactionLastResourceAsync_FWD_DEFINED__ */
  40. #ifndef __ITransactionResource_FWD_DEFINED__
  41. #define __ITransactionResource_FWD_DEFINED__
  42. typedef interface ITransactionResource ITransactionResource;
  43. #endif /* __ITransactionResource_FWD_DEFINED__ */
  44. #ifndef __ITransactionEnlistmentAsync_FWD_DEFINED__
  45. #define __ITransactionEnlistmentAsync_FWD_DEFINED__
  46. typedef interface ITransactionEnlistmentAsync ITransactionEnlistmentAsync;
  47. #endif /* __ITransactionEnlistmentAsync_FWD_DEFINED__ */
  48. #ifndef __ITransactionLastEnlistmentAsync_FWD_DEFINED__
  49. #define __ITransactionLastEnlistmentAsync_FWD_DEFINED__
  50. typedef interface ITransactionLastEnlistmentAsync ITransactionLastEnlistmentAsync;
  51. #endif /* __ITransactionLastEnlistmentAsync_FWD_DEFINED__ */
  52. #ifndef __ITransactionExportFactory_FWD_DEFINED__
  53. #define __ITransactionExportFactory_FWD_DEFINED__
  54. typedef interface ITransactionExportFactory ITransactionExportFactory;
  55. #endif /* __ITransactionExportFactory_FWD_DEFINED__ */
  56. #ifndef __ITransactionImportWhereabouts_FWD_DEFINED__
  57. #define __ITransactionImportWhereabouts_FWD_DEFINED__
  58. typedef interface ITransactionImportWhereabouts ITransactionImportWhereabouts;
  59. #endif /* __ITransactionImportWhereabouts_FWD_DEFINED__ */
  60. #ifndef __ITransactionExport_FWD_DEFINED__
  61. #define __ITransactionExport_FWD_DEFINED__
  62. typedef interface ITransactionExport ITransactionExport;
  63. #endif /* __ITransactionExport_FWD_DEFINED__ */
  64. #ifndef __ITransactionImport_FWD_DEFINED__
  65. #define __ITransactionImport_FWD_DEFINED__
  66. typedef interface ITransactionImport ITransactionImport;
  67. #endif /* __ITransactionImport_FWD_DEFINED__ */
  68. #ifndef __ITipTransaction_FWD_DEFINED__
  69. #define __ITipTransaction_FWD_DEFINED__
  70. typedef interface ITipTransaction ITipTransaction;
  71. #endif /* __ITipTransaction_FWD_DEFINED__ */
  72. #ifndef __ITipHelper_FWD_DEFINED__
  73. #define __ITipHelper_FWD_DEFINED__
  74. typedef interface ITipHelper ITipHelper;
  75. #endif /* __ITipHelper_FWD_DEFINED__ */
  76. #ifndef __ITipPullSink_FWD_DEFINED__
  77. #define __ITipPullSink_FWD_DEFINED__
  78. typedef interface ITipPullSink ITipPullSink;
  79. #endif /* __ITipPullSink_FWD_DEFINED__ */
  80. /* header files for imported files */
  81. #include "transact.h"
  82. #include "objidl.h"
  83. #ifdef __cplusplus
  84. extern "C"{
  85. #endif
  86. void * __RPC_USER MIDL_user_allocate(size_t);
  87. void __RPC_USER MIDL_user_free( void * );
  88. /* interface __MIDL_itf_txcoord_0000 */
  89. /* [local] */
  90. extern RPC_IF_HANDLE __MIDL_itf_txcoord_0000_v0_0_c_ifspec;
  91. extern RPC_IF_HANDLE __MIDL_itf_txcoord_0000_v0_0_s_ifspec;
  92. #ifndef __ITransactionResourceAsync_INTERFACE_DEFINED__
  93. #define __ITransactionResourceAsync_INTERFACE_DEFINED__
  94. /* interface ITransactionResourceAsync */
  95. /* [unique][uuid][object] */
  96. EXTERN_C const IID IID_ITransactionResourceAsync;
  97. #if defined(__cplusplus) && !defined(CINTERFACE)
  98. MIDL_INTERFACE("69E971F0-23CE-11cf-AD60-00AA00A74CCD")
  99. ITransactionResourceAsync : public IUnknown
  100. {
  101. public:
  102. virtual HRESULT STDMETHODCALLTYPE PrepareRequest(
  103. /* [in] */ BOOL fRetaining,
  104. /* [in] */ DWORD grfRM,
  105. /* [in] */ BOOL fWantMoniker,
  106. /* [in] */ BOOL fSinglePhase) = 0;
  107. virtual HRESULT STDMETHODCALLTYPE CommitRequest(
  108. /* [in] */ DWORD grfRM,
  109. /* [unique][in] */ XACTUOW *pNewUOW) = 0;
  110. virtual HRESULT STDMETHODCALLTYPE AbortRequest(
  111. /* [unique][in] */ BOID *pboidReason,
  112. /* [in] */ BOOL fRetaining,
  113. /* [unique][in] */ XACTUOW *pNewUOW) = 0;
  114. virtual HRESULT STDMETHODCALLTYPE TMDown( void) = 0;
  115. };
  116. #else /* C style interface */
  117. typedef struct ITransactionResourceAsyncVtbl
  118. {
  119. BEGIN_INTERFACE
  120. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  121. ITransactionResourceAsync * This,
  122. /* [in] */ REFIID riid,
  123. /* [iid_is][out] */ void **ppvObject);
  124. ULONG ( STDMETHODCALLTYPE *AddRef )(
  125. ITransactionResourceAsync * This);
  126. ULONG ( STDMETHODCALLTYPE *Release )(
  127. ITransactionResourceAsync * This);
  128. HRESULT ( STDMETHODCALLTYPE *PrepareRequest )(
  129. ITransactionResourceAsync * This,
  130. /* [in] */ BOOL fRetaining,
  131. /* [in] */ DWORD grfRM,
  132. /* [in] */ BOOL fWantMoniker,
  133. /* [in] */ BOOL fSinglePhase);
  134. HRESULT ( STDMETHODCALLTYPE *CommitRequest )(
  135. ITransactionResourceAsync * This,
  136. /* [in] */ DWORD grfRM,
  137. /* [unique][in] */ XACTUOW *pNewUOW);
  138. HRESULT ( STDMETHODCALLTYPE *AbortRequest )(
  139. ITransactionResourceAsync * This,
  140. /* [unique][in] */ BOID *pboidReason,
  141. /* [in] */ BOOL fRetaining,
  142. /* [unique][in] */ XACTUOW *pNewUOW);
  143. HRESULT ( STDMETHODCALLTYPE *TMDown )(
  144. ITransactionResourceAsync * This);
  145. END_INTERFACE
  146. } ITransactionResourceAsyncVtbl;
  147. interface ITransactionResourceAsync
  148. {
  149. CONST_VTBL struct ITransactionResourceAsyncVtbl *lpVtbl;
  150. };
  151. #ifdef COBJMACROS
  152. #define ITransactionResourceAsync_QueryInterface(This,riid,ppvObject) \
  153. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  154. #define ITransactionResourceAsync_AddRef(This) \
  155. (This)->lpVtbl -> AddRef(This)
  156. #define ITransactionResourceAsync_Release(This) \
  157. (This)->lpVtbl -> Release(This)
  158. #define ITransactionResourceAsync_PrepareRequest(This,fRetaining,grfRM,fWantMoniker,fSinglePhase) \
  159. (This)->lpVtbl -> PrepareRequest(This,fRetaining,grfRM,fWantMoniker,fSinglePhase)
  160. #define ITransactionResourceAsync_CommitRequest(This,grfRM,pNewUOW) \
  161. (This)->lpVtbl -> CommitRequest(This,grfRM,pNewUOW)
  162. #define ITransactionResourceAsync_AbortRequest(This,pboidReason,fRetaining,pNewUOW) \
  163. (This)->lpVtbl -> AbortRequest(This,pboidReason,fRetaining,pNewUOW)
  164. #define ITransactionResourceAsync_TMDown(This) \
  165. (This)->lpVtbl -> TMDown(This)
  166. #endif /* COBJMACROS */
  167. #endif /* C style interface */
  168. HRESULT STDMETHODCALLTYPE ITransactionResourceAsync_PrepareRequest_Proxy(
  169. ITransactionResourceAsync * This,
  170. /* [in] */ BOOL fRetaining,
  171. /* [in] */ DWORD grfRM,
  172. /* [in] */ BOOL fWantMoniker,
  173. /* [in] */ BOOL fSinglePhase);
  174. void __RPC_STUB ITransactionResourceAsync_PrepareRequest_Stub(
  175. IRpcStubBuffer *This,
  176. IRpcChannelBuffer *_pRpcChannelBuffer,
  177. PRPC_MESSAGE _pRpcMessage,
  178. DWORD *_pdwStubPhase);
  179. HRESULT STDMETHODCALLTYPE ITransactionResourceAsync_CommitRequest_Proxy(
  180. ITransactionResourceAsync * This,
  181. /* [in] */ DWORD grfRM,
  182. /* [unique][in] */ XACTUOW *pNewUOW);
  183. void __RPC_STUB ITransactionResourceAsync_CommitRequest_Stub(
  184. IRpcStubBuffer *This,
  185. IRpcChannelBuffer *_pRpcChannelBuffer,
  186. PRPC_MESSAGE _pRpcMessage,
  187. DWORD *_pdwStubPhase);
  188. HRESULT STDMETHODCALLTYPE ITransactionResourceAsync_AbortRequest_Proxy(
  189. ITransactionResourceAsync * This,
  190. /* [unique][in] */ BOID *pboidReason,
  191. /* [in] */ BOOL fRetaining,
  192. /* [unique][in] */ XACTUOW *pNewUOW);
  193. void __RPC_STUB ITransactionResourceAsync_AbortRequest_Stub(
  194. IRpcStubBuffer *This,
  195. IRpcChannelBuffer *_pRpcChannelBuffer,
  196. PRPC_MESSAGE _pRpcMessage,
  197. DWORD *_pdwStubPhase);
  198. HRESULT STDMETHODCALLTYPE ITransactionResourceAsync_TMDown_Proxy(
  199. ITransactionResourceAsync * This);
  200. void __RPC_STUB ITransactionResourceAsync_TMDown_Stub(
  201. IRpcStubBuffer *This,
  202. IRpcChannelBuffer *_pRpcChannelBuffer,
  203. PRPC_MESSAGE _pRpcMessage,
  204. DWORD *_pdwStubPhase);
  205. #endif /* __ITransactionResourceAsync_INTERFACE_DEFINED__ */
  206. #ifndef __ITransactionLastResourceAsync_INTERFACE_DEFINED__
  207. #define __ITransactionLastResourceAsync_INTERFACE_DEFINED__
  208. /* interface ITransactionLastResourceAsync */
  209. /* [unique][uuid][object] */
  210. EXTERN_C const IID IID_ITransactionLastResourceAsync;
  211. #if defined(__cplusplus) && !defined(CINTERFACE)
  212. MIDL_INTERFACE("C82BD532-5B30-11d3-8A91-00C04F79EB6D")
  213. ITransactionLastResourceAsync : public IUnknown
  214. {
  215. public:
  216. virtual HRESULT STDMETHODCALLTYPE DelegateCommit(
  217. /* [in] */ DWORD grfRM) = 0;
  218. virtual HRESULT STDMETHODCALLTYPE ForgetRequest(
  219. /* [in] */ XACTUOW *pNewUOW) = 0;
  220. };
  221. #else /* C style interface */
  222. typedef struct ITransactionLastResourceAsyncVtbl
  223. {
  224. BEGIN_INTERFACE
  225. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  226. ITransactionLastResourceAsync * This,
  227. /* [in] */ REFIID riid,
  228. /* [iid_is][out] */ void **ppvObject);
  229. ULONG ( STDMETHODCALLTYPE *AddRef )(
  230. ITransactionLastResourceAsync * This);
  231. ULONG ( STDMETHODCALLTYPE *Release )(
  232. ITransactionLastResourceAsync * This);
  233. HRESULT ( STDMETHODCALLTYPE *DelegateCommit )(
  234. ITransactionLastResourceAsync * This,
  235. /* [in] */ DWORD grfRM);
  236. HRESULT ( STDMETHODCALLTYPE *ForgetRequest )(
  237. ITransactionLastResourceAsync * This,
  238. /* [in] */ XACTUOW *pNewUOW);
  239. END_INTERFACE
  240. } ITransactionLastResourceAsyncVtbl;
  241. interface ITransactionLastResourceAsync
  242. {
  243. CONST_VTBL struct ITransactionLastResourceAsyncVtbl *lpVtbl;
  244. };
  245. #ifdef COBJMACROS
  246. #define ITransactionLastResourceAsync_QueryInterface(This,riid,ppvObject) \
  247. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  248. #define ITransactionLastResourceAsync_AddRef(This) \
  249. (This)->lpVtbl -> AddRef(This)
  250. #define ITransactionLastResourceAsync_Release(This) \
  251. (This)->lpVtbl -> Release(This)
  252. #define ITransactionLastResourceAsync_DelegateCommit(This,grfRM) \
  253. (This)->lpVtbl -> DelegateCommit(This,grfRM)
  254. #define ITransactionLastResourceAsync_ForgetRequest(This,pNewUOW) \
  255. (This)->lpVtbl -> ForgetRequest(This,pNewUOW)
  256. #endif /* COBJMACROS */
  257. #endif /* C style interface */
  258. HRESULT STDMETHODCALLTYPE ITransactionLastResourceAsync_DelegateCommit_Proxy(
  259. ITransactionLastResourceAsync * This,
  260. /* [in] */ DWORD grfRM);
  261. void __RPC_STUB ITransactionLastResourceAsync_DelegateCommit_Stub(
  262. IRpcStubBuffer *This,
  263. IRpcChannelBuffer *_pRpcChannelBuffer,
  264. PRPC_MESSAGE _pRpcMessage,
  265. DWORD *_pdwStubPhase);
  266. HRESULT STDMETHODCALLTYPE ITransactionLastResourceAsync_ForgetRequest_Proxy(
  267. ITransactionLastResourceAsync * This,
  268. /* [in] */ XACTUOW *pNewUOW);
  269. void __RPC_STUB ITransactionLastResourceAsync_ForgetRequest_Stub(
  270. IRpcStubBuffer *This,
  271. IRpcChannelBuffer *_pRpcChannelBuffer,
  272. PRPC_MESSAGE _pRpcMessage,
  273. DWORD *_pdwStubPhase);
  274. #endif /* __ITransactionLastResourceAsync_INTERFACE_DEFINED__ */
  275. #ifndef __ITransactionResource_INTERFACE_DEFINED__
  276. #define __ITransactionResource_INTERFACE_DEFINED__
  277. /* interface ITransactionResource */
  278. /* [unique][uuid][object] */
  279. EXTERN_C const IID IID_ITransactionResource;
  280. #if defined(__cplusplus) && !defined(CINTERFACE)
  281. MIDL_INTERFACE("EE5FF7B3-4572-11d0-9452-00A0C905416E")
  282. ITransactionResource : public IUnknown
  283. {
  284. public:
  285. virtual HRESULT STDMETHODCALLTYPE PrepareRequest(
  286. /* [in] */ BOOL fRetaining,
  287. /* [in] */ DWORD grfRM,
  288. /* [in] */ BOOL fWantMoniker,
  289. /* [in] */ BOOL fSinglePhase) = 0;
  290. virtual HRESULT STDMETHODCALLTYPE CommitRequest(
  291. /* [in] */ DWORD grfRM,
  292. /* [unique][in] */ XACTUOW *pNewUOW) = 0;
  293. virtual HRESULT STDMETHODCALLTYPE AbortRequest(
  294. /* [unique][in] */ BOID *pboidReason,
  295. /* [in] */ BOOL fRetaining,
  296. /* [unique][in] */ XACTUOW *pNewUOW) = 0;
  297. virtual HRESULT STDMETHODCALLTYPE TMDown( void) = 0;
  298. };
  299. #else /* C style interface */
  300. typedef struct ITransactionResourceVtbl
  301. {
  302. BEGIN_INTERFACE
  303. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  304. ITransactionResource * This,
  305. /* [in] */ REFIID riid,
  306. /* [iid_is][out] */ void **ppvObject);
  307. ULONG ( STDMETHODCALLTYPE *AddRef )(
  308. ITransactionResource * This);
  309. ULONG ( STDMETHODCALLTYPE *Release )(
  310. ITransactionResource * This);
  311. HRESULT ( STDMETHODCALLTYPE *PrepareRequest )(
  312. ITransactionResource * This,
  313. /* [in] */ BOOL fRetaining,
  314. /* [in] */ DWORD grfRM,
  315. /* [in] */ BOOL fWantMoniker,
  316. /* [in] */ BOOL fSinglePhase);
  317. HRESULT ( STDMETHODCALLTYPE *CommitRequest )(
  318. ITransactionResource * This,
  319. /* [in] */ DWORD grfRM,
  320. /* [unique][in] */ XACTUOW *pNewUOW);
  321. HRESULT ( STDMETHODCALLTYPE *AbortRequest )(
  322. ITransactionResource * This,
  323. /* [unique][in] */ BOID *pboidReason,
  324. /* [in] */ BOOL fRetaining,
  325. /* [unique][in] */ XACTUOW *pNewUOW);
  326. HRESULT ( STDMETHODCALLTYPE *TMDown )(
  327. ITransactionResource * This);
  328. END_INTERFACE
  329. } ITransactionResourceVtbl;
  330. interface ITransactionResource
  331. {
  332. CONST_VTBL struct ITransactionResourceVtbl *lpVtbl;
  333. };
  334. #ifdef COBJMACROS
  335. #define ITransactionResource_QueryInterface(This,riid,ppvObject) \
  336. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  337. #define ITransactionResource_AddRef(This) \
  338. (This)->lpVtbl -> AddRef(This)
  339. #define ITransactionResource_Release(This) \
  340. (This)->lpVtbl -> Release(This)
  341. #define ITransactionResource_PrepareRequest(This,fRetaining,grfRM,fWantMoniker,fSinglePhase) \
  342. (This)->lpVtbl -> PrepareRequest(This,fRetaining,grfRM,fWantMoniker,fSinglePhase)
  343. #define ITransactionResource_CommitRequest(This,grfRM,pNewUOW) \
  344. (This)->lpVtbl -> CommitRequest(This,grfRM,pNewUOW)
  345. #define ITransactionResource_AbortRequest(This,pboidReason,fRetaining,pNewUOW) \
  346. (This)->lpVtbl -> AbortRequest(This,pboidReason,fRetaining,pNewUOW)
  347. #define ITransactionResource_TMDown(This) \
  348. (This)->lpVtbl -> TMDown(This)
  349. #endif /* COBJMACROS */
  350. #endif /* C style interface */
  351. HRESULT STDMETHODCALLTYPE ITransactionResource_PrepareRequest_Proxy(
  352. ITransactionResource * This,
  353. /* [in] */ BOOL fRetaining,
  354. /* [in] */ DWORD grfRM,
  355. /* [in] */ BOOL fWantMoniker,
  356. /* [in] */ BOOL fSinglePhase);
  357. void __RPC_STUB ITransactionResource_PrepareRequest_Stub(
  358. IRpcStubBuffer *This,
  359. IRpcChannelBuffer *_pRpcChannelBuffer,
  360. PRPC_MESSAGE _pRpcMessage,
  361. DWORD *_pdwStubPhase);
  362. HRESULT STDMETHODCALLTYPE ITransactionResource_CommitRequest_Proxy(
  363. ITransactionResource * This,
  364. /* [in] */ DWORD grfRM,
  365. /* [unique][in] */ XACTUOW *pNewUOW);
  366. void __RPC_STUB ITransactionResource_CommitRequest_Stub(
  367. IRpcStubBuffer *This,
  368. IRpcChannelBuffer *_pRpcChannelBuffer,
  369. PRPC_MESSAGE _pRpcMessage,
  370. DWORD *_pdwStubPhase);
  371. HRESULT STDMETHODCALLTYPE ITransactionResource_AbortRequest_Proxy(
  372. ITransactionResource * This,
  373. /* [unique][in] */ BOID *pboidReason,
  374. /* [in] */ BOOL fRetaining,
  375. /* [unique][in] */ XACTUOW *pNewUOW);
  376. void __RPC_STUB ITransactionResource_AbortRequest_Stub(
  377. IRpcStubBuffer *This,
  378. IRpcChannelBuffer *_pRpcChannelBuffer,
  379. PRPC_MESSAGE _pRpcMessage,
  380. DWORD *_pdwStubPhase);
  381. HRESULT STDMETHODCALLTYPE ITransactionResource_TMDown_Proxy(
  382. ITransactionResource * This);
  383. void __RPC_STUB ITransactionResource_TMDown_Stub(
  384. IRpcStubBuffer *This,
  385. IRpcChannelBuffer *_pRpcChannelBuffer,
  386. PRPC_MESSAGE _pRpcMessage,
  387. DWORD *_pdwStubPhase);
  388. #endif /* __ITransactionResource_INTERFACE_DEFINED__ */
  389. #ifndef __ITransactionEnlistmentAsync_INTERFACE_DEFINED__
  390. #define __ITransactionEnlistmentAsync_INTERFACE_DEFINED__
  391. /* interface ITransactionEnlistmentAsync */
  392. /* [unique][uuid][object] */
  393. EXTERN_C const IID IID_ITransactionEnlistmentAsync;
  394. #if defined(__cplusplus) && !defined(CINTERFACE)
  395. MIDL_INTERFACE("0fb15081-af41-11ce-bd2b-204c4f4f5020")
  396. ITransactionEnlistmentAsync : public IUnknown
  397. {
  398. public:
  399. virtual HRESULT STDMETHODCALLTYPE PrepareRequestDone(
  400. /* [in] */ HRESULT hr,
  401. /* [unique][in] */ IMoniker *pmk,
  402. /* [unique][in] */ BOID *pboidReason) = 0;
  403. virtual HRESULT STDMETHODCALLTYPE CommitRequestDone(
  404. /* [in] */ HRESULT hr) = 0;
  405. virtual HRESULT STDMETHODCALLTYPE AbortRequestDone(
  406. /* [in] */ HRESULT hr) = 0;
  407. };
  408. #else /* C style interface */
  409. typedef struct ITransactionEnlistmentAsyncVtbl
  410. {
  411. BEGIN_INTERFACE
  412. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  413. ITransactionEnlistmentAsync * This,
  414. /* [in] */ REFIID riid,
  415. /* [iid_is][out] */ void **ppvObject);
  416. ULONG ( STDMETHODCALLTYPE *AddRef )(
  417. ITransactionEnlistmentAsync * This);
  418. ULONG ( STDMETHODCALLTYPE *Release )(
  419. ITransactionEnlistmentAsync * This);
  420. HRESULT ( STDMETHODCALLTYPE *PrepareRequestDone )(
  421. ITransactionEnlistmentAsync * This,
  422. /* [in] */ HRESULT hr,
  423. /* [unique][in] */ IMoniker *pmk,
  424. /* [unique][in] */ BOID *pboidReason);
  425. HRESULT ( STDMETHODCALLTYPE *CommitRequestDone )(
  426. ITransactionEnlistmentAsync * This,
  427. /* [in] */ HRESULT hr);
  428. HRESULT ( STDMETHODCALLTYPE *AbortRequestDone )(
  429. ITransactionEnlistmentAsync * This,
  430. /* [in] */ HRESULT hr);
  431. END_INTERFACE
  432. } ITransactionEnlistmentAsyncVtbl;
  433. interface ITransactionEnlistmentAsync
  434. {
  435. CONST_VTBL struct ITransactionEnlistmentAsyncVtbl *lpVtbl;
  436. };
  437. #ifdef COBJMACROS
  438. #define ITransactionEnlistmentAsync_QueryInterface(This,riid,ppvObject) \
  439. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  440. #define ITransactionEnlistmentAsync_AddRef(This) \
  441. (This)->lpVtbl -> AddRef(This)
  442. #define ITransactionEnlistmentAsync_Release(This) \
  443. (This)->lpVtbl -> Release(This)
  444. #define ITransactionEnlistmentAsync_PrepareRequestDone(This,hr,pmk,pboidReason) \
  445. (This)->lpVtbl -> PrepareRequestDone(This,hr,pmk,pboidReason)
  446. #define ITransactionEnlistmentAsync_CommitRequestDone(This,hr) \
  447. (This)->lpVtbl -> CommitRequestDone(This,hr)
  448. #define ITransactionEnlistmentAsync_AbortRequestDone(This,hr) \
  449. (This)->lpVtbl -> AbortRequestDone(This,hr)
  450. #endif /* COBJMACROS */
  451. #endif /* C style interface */
  452. HRESULT STDMETHODCALLTYPE ITransactionEnlistmentAsync_PrepareRequestDone_Proxy(
  453. ITransactionEnlistmentAsync * This,
  454. /* [in] */ HRESULT hr,
  455. /* [unique][in] */ IMoniker *pmk,
  456. /* [unique][in] */ BOID *pboidReason);
  457. void __RPC_STUB ITransactionEnlistmentAsync_PrepareRequestDone_Stub(
  458. IRpcStubBuffer *This,
  459. IRpcChannelBuffer *_pRpcChannelBuffer,
  460. PRPC_MESSAGE _pRpcMessage,
  461. DWORD *_pdwStubPhase);
  462. HRESULT STDMETHODCALLTYPE ITransactionEnlistmentAsync_CommitRequestDone_Proxy(
  463. ITransactionEnlistmentAsync * This,
  464. /* [in] */ HRESULT hr);
  465. void __RPC_STUB ITransactionEnlistmentAsync_CommitRequestDone_Stub(
  466. IRpcStubBuffer *This,
  467. IRpcChannelBuffer *_pRpcChannelBuffer,
  468. PRPC_MESSAGE _pRpcMessage,
  469. DWORD *_pdwStubPhase);
  470. HRESULT STDMETHODCALLTYPE ITransactionEnlistmentAsync_AbortRequestDone_Proxy(
  471. ITransactionEnlistmentAsync * This,
  472. /* [in] */ HRESULT hr);
  473. void __RPC_STUB ITransactionEnlistmentAsync_AbortRequestDone_Stub(
  474. IRpcStubBuffer *This,
  475. IRpcChannelBuffer *_pRpcChannelBuffer,
  476. PRPC_MESSAGE _pRpcMessage,
  477. DWORD *_pdwStubPhase);
  478. #endif /* __ITransactionEnlistmentAsync_INTERFACE_DEFINED__ */
  479. #ifndef __ITransactionLastEnlistmentAsync_INTERFACE_DEFINED__
  480. #define __ITransactionLastEnlistmentAsync_INTERFACE_DEFINED__
  481. /* interface ITransactionLastEnlistmentAsync */
  482. /* [unique][uuid][object] */
  483. EXTERN_C const IID IID_ITransactionLastEnlistmentAsync;
  484. #if defined(__cplusplus) && !defined(CINTERFACE)
  485. MIDL_INTERFACE("C82BD533-5B30-11d3-8A91-00C04F79EB6D")
  486. ITransactionLastEnlistmentAsync : public IUnknown
  487. {
  488. public:
  489. virtual HRESULT STDMETHODCALLTYPE TransactionOutcome(
  490. /* [in] */ XACTSTAT XactStat,
  491. /* [unique][in] */ BOID *pboidReason) = 0;
  492. };
  493. #else /* C style interface */
  494. typedef struct ITransactionLastEnlistmentAsyncVtbl
  495. {
  496. BEGIN_INTERFACE
  497. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  498. ITransactionLastEnlistmentAsync * This,
  499. /* [in] */ REFIID riid,
  500. /* [iid_is][out] */ void **ppvObject);
  501. ULONG ( STDMETHODCALLTYPE *AddRef )(
  502. ITransactionLastEnlistmentAsync * This);
  503. ULONG ( STDMETHODCALLTYPE *Release )(
  504. ITransactionLastEnlistmentAsync * This);
  505. HRESULT ( STDMETHODCALLTYPE *TransactionOutcome )(
  506. ITransactionLastEnlistmentAsync * This,
  507. /* [in] */ XACTSTAT XactStat,
  508. /* [unique][in] */ BOID *pboidReason);
  509. END_INTERFACE
  510. } ITransactionLastEnlistmentAsyncVtbl;
  511. interface ITransactionLastEnlistmentAsync
  512. {
  513. CONST_VTBL struct ITransactionLastEnlistmentAsyncVtbl *lpVtbl;
  514. };
  515. #ifdef COBJMACROS
  516. #define ITransactionLastEnlistmentAsync_QueryInterface(This,riid,ppvObject) \
  517. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  518. #define ITransactionLastEnlistmentAsync_AddRef(This) \
  519. (This)->lpVtbl -> AddRef(This)
  520. #define ITransactionLastEnlistmentAsync_Release(This) \
  521. (This)->lpVtbl -> Release(This)
  522. #define ITransactionLastEnlistmentAsync_TransactionOutcome(This,XactStat,pboidReason) \
  523. (This)->lpVtbl -> TransactionOutcome(This,XactStat,pboidReason)
  524. #endif /* COBJMACROS */
  525. #endif /* C style interface */
  526. HRESULT STDMETHODCALLTYPE ITransactionLastEnlistmentAsync_TransactionOutcome_Proxy(
  527. ITransactionLastEnlistmentAsync * This,
  528. /* [in] */ XACTSTAT XactStat,
  529. /* [unique][in] */ BOID *pboidReason);
  530. void __RPC_STUB ITransactionLastEnlistmentAsync_TransactionOutcome_Stub(
  531. IRpcStubBuffer *This,
  532. IRpcChannelBuffer *_pRpcChannelBuffer,
  533. PRPC_MESSAGE _pRpcMessage,
  534. DWORD *_pdwStubPhase);
  535. #endif /* __ITransactionLastEnlistmentAsync_INTERFACE_DEFINED__ */
  536. #ifndef __ITransactionExportFactory_INTERFACE_DEFINED__
  537. #define __ITransactionExportFactory_INTERFACE_DEFINED__
  538. /* interface ITransactionExportFactory */
  539. /* [unique][uuid][object] */
  540. EXTERN_C const IID IID_ITransactionExportFactory;
  541. #if defined(__cplusplus) && !defined(CINTERFACE)
  542. MIDL_INTERFACE("E1CF9B53-8745-11ce-A9BA-00AA006C3706")
  543. ITransactionExportFactory : public IUnknown
  544. {
  545. public:
  546. virtual HRESULT STDMETHODCALLTYPE GetRemoteClassId(
  547. /* [out] */ CLSID *pclsid) = 0;
  548. virtual HRESULT STDMETHODCALLTYPE Create(
  549. /* [in] */ ULONG cbWhereabouts,
  550. /* [size_is][in] */ byte *rgbWhereabouts,
  551. /* [out] */ ITransactionExport **ppExport) = 0;
  552. };
  553. #else /* C style interface */
  554. typedef struct ITransactionExportFactoryVtbl
  555. {
  556. BEGIN_INTERFACE
  557. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  558. ITransactionExportFactory * This,
  559. /* [in] */ REFIID riid,
  560. /* [iid_is][out] */ void **ppvObject);
  561. ULONG ( STDMETHODCALLTYPE *AddRef )(
  562. ITransactionExportFactory * This);
  563. ULONG ( STDMETHODCALLTYPE *Release )(
  564. ITransactionExportFactory * This);
  565. HRESULT ( STDMETHODCALLTYPE *GetRemoteClassId )(
  566. ITransactionExportFactory * This,
  567. /* [out] */ CLSID *pclsid);
  568. HRESULT ( STDMETHODCALLTYPE *Create )(
  569. ITransactionExportFactory * This,
  570. /* [in] */ ULONG cbWhereabouts,
  571. /* [size_is][in] */ byte *rgbWhereabouts,
  572. /* [out] */ ITransactionExport **ppExport);
  573. END_INTERFACE
  574. } ITransactionExportFactoryVtbl;
  575. interface ITransactionExportFactory
  576. {
  577. CONST_VTBL struct ITransactionExportFactoryVtbl *lpVtbl;
  578. };
  579. #ifdef COBJMACROS
  580. #define ITransactionExportFactory_QueryInterface(This,riid,ppvObject) \
  581. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  582. #define ITransactionExportFactory_AddRef(This) \
  583. (This)->lpVtbl -> AddRef(This)
  584. #define ITransactionExportFactory_Release(This) \
  585. (This)->lpVtbl -> Release(This)
  586. #define ITransactionExportFactory_GetRemoteClassId(This,pclsid) \
  587. (This)->lpVtbl -> GetRemoteClassId(This,pclsid)
  588. #define ITransactionExportFactory_Create(This,cbWhereabouts,rgbWhereabouts,ppExport) \
  589. (This)->lpVtbl -> Create(This,cbWhereabouts,rgbWhereabouts,ppExport)
  590. #endif /* COBJMACROS */
  591. #endif /* C style interface */
  592. HRESULT STDMETHODCALLTYPE ITransactionExportFactory_GetRemoteClassId_Proxy(
  593. ITransactionExportFactory * This,
  594. /* [out] */ CLSID *pclsid);
  595. void __RPC_STUB ITransactionExportFactory_GetRemoteClassId_Stub(
  596. IRpcStubBuffer *This,
  597. IRpcChannelBuffer *_pRpcChannelBuffer,
  598. PRPC_MESSAGE _pRpcMessage,
  599. DWORD *_pdwStubPhase);
  600. HRESULT STDMETHODCALLTYPE ITransactionExportFactory_Create_Proxy(
  601. ITransactionExportFactory * This,
  602. /* [in] */ ULONG cbWhereabouts,
  603. /* [size_is][in] */ byte *rgbWhereabouts,
  604. /* [out] */ ITransactionExport **ppExport);
  605. void __RPC_STUB ITransactionExportFactory_Create_Stub(
  606. IRpcStubBuffer *This,
  607. IRpcChannelBuffer *_pRpcChannelBuffer,
  608. PRPC_MESSAGE _pRpcMessage,
  609. DWORD *_pdwStubPhase);
  610. #endif /* __ITransactionExportFactory_INTERFACE_DEFINED__ */
  611. #ifndef __ITransactionImportWhereabouts_INTERFACE_DEFINED__
  612. #define __ITransactionImportWhereabouts_INTERFACE_DEFINED__
  613. /* interface ITransactionImportWhereabouts */
  614. /* [unique][uuid][object] */
  615. EXTERN_C const IID IID_ITransactionImportWhereabouts;
  616. #if defined(__cplusplus) && !defined(CINTERFACE)
  617. MIDL_INTERFACE("0141fda4-8fc0-11ce-bd18-204c4f4f5020")
  618. ITransactionImportWhereabouts : public IUnknown
  619. {
  620. public:
  621. virtual HRESULT STDMETHODCALLTYPE GetWhereaboutsSize(
  622. /* [out] */ ULONG *pcbWhereabouts) = 0;
  623. virtual /* [local] */ HRESULT STDMETHODCALLTYPE GetWhereabouts(
  624. /* [in] */ ULONG cbWhereabouts,
  625. /* [size_is][out] */ byte *rgbWhereabouts,
  626. /* [out] */ ULONG *pcbUsed) = 0;
  627. };
  628. #else /* C style interface */
  629. typedef struct ITransactionImportWhereaboutsVtbl
  630. {
  631. BEGIN_INTERFACE
  632. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  633. ITransactionImportWhereabouts * This,
  634. /* [in] */ REFIID riid,
  635. /* [iid_is][out] */ void **ppvObject);
  636. ULONG ( STDMETHODCALLTYPE *AddRef )(
  637. ITransactionImportWhereabouts * This);
  638. ULONG ( STDMETHODCALLTYPE *Release )(
  639. ITransactionImportWhereabouts * This);
  640. HRESULT ( STDMETHODCALLTYPE *GetWhereaboutsSize )(
  641. ITransactionImportWhereabouts * This,
  642. /* [out] */ ULONG *pcbWhereabouts);
  643. /* [local] */ HRESULT ( STDMETHODCALLTYPE *GetWhereabouts )(
  644. ITransactionImportWhereabouts * This,
  645. /* [in] */ ULONG cbWhereabouts,
  646. /* [size_is][out] */ byte *rgbWhereabouts,
  647. /* [out] */ ULONG *pcbUsed);
  648. END_INTERFACE
  649. } ITransactionImportWhereaboutsVtbl;
  650. interface ITransactionImportWhereabouts
  651. {
  652. CONST_VTBL struct ITransactionImportWhereaboutsVtbl *lpVtbl;
  653. };
  654. #ifdef COBJMACROS
  655. #define ITransactionImportWhereabouts_QueryInterface(This,riid,ppvObject) \
  656. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  657. #define ITransactionImportWhereabouts_AddRef(This) \
  658. (This)->lpVtbl -> AddRef(This)
  659. #define ITransactionImportWhereabouts_Release(This) \
  660. (This)->lpVtbl -> Release(This)
  661. #define ITransactionImportWhereabouts_GetWhereaboutsSize(This,pcbWhereabouts) \
  662. (This)->lpVtbl -> GetWhereaboutsSize(This,pcbWhereabouts)
  663. #define ITransactionImportWhereabouts_GetWhereabouts(This,cbWhereabouts,rgbWhereabouts,pcbUsed) \
  664. (This)->lpVtbl -> GetWhereabouts(This,cbWhereabouts,rgbWhereabouts,pcbUsed)
  665. #endif /* COBJMACROS */
  666. #endif /* C style interface */
  667. HRESULT STDMETHODCALLTYPE ITransactionImportWhereabouts_GetWhereaboutsSize_Proxy(
  668. ITransactionImportWhereabouts * This,
  669. /* [out] */ ULONG *pcbWhereabouts);
  670. void __RPC_STUB ITransactionImportWhereabouts_GetWhereaboutsSize_Stub(
  671. IRpcStubBuffer *This,
  672. IRpcChannelBuffer *_pRpcChannelBuffer,
  673. PRPC_MESSAGE _pRpcMessage,
  674. DWORD *_pdwStubPhase);
  675. /* [call_as] */ HRESULT STDMETHODCALLTYPE ITransactionImportWhereabouts_RemoteGetWhereabouts_Proxy(
  676. ITransactionImportWhereabouts * This,
  677. /* [out] */ ULONG *pcbUsed,
  678. /* [in] */ ULONG cbWhereabouts,
  679. /* [length_is][size_is][out] */ byte *rgbWhereabouts);
  680. void __RPC_STUB ITransactionImportWhereabouts_RemoteGetWhereabouts_Stub(
  681. IRpcStubBuffer *This,
  682. IRpcChannelBuffer *_pRpcChannelBuffer,
  683. PRPC_MESSAGE _pRpcMessage,
  684. DWORD *_pdwStubPhase);
  685. #endif /* __ITransactionImportWhereabouts_INTERFACE_DEFINED__ */
  686. #ifndef __ITransactionExport_INTERFACE_DEFINED__
  687. #define __ITransactionExport_INTERFACE_DEFINED__
  688. /* interface ITransactionExport */
  689. /* [unique][uuid][object] */
  690. EXTERN_C const IID IID_ITransactionExport;
  691. #if defined(__cplusplus) && !defined(CINTERFACE)
  692. MIDL_INTERFACE("0141fda5-8fc0-11ce-bd18-204c4f4f5020")
  693. ITransactionExport : public IUnknown
  694. {
  695. public:
  696. virtual HRESULT STDMETHODCALLTYPE Export(
  697. /* [in] */ IUnknown *punkTransaction,
  698. /* [out] */ ULONG *pcbTransactionCookie) = 0;
  699. virtual /* [local] */ HRESULT STDMETHODCALLTYPE GetTransactionCookie(
  700. /* [in] */ IUnknown *punkTransaction,
  701. /* [in] */ ULONG cbTransactionCookie,
  702. /* [size_is][out] */ byte *rgbTransactionCookie,
  703. /* [out] */ ULONG *pcbUsed) = 0;
  704. };
  705. #else /* C style interface */
  706. typedef struct ITransactionExportVtbl
  707. {
  708. BEGIN_INTERFACE
  709. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  710. ITransactionExport * This,
  711. /* [in] */ REFIID riid,
  712. /* [iid_is][out] */ void **ppvObject);
  713. ULONG ( STDMETHODCALLTYPE *AddRef )(
  714. ITransactionExport * This);
  715. ULONG ( STDMETHODCALLTYPE *Release )(
  716. ITransactionExport * This);
  717. HRESULT ( STDMETHODCALLTYPE *Export )(
  718. ITransactionExport * This,
  719. /* [in] */ IUnknown *punkTransaction,
  720. /* [out] */ ULONG *pcbTransactionCookie);
  721. /* [local] */ HRESULT ( STDMETHODCALLTYPE *GetTransactionCookie )(
  722. ITransactionExport * This,
  723. /* [in] */ IUnknown *punkTransaction,
  724. /* [in] */ ULONG cbTransactionCookie,
  725. /* [size_is][out] */ byte *rgbTransactionCookie,
  726. /* [out] */ ULONG *pcbUsed);
  727. END_INTERFACE
  728. } ITransactionExportVtbl;
  729. interface ITransactionExport
  730. {
  731. CONST_VTBL struct ITransactionExportVtbl *lpVtbl;
  732. };
  733. #ifdef COBJMACROS
  734. #define ITransactionExport_QueryInterface(This,riid,ppvObject) \
  735. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  736. #define ITransactionExport_AddRef(This) \
  737. (This)->lpVtbl -> AddRef(This)
  738. #define ITransactionExport_Release(This) \
  739. (This)->lpVtbl -> Release(This)
  740. #define ITransactionExport_Export(This,punkTransaction,pcbTransactionCookie) \
  741. (This)->lpVtbl -> Export(This,punkTransaction,pcbTransactionCookie)
  742. #define ITransactionExport_GetTransactionCookie(This,punkTransaction,cbTransactionCookie,rgbTransactionCookie,pcbUsed) \
  743. (This)->lpVtbl -> GetTransactionCookie(This,punkTransaction,cbTransactionCookie,rgbTransactionCookie,pcbUsed)
  744. #endif /* COBJMACROS */
  745. #endif /* C style interface */
  746. HRESULT STDMETHODCALLTYPE ITransactionExport_Export_Proxy(
  747. ITransactionExport * This,
  748. /* [in] */ IUnknown *punkTransaction,
  749. /* [out] */ ULONG *pcbTransactionCookie);
  750. void __RPC_STUB ITransactionExport_Export_Stub(
  751. IRpcStubBuffer *This,
  752. IRpcChannelBuffer *_pRpcChannelBuffer,
  753. PRPC_MESSAGE _pRpcMessage,
  754. DWORD *_pdwStubPhase);
  755. /* [call_as] */ HRESULT STDMETHODCALLTYPE ITransactionExport_RemoteGetTransactionCookie_Proxy(
  756. ITransactionExport * This,
  757. /* [in] */ IUnknown *punkTransaction,
  758. /* [out] */ ULONG *pcbUsed,
  759. /* [in] */ ULONG cbTransactionCookie,
  760. /* [length_is][size_is][out] */ byte *rgbTransactionCookie);
  761. void __RPC_STUB ITransactionExport_RemoteGetTransactionCookie_Stub(
  762. IRpcStubBuffer *This,
  763. IRpcChannelBuffer *_pRpcChannelBuffer,
  764. PRPC_MESSAGE _pRpcMessage,
  765. DWORD *_pdwStubPhase);
  766. #endif /* __ITransactionExport_INTERFACE_DEFINED__ */
  767. #ifndef __ITransactionImport_INTERFACE_DEFINED__
  768. #define __ITransactionImport_INTERFACE_DEFINED__
  769. /* interface ITransactionImport */
  770. /* [unique][uuid][object] */
  771. EXTERN_C const IID IID_ITransactionImport;
  772. #if defined(__cplusplus) && !defined(CINTERFACE)
  773. MIDL_INTERFACE("E1CF9B5A-8745-11ce-A9BA-00AA006C3706")
  774. ITransactionImport : public IUnknown
  775. {
  776. public:
  777. virtual HRESULT STDMETHODCALLTYPE Import(
  778. /* [in] */ ULONG cbTransactionCookie,
  779. /* [size_is][in] */ byte *rgbTransactionCookie,
  780. /* [in] */ IID *piid,
  781. /* [iid_is][out] */ void **ppvTransaction) = 0;
  782. };
  783. #else /* C style interface */
  784. typedef struct ITransactionImportVtbl
  785. {
  786. BEGIN_INTERFACE
  787. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  788. ITransactionImport * This,
  789. /* [in] */ REFIID riid,
  790. /* [iid_is][out] */ void **ppvObject);
  791. ULONG ( STDMETHODCALLTYPE *AddRef )(
  792. ITransactionImport * This);
  793. ULONG ( STDMETHODCALLTYPE *Release )(
  794. ITransactionImport * This);
  795. HRESULT ( STDMETHODCALLTYPE *Import )(
  796. ITransactionImport * This,
  797. /* [in] */ ULONG cbTransactionCookie,
  798. /* [size_is][in] */ byte *rgbTransactionCookie,
  799. /* [in] */ IID *piid,
  800. /* [iid_is][out] */ void **ppvTransaction);
  801. END_INTERFACE
  802. } ITransactionImportVtbl;
  803. interface ITransactionImport
  804. {
  805. CONST_VTBL struct ITransactionImportVtbl *lpVtbl;
  806. };
  807. #ifdef COBJMACROS
  808. #define ITransactionImport_QueryInterface(This,riid,ppvObject) \
  809. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  810. #define ITransactionImport_AddRef(This) \
  811. (This)->lpVtbl -> AddRef(This)
  812. #define ITransactionImport_Release(This) \
  813. (This)->lpVtbl -> Release(This)
  814. #define ITransactionImport_Import(This,cbTransactionCookie,rgbTransactionCookie,piid,ppvTransaction) \
  815. (This)->lpVtbl -> Import(This,cbTransactionCookie,rgbTransactionCookie,piid,ppvTransaction)
  816. #endif /* COBJMACROS */
  817. #endif /* C style interface */
  818. HRESULT STDMETHODCALLTYPE ITransactionImport_Import_Proxy(
  819. ITransactionImport * This,
  820. /* [in] */ ULONG cbTransactionCookie,
  821. /* [size_is][in] */ byte *rgbTransactionCookie,
  822. /* [in] */ IID *piid,
  823. /* [iid_is][out] */ void **ppvTransaction);
  824. void __RPC_STUB ITransactionImport_Import_Stub(
  825. IRpcStubBuffer *This,
  826. IRpcChannelBuffer *_pRpcChannelBuffer,
  827. PRPC_MESSAGE _pRpcMessage,
  828. DWORD *_pdwStubPhase);
  829. #endif /* __ITransactionImport_INTERFACE_DEFINED__ */
  830. #ifndef __ITipTransaction_INTERFACE_DEFINED__
  831. #define __ITipTransaction_INTERFACE_DEFINED__
  832. /* interface ITipTransaction */
  833. /* [unique][uuid][object] */
  834. EXTERN_C const IID IID_ITipTransaction;
  835. #if defined(__cplusplus) && !defined(CINTERFACE)
  836. MIDL_INTERFACE("17CF72D0-BAC5-11d1-B1BF-00C04FC2F3EF")
  837. ITipTransaction : public IUnknown
  838. {
  839. public:
  840. virtual HRESULT STDMETHODCALLTYPE Push(
  841. /* [in] */ char *i_pszRemoteTmUrl,
  842. /* [out] */ char **o_ppszRemoteTxUrl) = 0;
  843. virtual HRESULT STDMETHODCALLTYPE GetTransactionUrl(
  844. /* [out] */ char **o_ppszLocalTxUrl) = 0;
  845. };
  846. #else /* C style interface */
  847. typedef struct ITipTransactionVtbl
  848. {
  849. BEGIN_INTERFACE
  850. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  851. ITipTransaction * This,
  852. /* [in] */ REFIID riid,
  853. /* [iid_is][out] */ void **ppvObject);
  854. ULONG ( STDMETHODCALLTYPE *AddRef )(
  855. ITipTransaction * This);
  856. ULONG ( STDMETHODCALLTYPE *Release )(
  857. ITipTransaction * This);
  858. HRESULT ( STDMETHODCALLTYPE *Push )(
  859. ITipTransaction * This,
  860. /* [in] */ char *i_pszRemoteTmUrl,
  861. /* [out] */ char **o_ppszRemoteTxUrl);
  862. HRESULT ( STDMETHODCALLTYPE *GetTransactionUrl )(
  863. ITipTransaction * This,
  864. /* [out] */ char **o_ppszLocalTxUrl);
  865. END_INTERFACE
  866. } ITipTransactionVtbl;
  867. interface ITipTransaction
  868. {
  869. CONST_VTBL struct ITipTransactionVtbl *lpVtbl;
  870. };
  871. #ifdef COBJMACROS
  872. #define ITipTransaction_QueryInterface(This,riid,ppvObject) \
  873. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  874. #define ITipTransaction_AddRef(This) \
  875. (This)->lpVtbl -> AddRef(This)
  876. #define ITipTransaction_Release(This) \
  877. (This)->lpVtbl -> Release(This)
  878. #define ITipTransaction_Push(This,i_pszRemoteTmUrl,o_ppszRemoteTxUrl) \
  879. (This)->lpVtbl -> Push(This,i_pszRemoteTmUrl,o_ppszRemoteTxUrl)
  880. #define ITipTransaction_GetTransactionUrl(This,o_ppszLocalTxUrl) \
  881. (This)->lpVtbl -> GetTransactionUrl(This,o_ppszLocalTxUrl)
  882. #endif /* COBJMACROS */
  883. #endif /* C style interface */
  884. HRESULT STDMETHODCALLTYPE ITipTransaction_Push_Proxy(
  885. ITipTransaction * This,
  886. /* [in] */ char *i_pszRemoteTmUrl,
  887. /* [out] */ char **o_ppszRemoteTxUrl);
  888. void __RPC_STUB ITipTransaction_Push_Stub(
  889. IRpcStubBuffer *This,
  890. IRpcChannelBuffer *_pRpcChannelBuffer,
  891. PRPC_MESSAGE _pRpcMessage,
  892. DWORD *_pdwStubPhase);
  893. HRESULT STDMETHODCALLTYPE ITipTransaction_GetTransactionUrl_Proxy(
  894. ITipTransaction * This,
  895. /* [out] */ char **o_ppszLocalTxUrl);
  896. void __RPC_STUB ITipTransaction_GetTransactionUrl_Stub(
  897. IRpcStubBuffer *This,
  898. IRpcChannelBuffer *_pRpcChannelBuffer,
  899. PRPC_MESSAGE _pRpcMessage,
  900. DWORD *_pdwStubPhase);
  901. #endif /* __ITipTransaction_INTERFACE_DEFINED__ */
  902. #ifndef __ITipHelper_INTERFACE_DEFINED__
  903. #define __ITipHelper_INTERFACE_DEFINED__
  904. /* interface ITipHelper */
  905. /* [unique][uuid][object] */
  906. EXTERN_C const IID IID_ITipHelper;
  907. #if defined(__cplusplus) && !defined(CINTERFACE)
  908. MIDL_INTERFACE("17CF72D1-BAC5-11d1-B1BF-00C04FC2F3EF")
  909. ITipHelper : public IUnknown
  910. {
  911. public:
  912. virtual HRESULT STDMETHODCALLTYPE Pull(
  913. /* [in] */ char *i_pszTxUrl,
  914. /* [out] */ ITransaction **o_ppITransaction) = 0;
  915. virtual HRESULT STDMETHODCALLTYPE PullAsync(
  916. /* [in] */ char *i_pszTxUrl,
  917. /* [in] */ ITipPullSink *i_pTipPullSink,
  918. /* [out] */ ITransaction **o_ppITransaction) = 0;
  919. virtual HRESULT STDMETHODCALLTYPE GetLocalTmUrl(
  920. /* [out] */ char **o_ppszLocalTmUrl) = 0;
  921. };
  922. #else /* C style interface */
  923. typedef struct ITipHelperVtbl
  924. {
  925. BEGIN_INTERFACE
  926. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  927. ITipHelper * This,
  928. /* [in] */ REFIID riid,
  929. /* [iid_is][out] */ void **ppvObject);
  930. ULONG ( STDMETHODCALLTYPE *AddRef )(
  931. ITipHelper * This);
  932. ULONG ( STDMETHODCALLTYPE *Release )(
  933. ITipHelper * This);
  934. HRESULT ( STDMETHODCALLTYPE *Pull )(
  935. ITipHelper * This,
  936. /* [in] */ char *i_pszTxUrl,
  937. /* [out] */ ITransaction **o_ppITransaction);
  938. HRESULT ( STDMETHODCALLTYPE *PullAsync )(
  939. ITipHelper * This,
  940. /* [in] */ char *i_pszTxUrl,
  941. /* [in] */ ITipPullSink *i_pTipPullSink,
  942. /* [out] */ ITransaction **o_ppITransaction);
  943. HRESULT ( STDMETHODCALLTYPE *GetLocalTmUrl )(
  944. ITipHelper * This,
  945. /* [out] */ char **o_ppszLocalTmUrl);
  946. END_INTERFACE
  947. } ITipHelperVtbl;
  948. interface ITipHelper
  949. {
  950. CONST_VTBL struct ITipHelperVtbl *lpVtbl;
  951. };
  952. #ifdef COBJMACROS
  953. #define ITipHelper_QueryInterface(This,riid,ppvObject) \
  954. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  955. #define ITipHelper_AddRef(This) \
  956. (This)->lpVtbl -> AddRef(This)
  957. #define ITipHelper_Release(This) \
  958. (This)->lpVtbl -> Release(This)
  959. #define ITipHelper_Pull(This,i_pszTxUrl,o_ppITransaction) \
  960. (This)->lpVtbl -> Pull(This,i_pszTxUrl,o_ppITransaction)
  961. #define ITipHelper_PullAsync(This,i_pszTxUrl,i_pTipPullSink,o_ppITransaction) \
  962. (This)->lpVtbl -> PullAsync(This,i_pszTxUrl,i_pTipPullSink,o_ppITransaction)
  963. #define ITipHelper_GetLocalTmUrl(This,o_ppszLocalTmUrl) \
  964. (This)->lpVtbl -> GetLocalTmUrl(This,o_ppszLocalTmUrl)
  965. #endif /* COBJMACROS */
  966. #endif /* C style interface */
  967. HRESULT STDMETHODCALLTYPE ITipHelper_Pull_Proxy(
  968. ITipHelper * This,
  969. /* [in] */ char *i_pszTxUrl,
  970. /* [out] */ ITransaction **o_ppITransaction);
  971. void __RPC_STUB ITipHelper_Pull_Stub(
  972. IRpcStubBuffer *This,
  973. IRpcChannelBuffer *_pRpcChannelBuffer,
  974. PRPC_MESSAGE _pRpcMessage,
  975. DWORD *_pdwStubPhase);
  976. HRESULT STDMETHODCALLTYPE ITipHelper_PullAsync_Proxy(
  977. ITipHelper * This,
  978. /* [in] */ char *i_pszTxUrl,
  979. /* [in] */ ITipPullSink *i_pTipPullSink,
  980. /* [out] */ ITransaction **o_ppITransaction);
  981. void __RPC_STUB ITipHelper_PullAsync_Stub(
  982. IRpcStubBuffer *This,
  983. IRpcChannelBuffer *_pRpcChannelBuffer,
  984. PRPC_MESSAGE _pRpcMessage,
  985. DWORD *_pdwStubPhase);
  986. HRESULT STDMETHODCALLTYPE ITipHelper_GetLocalTmUrl_Proxy(
  987. ITipHelper * This,
  988. /* [out] */ char **o_ppszLocalTmUrl);
  989. void __RPC_STUB ITipHelper_GetLocalTmUrl_Stub(
  990. IRpcStubBuffer *This,
  991. IRpcChannelBuffer *_pRpcChannelBuffer,
  992. PRPC_MESSAGE _pRpcMessage,
  993. DWORD *_pdwStubPhase);
  994. #endif /* __ITipHelper_INTERFACE_DEFINED__ */
  995. #ifndef __ITipPullSink_INTERFACE_DEFINED__
  996. #define __ITipPullSink_INTERFACE_DEFINED__
  997. /* interface ITipPullSink */
  998. /* [unique][uuid][object] */
  999. EXTERN_C const IID IID_ITipPullSink;
  1000. #if defined(__cplusplus) && !defined(CINTERFACE)
  1001. MIDL_INTERFACE("17CF72D2-BAC5-11d1-B1BF-00C04FC2F3EF")
  1002. ITipPullSink : public IUnknown
  1003. {
  1004. public:
  1005. virtual HRESULT STDMETHODCALLTYPE PullComplete(
  1006. /* [in] */ HRESULT i_hrPull) = 0;
  1007. };
  1008. #else /* C style interface */
  1009. typedef struct ITipPullSinkVtbl
  1010. {
  1011. BEGIN_INTERFACE
  1012. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  1013. ITipPullSink * This,
  1014. /* [in] */ REFIID riid,
  1015. /* [iid_is][out] */ void **ppvObject);
  1016. ULONG ( STDMETHODCALLTYPE *AddRef )(
  1017. ITipPullSink * This);
  1018. ULONG ( STDMETHODCALLTYPE *Release )(
  1019. ITipPullSink * This);
  1020. HRESULT ( STDMETHODCALLTYPE *PullComplete )(
  1021. ITipPullSink * This,
  1022. /* [in] */ HRESULT i_hrPull);
  1023. END_INTERFACE
  1024. } ITipPullSinkVtbl;
  1025. interface ITipPullSink
  1026. {
  1027. CONST_VTBL struct ITipPullSinkVtbl *lpVtbl;
  1028. };
  1029. #ifdef COBJMACROS
  1030. #define ITipPullSink_QueryInterface(This,riid,ppvObject) \
  1031. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  1032. #define ITipPullSink_AddRef(This) \
  1033. (This)->lpVtbl -> AddRef(This)
  1034. #define ITipPullSink_Release(This) \
  1035. (This)->lpVtbl -> Release(This)
  1036. #define ITipPullSink_PullComplete(This,i_hrPull) \
  1037. (This)->lpVtbl -> PullComplete(This,i_hrPull)
  1038. #endif /* COBJMACROS */
  1039. #endif /* C style interface */
  1040. HRESULT STDMETHODCALLTYPE ITipPullSink_PullComplete_Proxy(
  1041. ITipPullSink * This,
  1042. /* [in] */ HRESULT i_hrPull);
  1043. void __RPC_STUB ITipPullSink_PullComplete_Stub(
  1044. IRpcStubBuffer *This,
  1045. IRpcChannelBuffer *_pRpcChannelBuffer,
  1046. PRPC_MESSAGE _pRpcMessage,
  1047. DWORD *_pdwStubPhase);
  1048. #endif /* __ITipPullSink_INTERFACE_DEFINED__ */
  1049. /* interface __MIDL_itf_txcoord_0104 */
  1050. /* [local] */
  1051. #if _MSC_VER < 1100 || !defined(__cplusplus)
  1052. DEFINE_GUID(IID_ITransactionResourceAsync, 0x69E971F0, 0x23CE, 0x11cf, 0xAD, 0x60, 0x00, 0xAA, 0x00, 0xA7, 0x4C, 0xCD);
  1053. DEFINE_GUID(IID_ITransactionLastResourceAsync, 0xC82BD532, 0x5B30, 0x11D3, 0x8A, 0x91, 0x00, 0xC0, 0x4F, 0x79, 0xEB, 0x6D);
  1054. DEFINE_GUID(IID_ITransactionResource, 0xEE5FF7B3, 0x4572, 0x11d0, 0x94, 0x52, 0x00, 0xA0, 0xC9, 0x05, 0x41, 0x6E);
  1055. DEFINE_GUID(IID_ITransactionEnlistmentAsync, 0x0fb15081, 0xaf41, 0x11ce, 0xbd, 0x2b, 0x20, 0x4c, 0x4f, 0x4f, 0x50, 0x20);
  1056. DEFINE_GUID(IID_ITransactionLastEnlistmentAsync, 0xC82BD533, 0x5B30, 0x11D3, 0x8A, 0x91, 0x00, 0xC0, 0x4F, 0x79, 0xEB, 0x6D);
  1057. DEFINE_GUID(IID_ITransactionExportFactory, 0xE1CF9B53, 0x8745, 0x11ce, 0xA9, 0xBA, 0x00, 0xAA, 0x00, 0x6C, 0x37, 0x06);
  1058. DEFINE_GUID(IID_ITransactionImportWhereabouts, 0x0141fda4, 0x8fc0, 0x11ce, 0xbd, 0x18, 0x20, 0x4c, 0x4f, 0x4f, 0x50, 0x20);
  1059. DEFINE_GUID(IID_ITransactionExport, 0x0141fda5, 0x8fc0, 0x11ce, 0xbd, 0x18, 0x20, 0x4c, 0x4f, 0x4f, 0x50, 0x20);
  1060. DEFINE_GUID(IID_ITransactionImport, 0xE1CF9B5A, 0x8745, 0x11ce, 0xA9, 0xBA, 0x00, 0xAA, 0x00, 0x6C, 0x37, 0x06);
  1061. DEFINE_GUID(IID_ITipTransaction, 0x17cf72d0, 0xbac5, 0x11d1, 0xb1, 0xbf, 0x0, 0xc0, 0x4f, 0xc2, 0xf3, 0xef);
  1062. DEFINE_GUID(IID_ITipHelper, 0x17cf72d1, 0xbac5, 0x11d1, 0xb1, 0xbf, 0x0, 0xc0, 0x4f, 0xc2, 0xf3, 0xef);
  1063. DEFINE_GUID(IID_ITipPullSink, 0x17cf72d2, 0xbac5, 0x11d1, 0xb1, 0xbf, 0x0, 0xc0, 0x4f, 0xc2, 0xf3, 0xef);
  1064. #else
  1065. #define IID_ITransactionResourceAsync __uuidof(ITransactionResourceAsync)
  1066. #define IID_ITransactionLastResourceAsync __uuidof(ITransactionLastResourceAsync)
  1067. #define IID_ITransactionResource __uuidof(ITransactionResource)
  1068. #define IID_ITransactionEnlistmentAsync __uuidof(ITransactionEnlistmentAsync)
  1069. #define IID_ITransactionLastEnlistmentAsync __uuidof(ITransactionLastEnlistmentAsync)
  1070. #define IID_ITransactionExportFactory __uuidof(ITransactionExportFactory)
  1071. #define IID_ITransactionImportWhereabouts __uuidof(ITransactionImportWhereabouts)
  1072. #define IID_ITransactionExport __uuidof(ITransactionExport)
  1073. #define IID_ITransactionImport __uuidof(ITransactionImport)
  1074. #define IID_ITipTransaction __uuidof(ITipTransaction)
  1075. #define IID_ITipHelper __uuidof(ITipHelper)
  1076. #define IID_ITipPullSink __uuidof(ITipPullSink)
  1077. #endif
  1078. extern RPC_IF_HANDLE __MIDL_itf_txcoord_0104_v0_0_c_ifspec;
  1079. extern RPC_IF_HANDLE __MIDL_itf_txcoord_0104_v0_0_s_ifspec;
  1080. /* Additional Prototypes for ALL interfaces */
  1081. /* [local] */ HRESULT STDMETHODCALLTYPE ITransactionImportWhereabouts_GetWhereabouts_Proxy(
  1082. ITransactionImportWhereabouts * This,
  1083. /* [in] */ ULONG cbWhereabouts,
  1084. /* [size_is][out] */ byte *rgbWhereabouts,
  1085. /* [out] */ ULONG *pcbUsed);
  1086. /* [call_as] */ HRESULT STDMETHODCALLTYPE ITransactionImportWhereabouts_GetWhereabouts_Stub(
  1087. ITransactionImportWhereabouts * This,
  1088. /* [out] */ ULONG *pcbUsed,
  1089. /* [in] */ ULONG cbWhereabouts,
  1090. /* [length_is][size_is][out] */ byte *rgbWhereabouts);
  1091. /* [local] */ HRESULT STDMETHODCALLTYPE ITransactionExport_GetTransactionCookie_Proxy(
  1092. ITransactionExport * This,
  1093. /* [in] */ IUnknown *punkTransaction,
  1094. /* [in] */ ULONG cbTransactionCookie,
  1095. /* [size_is][out] */ byte *rgbTransactionCookie,
  1096. /* [out] */ ULONG *pcbUsed);
  1097. /* [call_as] */ HRESULT STDMETHODCALLTYPE ITransactionExport_GetTransactionCookie_Stub(
  1098. ITransactionExport * This,
  1099. /* [in] */ IUnknown *punkTransaction,
  1100. /* [out] */ ULONG *pcbUsed,
  1101. /* [in] */ ULONG cbTransactionCookie,
  1102. /* [length_is][size_is][out] */ byte *rgbTransactionCookie);
  1103. /* end of Additional Prototypes */
  1104. #ifdef __cplusplus
  1105. }
  1106. #endif
  1107. #endif