ComSvcs.h
上传用户:dzyhzl
上传日期:2019-04-29
资源大小:56270k
文件大小:546k
源码类别:

模拟服务器

开发平台:

C/C++

  1.         
  2.         HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
  3.             IEnumNames * This,
  4.             /* [in] */ REFIID riid,
  5.             /* [iid_is][out] */ void **ppvObject);
  6.         
  7.         ULONG ( STDMETHODCALLTYPE *AddRef )( 
  8.             IEnumNames * This);
  9.         
  10.         ULONG ( STDMETHODCALLTYPE *Release )( 
  11.             IEnumNames * This);
  12.         
  13.         HRESULT ( STDMETHODCALLTYPE *Next )( 
  14.             IEnumNames * This,
  15.             /* [in] */ unsigned long celt,
  16.             /* [size_is][out] */ BSTR *rgname,
  17.             /* [retval][out] */ unsigned long *pceltFetched);
  18.         
  19.         HRESULT ( STDMETHODCALLTYPE *Skip )( 
  20.             IEnumNames * This,
  21.             /* [in] */ unsigned long celt);
  22.         
  23.         HRESULT ( STDMETHODCALLTYPE *Reset )( 
  24.             IEnumNames * This);
  25.         
  26.         HRESULT ( STDMETHODCALLTYPE *Clone )( 
  27.             IEnumNames * This,
  28.             /* [retval][out] */ IEnumNames **ppenum);
  29.         
  30.         END_INTERFACE
  31.     } IEnumNamesVtbl;
  32.     interface IEnumNames
  33.     {
  34.         CONST_VTBL struct IEnumNamesVtbl *lpVtbl;
  35.     };
  36.     
  37. #ifdef COBJMACROS
  38. #define IEnumNames_QueryInterface(This,riid,ppvObject)
  39.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  40. #define IEnumNames_AddRef(This)
  41.     (This)->lpVtbl -> AddRef(This)
  42. #define IEnumNames_Release(This)
  43.     (This)->lpVtbl -> Release(This)
  44. #define IEnumNames_Next(This,celt,rgname,pceltFetched)
  45.     (This)->lpVtbl -> Next(This,celt,rgname,pceltFetched)
  46. #define IEnumNames_Skip(This,celt)
  47.     (This)->lpVtbl -> Skip(This,celt)
  48. #define IEnumNames_Reset(This)
  49.     (This)->lpVtbl -> Reset(This)
  50. #define IEnumNames_Clone(This,ppenum)
  51.     (This)->lpVtbl -> Clone(This,ppenum)
  52. #endif /* COBJMACROS */
  53. #endif  /* C style interface */
  54. HRESULT STDMETHODCALLTYPE IEnumNames_Next_Proxy( 
  55.     IEnumNames * This,
  56.     /* [in] */ unsigned long celt,
  57.     /* [size_is][out] */ BSTR *rgname,
  58.     /* [retval][out] */ unsigned long *pceltFetched);
  59. void __RPC_STUB IEnumNames_Next_Stub(
  60.     IRpcStubBuffer *This,
  61.     IRpcChannelBuffer *_pRpcChannelBuffer,
  62.     PRPC_MESSAGE _pRpcMessage,
  63.     DWORD *_pdwStubPhase);
  64. HRESULT STDMETHODCALLTYPE IEnumNames_Skip_Proxy( 
  65.     IEnumNames * This,
  66.     /* [in] */ unsigned long celt);
  67. void __RPC_STUB IEnumNames_Skip_Stub(
  68.     IRpcStubBuffer *This,
  69.     IRpcChannelBuffer *_pRpcChannelBuffer,
  70.     PRPC_MESSAGE _pRpcMessage,
  71.     DWORD *_pdwStubPhase);
  72. HRESULT STDMETHODCALLTYPE IEnumNames_Reset_Proxy( 
  73.     IEnumNames * This);
  74. void __RPC_STUB IEnumNames_Reset_Stub(
  75.     IRpcStubBuffer *This,
  76.     IRpcChannelBuffer *_pRpcChannelBuffer,
  77.     PRPC_MESSAGE _pRpcMessage,
  78.     DWORD *_pdwStubPhase);
  79. HRESULT STDMETHODCALLTYPE IEnumNames_Clone_Proxy( 
  80.     IEnumNames * This,
  81.     /* [retval][out] */ IEnumNames **ppenum);
  82. void __RPC_STUB IEnumNames_Clone_Stub(
  83.     IRpcStubBuffer *This,
  84.     IRpcChannelBuffer *_pRpcChannelBuffer,
  85.     PRPC_MESSAGE _pRpcMessage,
  86.     DWORD *_pdwStubPhase);
  87. #endif  /* __IEnumNames_INTERFACE_DEFINED__ */
  88. #ifndef __ISecurityProperty_INTERFACE_DEFINED__
  89. #define __ISecurityProperty_INTERFACE_DEFINED__
  90. /* interface ISecurityProperty */
  91. /* [object][unique][uuid][local] */ 
  92. EXTERN_C const IID IID_ISecurityProperty;
  93. #if defined(__cplusplus) && !defined(CINTERFACE)
  94.     
  95.     MIDL_INTERFACE("51372aea-cae7-11cf-be81-00aa00a2fa25")
  96.     ISecurityProperty : public IUnknown
  97.     {
  98.     public:
  99.         virtual HRESULT STDMETHODCALLTYPE GetDirectCreatorSID( 
  100.             PSID *pSID) = 0;
  101.         
  102.         virtual HRESULT STDMETHODCALLTYPE GetOriginalCreatorSID( 
  103.             PSID *pSID) = 0;
  104.         
  105.         virtual HRESULT STDMETHODCALLTYPE GetDirectCallerSID( 
  106.             PSID *pSID) = 0;
  107.         
  108.         virtual HRESULT STDMETHODCALLTYPE GetOriginalCallerSID( 
  109.             PSID *pSID) = 0;
  110.         
  111.         virtual HRESULT STDMETHODCALLTYPE ReleaseSID( 
  112.             PSID pSID) = 0;
  113.         
  114.     };
  115.     
  116. #else  /* C style interface */
  117.     typedef struct ISecurityPropertyVtbl
  118.     {
  119.         BEGIN_INTERFACE
  120.         
  121.         HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
  122.             ISecurityProperty * This,
  123.             /* [in] */ REFIID riid,
  124.             /* [iid_is][out] */ void **ppvObject);
  125.         
  126.         ULONG ( STDMETHODCALLTYPE *AddRef )( 
  127.             ISecurityProperty * This);
  128.         
  129.         ULONG ( STDMETHODCALLTYPE *Release )( 
  130.             ISecurityProperty * This);
  131.         
  132.         HRESULT ( STDMETHODCALLTYPE *GetDirectCreatorSID )( 
  133.             ISecurityProperty * This,
  134.             PSID *pSID);
  135.         
  136.         HRESULT ( STDMETHODCALLTYPE *GetOriginalCreatorSID )( 
  137.             ISecurityProperty * This,
  138.             PSID *pSID);
  139.         
  140.         HRESULT ( STDMETHODCALLTYPE *GetDirectCallerSID )( 
  141.             ISecurityProperty * This,
  142.             PSID *pSID);
  143.         
  144.         HRESULT ( STDMETHODCALLTYPE *GetOriginalCallerSID )( 
  145.             ISecurityProperty * This,
  146.             PSID *pSID);
  147.         
  148.         HRESULT ( STDMETHODCALLTYPE *ReleaseSID )( 
  149.             ISecurityProperty * This,
  150.             PSID pSID);
  151.         
  152.         END_INTERFACE
  153.     } ISecurityPropertyVtbl;
  154.     interface ISecurityProperty
  155.     {
  156.         CONST_VTBL struct ISecurityPropertyVtbl *lpVtbl;
  157.     };
  158.     
  159. #ifdef COBJMACROS
  160. #define ISecurityProperty_QueryInterface(This,riid,ppvObject)
  161.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  162. #define ISecurityProperty_AddRef(This)
  163.     (This)->lpVtbl -> AddRef(This)
  164. #define ISecurityProperty_Release(This)
  165.     (This)->lpVtbl -> Release(This)
  166. #define ISecurityProperty_GetDirectCreatorSID(This,pSID)
  167.     (This)->lpVtbl -> GetDirectCreatorSID(This,pSID)
  168. #define ISecurityProperty_GetOriginalCreatorSID(This,pSID)
  169.     (This)->lpVtbl -> GetOriginalCreatorSID(This,pSID)
  170. #define ISecurityProperty_GetDirectCallerSID(This,pSID)
  171.     (This)->lpVtbl -> GetDirectCallerSID(This,pSID)
  172. #define ISecurityProperty_GetOriginalCallerSID(This,pSID)
  173.     (This)->lpVtbl -> GetOriginalCallerSID(This,pSID)
  174. #define ISecurityProperty_ReleaseSID(This,pSID)
  175.     (This)->lpVtbl -> ReleaseSID(This,pSID)
  176. #endif /* COBJMACROS */
  177. #endif  /* C style interface */
  178. HRESULT STDMETHODCALLTYPE ISecurityProperty_GetDirectCreatorSID_Proxy( 
  179.     ISecurityProperty * This,
  180.     PSID *pSID);
  181. void __RPC_STUB ISecurityProperty_GetDirectCreatorSID_Stub(
  182.     IRpcStubBuffer *This,
  183.     IRpcChannelBuffer *_pRpcChannelBuffer,
  184.     PRPC_MESSAGE _pRpcMessage,
  185.     DWORD *_pdwStubPhase);
  186. HRESULT STDMETHODCALLTYPE ISecurityProperty_GetOriginalCreatorSID_Proxy( 
  187.     ISecurityProperty * This,
  188.     PSID *pSID);
  189. void __RPC_STUB ISecurityProperty_GetOriginalCreatorSID_Stub(
  190.     IRpcStubBuffer *This,
  191.     IRpcChannelBuffer *_pRpcChannelBuffer,
  192.     PRPC_MESSAGE _pRpcMessage,
  193.     DWORD *_pdwStubPhase);
  194. HRESULT STDMETHODCALLTYPE ISecurityProperty_GetDirectCallerSID_Proxy( 
  195.     ISecurityProperty * This,
  196.     PSID *pSID);
  197. void __RPC_STUB ISecurityProperty_GetDirectCallerSID_Stub(
  198.     IRpcStubBuffer *This,
  199.     IRpcChannelBuffer *_pRpcChannelBuffer,
  200.     PRPC_MESSAGE _pRpcMessage,
  201.     DWORD *_pdwStubPhase);
  202. HRESULT STDMETHODCALLTYPE ISecurityProperty_GetOriginalCallerSID_Proxy( 
  203.     ISecurityProperty * This,
  204.     PSID *pSID);
  205. void __RPC_STUB ISecurityProperty_GetOriginalCallerSID_Stub(
  206.     IRpcStubBuffer *This,
  207.     IRpcChannelBuffer *_pRpcChannelBuffer,
  208.     PRPC_MESSAGE _pRpcMessage,
  209.     DWORD *_pdwStubPhase);
  210. HRESULT STDMETHODCALLTYPE ISecurityProperty_ReleaseSID_Proxy( 
  211.     ISecurityProperty * This,
  212.     PSID pSID);
  213. void __RPC_STUB ISecurityProperty_ReleaseSID_Stub(
  214.     IRpcStubBuffer *This,
  215.     IRpcChannelBuffer *_pRpcChannelBuffer,
  216.     PRPC_MESSAGE _pRpcMessage,
  217.     DWORD *_pdwStubPhase);
  218. #endif  /* __ISecurityProperty_INTERFACE_DEFINED__ */
  219. #ifndef __ObjectControl_INTERFACE_DEFINED__
  220. #define __ObjectControl_INTERFACE_DEFINED__
  221. /* interface ObjectControl */
  222. /* [version][helpcontext][helpstring][oleautomation][uuid][local][object] */ 
  223. EXTERN_C const IID IID_ObjectControl;
  224. #if defined(__cplusplus) && !defined(CINTERFACE)
  225.     
  226.     MIDL_INTERFACE("7DC41850-0C31-11d0-8B79-00AA00B8A790")
  227.     ObjectControl : public IUnknown
  228.     {
  229.     public:
  230.         virtual /* [helpstring][helpcontext] */ HRESULT STDMETHODCALLTYPE Activate( void) = 0;
  231.         
  232.         virtual /* [helpstring][helpcontext] */ HRESULT STDMETHODCALLTYPE Deactivate( void) = 0;
  233.         
  234.         virtual /* [helpstring][helpcontext] */ HRESULT STDMETHODCALLTYPE CanBePooled( 
  235.             /* [retval][out] */ VARIANT_BOOL *pbPoolable) = 0;
  236.         
  237.     };
  238.     
  239. #else  /* C style interface */
  240.     typedef struct ObjectControlVtbl
  241.     {
  242.         BEGIN_INTERFACE
  243.         
  244.         HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
  245.             ObjectControl * This,
  246.             /* [in] */ REFIID riid,
  247.             /* [iid_is][out] */ void **ppvObject);
  248.         
  249.         ULONG ( STDMETHODCALLTYPE *AddRef )( 
  250.             ObjectControl * This);
  251.         
  252.         ULONG ( STDMETHODCALLTYPE *Release )( 
  253.             ObjectControl * This);
  254.         
  255.         /* [helpstring][helpcontext] */ HRESULT ( STDMETHODCALLTYPE *Activate )( 
  256.             ObjectControl * This);
  257.         
  258.         /* [helpstring][helpcontext] */ HRESULT ( STDMETHODCALLTYPE *Deactivate )( 
  259.             ObjectControl * This);
  260.         
  261.         /* [helpstring][helpcontext] */ HRESULT ( STDMETHODCALLTYPE *CanBePooled )( 
  262.             ObjectControl * This,
  263.             /* [retval][out] */ VARIANT_BOOL *pbPoolable);
  264.         
  265.         END_INTERFACE
  266.     } ObjectControlVtbl;
  267.     interface ObjectControl
  268.     {
  269.         CONST_VTBL struct ObjectControlVtbl *lpVtbl;
  270.     };
  271.     
  272. #ifdef COBJMACROS
  273. #define ObjectControl_QueryInterface(This,riid,ppvObject)
  274.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  275. #define ObjectControl_AddRef(This)
  276.     (This)->lpVtbl -> AddRef(This)
  277. #define ObjectControl_Release(This)
  278.     (This)->lpVtbl -> Release(This)
  279. #define ObjectControl_Activate(This)
  280.     (This)->lpVtbl -> Activate(This)
  281. #define ObjectControl_Deactivate(This)
  282.     (This)->lpVtbl -> Deactivate(This)
  283. #define ObjectControl_CanBePooled(This,pbPoolable)
  284.     (This)->lpVtbl -> CanBePooled(This,pbPoolable)
  285. #endif /* COBJMACROS */
  286. #endif  /* C style interface */
  287. /* [helpstring][helpcontext] */ HRESULT STDMETHODCALLTYPE ObjectControl_Activate_Proxy( 
  288.     ObjectControl * This);
  289. void __RPC_STUB ObjectControl_Activate_Stub(
  290.     IRpcStubBuffer *This,
  291.     IRpcChannelBuffer *_pRpcChannelBuffer,
  292.     PRPC_MESSAGE _pRpcMessage,
  293.     DWORD *_pdwStubPhase);
  294. /* [helpstring][helpcontext] */ HRESULT STDMETHODCALLTYPE ObjectControl_Deactivate_Proxy( 
  295.     ObjectControl * This);
  296. void __RPC_STUB ObjectControl_Deactivate_Stub(
  297.     IRpcStubBuffer *This,
  298.     IRpcChannelBuffer *_pRpcChannelBuffer,
  299.     PRPC_MESSAGE _pRpcMessage,
  300.     DWORD *_pdwStubPhase);
  301. /* [helpstring][helpcontext] */ HRESULT STDMETHODCALLTYPE ObjectControl_CanBePooled_Proxy( 
  302.     ObjectControl * This,
  303.     /* [retval][out] */ VARIANT_BOOL *pbPoolable);
  304. void __RPC_STUB ObjectControl_CanBePooled_Stub(
  305.     IRpcStubBuffer *This,
  306.     IRpcChannelBuffer *_pRpcChannelBuffer,
  307.     PRPC_MESSAGE _pRpcMessage,
  308.     DWORD *_pdwStubPhase);
  309. #endif  /* __ObjectControl_INTERFACE_DEFINED__ */
  310. #ifndef __ISharedProperty_INTERFACE_DEFINED__
  311. #define __ISharedProperty_INTERFACE_DEFINED__
  312. /* interface ISharedProperty */
  313. /* [object][unique][helpcontext][helpstring][dual][uuid] */ 
  314. EXTERN_C const IID IID_ISharedProperty;
  315. #if defined(__cplusplus) && !defined(CINTERFACE)
  316.     
  317.     MIDL_INTERFACE("2A005C01-A5DE-11CF-9E66-00AA00A3F464")
  318.     ISharedProperty : public IDispatch
  319.     {
  320.     public:
  321.         virtual /* [helpstring][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Value( 
  322.             /* [retval][out] */ VARIANT *pVal) = 0;
  323.         
  324.         virtual /* [helpstring][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE put_Value( 
  325.             /* [in] */ VARIANT val) = 0;
  326.         
  327.     };
  328.     
  329. #else  /* C style interface */
  330.     typedef struct ISharedPropertyVtbl
  331.     {
  332.         BEGIN_INTERFACE
  333.         
  334.         HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
  335.             ISharedProperty * This,
  336.             /* [in] */ REFIID riid,
  337.             /* [iid_is][out] */ void **ppvObject);
  338.         
  339.         ULONG ( STDMETHODCALLTYPE *AddRef )( 
  340.             ISharedProperty * This);
  341.         
  342.         ULONG ( STDMETHODCALLTYPE *Release )( 
  343.             ISharedProperty * This);
  344.         
  345.         HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
  346.             ISharedProperty * This,
  347.             /* [out] */ UINT *pctinfo);
  348.         
  349.         HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
  350.             ISharedProperty * This,
  351.             /* [in] */ UINT iTInfo,
  352.             /* [in] */ LCID lcid,
  353.             /* [out] */ ITypeInfo **ppTInfo);
  354.         
  355.         HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
  356.             ISharedProperty * This,
  357.             /* [in] */ REFIID riid,
  358.             /* [size_is][in] */ LPOLESTR *rgszNames,
  359.             /* [in] */ UINT cNames,
  360.             /* [in] */ LCID lcid,
  361.             /* [size_is][out] */ DISPID *rgDispId);
  362.         
  363.         /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
  364.             ISharedProperty * This,
  365.             /* [in] */ DISPID dispIdMember,
  366.             /* [in] */ REFIID riid,
  367.             /* [in] */ LCID lcid,
  368.             /* [in] */ WORD wFlags,
  369.             /* [out][in] */ DISPPARAMS *pDispParams,
  370.             /* [out] */ VARIANT *pVarResult,
  371.             /* [out] */ EXCEPINFO *pExcepInfo,
  372.             /* [out] */ UINT *puArgErr);
  373.         
  374.         /* [helpstring][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Value )( 
  375.             ISharedProperty * This,
  376.             /* [retval][out] */ VARIANT *pVal);
  377.         
  378.         /* [helpstring][helpcontext][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Value )( 
  379.             ISharedProperty * This,
  380.             /* [in] */ VARIANT val);
  381.         
  382.         END_INTERFACE
  383.     } ISharedPropertyVtbl;
  384.     interface ISharedProperty
  385.     {
  386.         CONST_VTBL struct ISharedPropertyVtbl *lpVtbl;
  387.     };
  388.     
  389. #ifdef COBJMACROS
  390. #define ISharedProperty_QueryInterface(This,riid,ppvObject)
  391.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  392. #define ISharedProperty_AddRef(This)
  393.     (This)->lpVtbl -> AddRef(This)
  394. #define ISharedProperty_Release(This)
  395.     (This)->lpVtbl -> Release(This)
  396. #define ISharedProperty_GetTypeInfoCount(This,pctinfo)
  397.     (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)
  398. #define ISharedProperty_GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  399.     (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  400. #define ISharedProperty_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  401.     (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  402. #define ISharedProperty_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  403.     (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  404. #define ISharedProperty_get_Value(This,pVal)
  405.     (This)->lpVtbl -> get_Value(This,pVal)
  406. #define ISharedProperty_put_Value(This,val)
  407.     (This)->lpVtbl -> put_Value(This,val)
  408. #endif /* COBJMACROS */
  409. #endif  /* C style interface */
  410. /* [helpstring][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE ISharedProperty_get_Value_Proxy( 
  411.     ISharedProperty * This,
  412.     /* [retval][out] */ VARIANT *pVal);
  413. void __RPC_STUB ISharedProperty_get_Value_Stub(
  414.     IRpcStubBuffer *This,
  415.     IRpcChannelBuffer *_pRpcChannelBuffer,
  416.     PRPC_MESSAGE _pRpcMessage,
  417.     DWORD *_pdwStubPhase);
  418. /* [helpstring][helpcontext][id][propput] */ HRESULT STDMETHODCALLTYPE ISharedProperty_put_Value_Proxy( 
  419.     ISharedProperty * This,
  420.     /* [in] */ VARIANT val);
  421. void __RPC_STUB ISharedProperty_put_Value_Stub(
  422.     IRpcStubBuffer *This,
  423.     IRpcChannelBuffer *_pRpcChannelBuffer,
  424.     PRPC_MESSAGE _pRpcMessage,
  425.     DWORD *_pdwStubPhase);
  426. #endif  /* __ISharedProperty_INTERFACE_DEFINED__ */
  427. #ifndef __ISharedPropertyGroup_INTERFACE_DEFINED__
  428. #define __ISharedPropertyGroup_INTERFACE_DEFINED__
  429. /* interface ISharedPropertyGroup */
  430. /* [object][unique][helpcontext][helpstring][dual][uuid] */ 
  431. EXTERN_C const IID IID_ISharedPropertyGroup;
  432. #if defined(__cplusplus) && !defined(CINTERFACE)
  433.     
  434.     MIDL_INTERFACE("2A005C07-A5DE-11CF-9E66-00AA00A3F464")
  435.     ISharedPropertyGroup : public IDispatch
  436.     {
  437.     public:
  438.         virtual /* [helpstring][helpcontext][id] */ HRESULT STDMETHODCALLTYPE CreatePropertyByPosition( 
  439.             /* [in] */ int Index,
  440.             /* [out] */ VARIANT_BOOL *fExists,
  441.             /* [retval][out] */ ISharedProperty **ppProp) = 0;
  442.         
  443.         virtual /* [helpstring][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_PropertyByPosition( 
  444.             /* [in] */ int Index,
  445.             /* [retval][out] */ ISharedProperty **ppProperty) = 0;
  446.         
  447.         virtual /* [helpstring][helpcontext][id] */ HRESULT STDMETHODCALLTYPE CreateProperty( 
  448.             /* [in] */ BSTR Name,
  449.             /* [out] */ VARIANT_BOOL *fExists,
  450.             /* [retval][out] */ ISharedProperty **ppProp) = 0;
  451.         
  452.         virtual /* [helpstring][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Property( 
  453.             /* [in] */ BSTR Name,
  454.             /* [retval][out] */ ISharedProperty **ppProperty) = 0;
  455.         
  456.     };
  457.     
  458. #else  /* C style interface */
  459.     typedef struct ISharedPropertyGroupVtbl
  460.     {
  461.         BEGIN_INTERFACE
  462.         
  463.         HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
  464.             ISharedPropertyGroup * This,
  465.             /* [in] */ REFIID riid,
  466.             /* [iid_is][out] */ void **ppvObject);
  467.         
  468.         ULONG ( STDMETHODCALLTYPE *AddRef )( 
  469.             ISharedPropertyGroup * This);
  470.         
  471.         ULONG ( STDMETHODCALLTYPE *Release )( 
  472.             ISharedPropertyGroup * This);
  473.         
  474.         HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
  475.             ISharedPropertyGroup * This,
  476.             /* [out] */ UINT *pctinfo);
  477.         
  478.         HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
  479.             ISharedPropertyGroup * This,
  480.             /* [in] */ UINT iTInfo,
  481.             /* [in] */ LCID lcid,
  482.             /* [out] */ ITypeInfo **ppTInfo);
  483.         
  484.         HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
  485.             ISharedPropertyGroup * This,
  486.             /* [in] */ REFIID riid,
  487.             /* [size_is][in] */ LPOLESTR *rgszNames,
  488.             /* [in] */ UINT cNames,
  489.             /* [in] */ LCID lcid,
  490.             /* [size_is][out] */ DISPID *rgDispId);
  491.         
  492.         /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
  493.             ISharedPropertyGroup * This,
  494.             /* [in] */ DISPID dispIdMember,
  495.             /* [in] */ REFIID riid,
  496.             /* [in] */ LCID lcid,
  497.             /* [in] */ WORD wFlags,
  498.             /* [out][in] */ DISPPARAMS *pDispParams,
  499.             /* [out] */ VARIANT *pVarResult,
  500.             /* [out] */ EXCEPINFO *pExcepInfo,
  501.             /* [out] */ UINT *puArgErr);
  502.         
  503.         /* [helpstring][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *CreatePropertyByPosition )( 
  504.             ISharedPropertyGroup * This,
  505.             /* [in] */ int Index,
  506.             /* [out] */ VARIANT_BOOL *fExists,
  507.             /* [retval][out] */ ISharedProperty **ppProp);
  508.         
  509.         /* [helpstring][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_PropertyByPosition )( 
  510.             ISharedPropertyGroup * This,
  511.             /* [in] */ int Index,
  512.             /* [retval][out] */ ISharedProperty **ppProperty);
  513.         
  514.         /* [helpstring][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *CreateProperty )( 
  515.             ISharedPropertyGroup * This,
  516.             /* [in] */ BSTR Name,
  517.             /* [out] */ VARIANT_BOOL *fExists,
  518.             /* [retval][out] */ ISharedProperty **ppProp);
  519.         
  520.         /* [helpstring][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Property )( 
  521.             ISharedPropertyGroup * This,
  522.             /* [in] */ BSTR Name,
  523.             /* [retval][out] */ ISharedProperty **ppProperty);
  524.         
  525.         END_INTERFACE
  526.     } ISharedPropertyGroupVtbl;
  527.     interface ISharedPropertyGroup
  528.     {
  529.         CONST_VTBL struct ISharedPropertyGroupVtbl *lpVtbl;
  530.     };
  531.     
  532. #ifdef COBJMACROS
  533. #define ISharedPropertyGroup_QueryInterface(This,riid,ppvObject)
  534.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  535. #define ISharedPropertyGroup_AddRef(This)
  536.     (This)->lpVtbl -> AddRef(This)
  537. #define ISharedPropertyGroup_Release(This)
  538.     (This)->lpVtbl -> Release(This)
  539. #define ISharedPropertyGroup_GetTypeInfoCount(This,pctinfo)
  540.     (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)
  541. #define ISharedPropertyGroup_GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  542.     (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  543. #define ISharedPropertyGroup_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  544.     (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  545. #define ISharedPropertyGroup_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  546.     (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  547. #define ISharedPropertyGroup_CreatePropertyByPosition(This,Index,fExists,ppProp)
  548.     (This)->lpVtbl -> CreatePropertyByPosition(This,Index,fExists,ppProp)
  549. #define ISharedPropertyGroup_get_PropertyByPosition(This,Index,ppProperty)
  550.     (This)->lpVtbl -> get_PropertyByPosition(This,Index,ppProperty)
  551. #define ISharedPropertyGroup_CreateProperty(This,Name,fExists,ppProp)
  552.     (This)->lpVtbl -> CreateProperty(This,Name,fExists,ppProp)
  553. #define ISharedPropertyGroup_get_Property(This,Name,ppProperty)
  554.     (This)->lpVtbl -> get_Property(This,Name,ppProperty)
  555. #endif /* COBJMACROS */
  556. #endif  /* C style interface */
  557. /* [helpstring][helpcontext][id] */ HRESULT STDMETHODCALLTYPE ISharedPropertyGroup_CreatePropertyByPosition_Proxy( 
  558.     ISharedPropertyGroup * This,
  559.     /* [in] */ int Index,
  560.     /* [out] */ VARIANT_BOOL *fExists,
  561.     /* [retval][out] */ ISharedProperty **ppProp);
  562. void __RPC_STUB ISharedPropertyGroup_CreatePropertyByPosition_Stub(
  563.     IRpcStubBuffer *This,
  564.     IRpcChannelBuffer *_pRpcChannelBuffer,
  565.     PRPC_MESSAGE _pRpcMessage,
  566.     DWORD *_pdwStubPhase);
  567. /* [helpstring][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE ISharedPropertyGroup_get_PropertyByPosition_Proxy( 
  568.     ISharedPropertyGroup * This,
  569.     /* [in] */ int Index,
  570.     /* [retval][out] */ ISharedProperty **ppProperty);
  571. void __RPC_STUB ISharedPropertyGroup_get_PropertyByPosition_Stub(
  572.     IRpcStubBuffer *This,
  573.     IRpcChannelBuffer *_pRpcChannelBuffer,
  574.     PRPC_MESSAGE _pRpcMessage,
  575.     DWORD *_pdwStubPhase);
  576. /* [helpstring][helpcontext][id] */ HRESULT STDMETHODCALLTYPE ISharedPropertyGroup_CreateProperty_Proxy( 
  577.     ISharedPropertyGroup * This,
  578.     /* [in] */ BSTR Name,
  579.     /* [out] */ VARIANT_BOOL *fExists,
  580.     /* [retval][out] */ ISharedProperty **ppProp);
  581. void __RPC_STUB ISharedPropertyGroup_CreateProperty_Stub(
  582.     IRpcStubBuffer *This,
  583.     IRpcChannelBuffer *_pRpcChannelBuffer,
  584.     PRPC_MESSAGE _pRpcMessage,
  585.     DWORD *_pdwStubPhase);
  586. /* [helpstring][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE ISharedPropertyGroup_get_Property_Proxy( 
  587.     ISharedPropertyGroup * This,
  588.     /* [in] */ BSTR Name,
  589.     /* [retval][out] */ ISharedProperty **ppProperty);
  590. void __RPC_STUB ISharedPropertyGroup_get_Property_Stub(
  591.     IRpcStubBuffer *This,
  592.     IRpcChannelBuffer *_pRpcChannelBuffer,
  593.     PRPC_MESSAGE _pRpcMessage,
  594.     DWORD *_pdwStubPhase);
  595. #endif  /* __ISharedPropertyGroup_INTERFACE_DEFINED__ */
  596. #ifndef __ISharedPropertyGroupManager_INTERFACE_DEFINED__
  597. #define __ISharedPropertyGroupManager_INTERFACE_DEFINED__
  598. /* interface ISharedPropertyGroupManager */
  599. /* [object][unique][helpcontext][helpstring][dual][uuid] */ 
  600. EXTERN_C const IID IID_ISharedPropertyGroupManager;
  601. #if defined(__cplusplus) && !defined(CINTERFACE)
  602.     
  603.     MIDL_INTERFACE("2A005C0D-A5DE-11CF-9E66-00AA00A3F464")
  604.     ISharedPropertyGroupManager : public IDispatch
  605.     {
  606.     public:
  607.         virtual /* [helpstring][helpcontext][id] */ HRESULT STDMETHODCALLTYPE CreatePropertyGroup( 
  608.             /* [in] */ BSTR Name,
  609.             /* [out][in] */ LONG *dwIsoMode,
  610.             /* [out][in] */ LONG *dwRelMode,
  611.             /* [out] */ VARIANT_BOOL *fExists,
  612.             /* [retval][out] */ ISharedPropertyGroup **ppGroup) = 0;
  613.         
  614.         virtual /* [helpstring][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE get_Group( 
  615.             /* [in] */ BSTR Name,
  616.             /* [retval][out] */ ISharedPropertyGroup **ppGroup) = 0;
  617.         
  618.         virtual /* [helpstring][helpcontext][id][restricted][propget] */ HRESULT STDMETHODCALLTYPE get__NewEnum( 
  619.             /* [retval][out] */ IUnknown **retval) = 0;
  620.         
  621.     };
  622.     
  623. #else  /* C style interface */
  624.     typedef struct ISharedPropertyGroupManagerVtbl
  625.     {
  626.         BEGIN_INTERFACE
  627.         
  628.         HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
  629.             ISharedPropertyGroupManager * This,
  630.             /* [in] */ REFIID riid,
  631.             /* [iid_is][out] */ void **ppvObject);
  632.         
  633.         ULONG ( STDMETHODCALLTYPE *AddRef )( 
  634.             ISharedPropertyGroupManager * This);
  635.         
  636.         ULONG ( STDMETHODCALLTYPE *Release )( 
  637.             ISharedPropertyGroupManager * This);
  638.         
  639.         HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
  640.             ISharedPropertyGroupManager * This,
  641.             /* [out] */ UINT *pctinfo);
  642.         
  643.         HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
  644.             ISharedPropertyGroupManager * This,
  645.             /* [in] */ UINT iTInfo,
  646.             /* [in] */ LCID lcid,
  647.             /* [out] */ ITypeInfo **ppTInfo);
  648.         
  649.         HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
  650.             ISharedPropertyGroupManager * This,
  651.             /* [in] */ REFIID riid,
  652.             /* [size_is][in] */ LPOLESTR *rgszNames,
  653.             /* [in] */ UINT cNames,
  654.             /* [in] */ LCID lcid,
  655.             /* [size_is][out] */ DISPID *rgDispId);
  656.         
  657.         /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
  658.             ISharedPropertyGroupManager * This,
  659.             /* [in] */ DISPID dispIdMember,
  660.             /* [in] */ REFIID riid,
  661.             /* [in] */ LCID lcid,
  662.             /* [in] */ WORD wFlags,
  663.             /* [out][in] */ DISPPARAMS *pDispParams,
  664.             /* [out] */ VARIANT *pVarResult,
  665.             /* [out] */ EXCEPINFO *pExcepInfo,
  666.             /* [out] */ UINT *puArgErr);
  667.         
  668.         /* [helpstring][helpcontext][id] */ HRESULT ( STDMETHODCALLTYPE *CreatePropertyGroup )( 
  669.             ISharedPropertyGroupManager * This,
  670.             /* [in] */ BSTR Name,
  671.             /* [out][in] */ LONG *dwIsoMode,
  672.             /* [out][in] */ LONG *dwRelMode,
  673.             /* [out] */ VARIANT_BOOL *fExists,
  674.             /* [retval][out] */ ISharedPropertyGroup **ppGroup);
  675.         
  676.         /* [helpstring][helpcontext][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Group )( 
  677.             ISharedPropertyGroupManager * This,
  678.             /* [in] */ BSTR Name,
  679.             /* [retval][out] */ ISharedPropertyGroup **ppGroup);
  680.         
  681.         /* [helpstring][helpcontext][id][restricted][propget] */ HRESULT ( STDMETHODCALLTYPE *get__NewEnum )( 
  682.             ISharedPropertyGroupManager * This,
  683.             /* [retval][out] */ IUnknown **retval);
  684.         
  685.         END_INTERFACE
  686.     } ISharedPropertyGroupManagerVtbl;
  687.     interface ISharedPropertyGroupManager
  688.     {
  689.         CONST_VTBL struct ISharedPropertyGroupManagerVtbl *lpVtbl;
  690.     };
  691.     
  692. #ifdef COBJMACROS
  693. #define ISharedPropertyGroupManager_QueryInterface(This,riid,ppvObject)
  694.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  695. #define ISharedPropertyGroupManager_AddRef(This)
  696.     (This)->lpVtbl -> AddRef(This)
  697. #define ISharedPropertyGroupManager_Release(This)
  698.     (This)->lpVtbl -> Release(This)
  699. #define ISharedPropertyGroupManager_GetTypeInfoCount(This,pctinfo)
  700.     (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)
  701. #define ISharedPropertyGroupManager_GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  702.     (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  703. #define ISharedPropertyGroupManager_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  704.     (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  705. #define ISharedPropertyGroupManager_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  706.     (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  707. #define ISharedPropertyGroupManager_CreatePropertyGroup(This,Name,dwIsoMode,dwRelMode,fExists,ppGroup)
  708.     (This)->lpVtbl -> CreatePropertyGroup(This,Name,dwIsoMode,dwRelMode,fExists,ppGroup)
  709. #define ISharedPropertyGroupManager_get_Group(This,Name,ppGroup)
  710.     (This)->lpVtbl -> get_Group(This,Name,ppGroup)
  711. #define ISharedPropertyGroupManager_get__NewEnum(This,retval)
  712.     (This)->lpVtbl -> get__NewEnum(This,retval)
  713. #endif /* COBJMACROS */
  714. #endif  /* C style interface */
  715. /* [helpstring][helpcontext][id] */ HRESULT STDMETHODCALLTYPE ISharedPropertyGroupManager_CreatePropertyGroup_Proxy( 
  716.     ISharedPropertyGroupManager * This,
  717.     /* [in] */ BSTR Name,
  718.     /* [out][in] */ LONG *dwIsoMode,
  719.     /* [out][in] */ LONG *dwRelMode,
  720.     /* [out] */ VARIANT_BOOL *fExists,
  721.     /* [retval][out] */ ISharedPropertyGroup **ppGroup);
  722. void __RPC_STUB ISharedPropertyGroupManager_CreatePropertyGroup_Stub(
  723.     IRpcStubBuffer *This,
  724.     IRpcChannelBuffer *_pRpcChannelBuffer,
  725.     PRPC_MESSAGE _pRpcMessage,
  726.     DWORD *_pdwStubPhase);
  727. /* [helpstring][helpcontext][id][propget] */ HRESULT STDMETHODCALLTYPE ISharedPropertyGroupManager_get_Group_Proxy( 
  728.     ISharedPropertyGroupManager * This,
  729.     /* [in] */ BSTR Name,
  730.     /* [retval][out] */ ISharedPropertyGroup **ppGroup);
  731. void __RPC_STUB ISharedPropertyGroupManager_get_Group_Stub(
  732.     IRpcStubBuffer *This,
  733.     IRpcChannelBuffer *_pRpcChannelBuffer,
  734.     PRPC_MESSAGE _pRpcMessage,
  735.     DWORD *_pdwStubPhase);
  736. /* [helpstring][helpcontext][id][restricted][propget] */ HRESULT STDMETHODCALLTYPE ISharedPropertyGroupManager_get__NewEnum_Proxy( 
  737.     ISharedPropertyGroupManager * This,
  738.     /* [retval][out] */ IUnknown **retval);
  739. void __RPC_STUB ISharedPropertyGroupManager_get__NewEnum_Stub(
  740.     IRpcStubBuffer *This,
  741.     IRpcChannelBuffer *_pRpcChannelBuffer,
  742.     PRPC_MESSAGE _pRpcMessage,
  743.     DWORD *_pdwStubPhase);
  744. #endif  /* __ISharedPropertyGroupManager_INTERFACE_DEFINED__ */
  745. #ifndef __IObjectConstruct_INTERFACE_DEFINED__
  746. #define __IObjectConstruct_INTERFACE_DEFINED__
  747. /* interface IObjectConstruct */
  748. /* [uuid][helpstring][unique][object][local] */ 
  749. EXTERN_C const IID IID_IObjectConstruct;
  750. #if defined(__cplusplus) && !defined(CINTERFACE)
  751.     
  752.     MIDL_INTERFACE("41C4F8B3-7439-11D2-98CB-00C04F8EE1C4")
  753.     IObjectConstruct : public IUnknown
  754.     {
  755.     public:
  756.         virtual HRESULT STDMETHODCALLTYPE Construct( 
  757.             /* [in] */ IDispatch *pCtorObj) = 0;
  758.         
  759.     };
  760.     
  761. #else  /* C style interface */
  762.     typedef struct IObjectConstructVtbl
  763.     {
  764.         BEGIN_INTERFACE
  765.         
  766.         HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
  767.             IObjectConstruct * This,
  768.             /* [in] */ REFIID riid,
  769.             /* [iid_is][out] */ void **ppvObject);
  770.         
  771.         ULONG ( STDMETHODCALLTYPE *AddRef )( 
  772.             IObjectConstruct * This);
  773.         
  774.         ULONG ( STDMETHODCALLTYPE *Release )( 
  775.             IObjectConstruct * This);
  776.         
  777.         HRESULT ( STDMETHODCALLTYPE *Construct )( 
  778.             IObjectConstruct * This,
  779.             /* [in] */ IDispatch *pCtorObj);
  780.         
  781.         END_INTERFACE
  782.     } IObjectConstructVtbl;
  783.     interface IObjectConstruct
  784.     {
  785.         CONST_VTBL struct IObjectConstructVtbl *lpVtbl;
  786.     };
  787.     
  788. #ifdef COBJMACROS
  789. #define IObjectConstruct_QueryInterface(This,riid,ppvObject)
  790.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  791. #define IObjectConstruct_AddRef(This)
  792.     (This)->lpVtbl -> AddRef(This)
  793. #define IObjectConstruct_Release(This)
  794.     (This)->lpVtbl -> Release(This)
  795. #define IObjectConstruct_Construct(This,pCtorObj)
  796.     (This)->lpVtbl -> Construct(This,pCtorObj)
  797. #endif /* COBJMACROS */
  798. #endif  /* C style interface */
  799. HRESULT STDMETHODCALLTYPE IObjectConstruct_Construct_Proxy( 
  800.     IObjectConstruct * This,
  801.     /* [in] */ IDispatch *pCtorObj);
  802. void __RPC_STUB IObjectConstruct_Construct_Stub(
  803.     IRpcStubBuffer *This,
  804.     IRpcChannelBuffer *_pRpcChannelBuffer,
  805.     PRPC_MESSAGE _pRpcMessage,
  806.     DWORD *_pdwStubPhase);
  807. #endif  /* __IObjectConstruct_INTERFACE_DEFINED__ */
  808. #ifndef __IObjectConstructString_INTERFACE_DEFINED__
  809. #define __IObjectConstructString_INTERFACE_DEFINED__
  810. /* interface IObjectConstructString */
  811. /* [uuid][helpstring][dual][unique][object][local] */ 
  812. EXTERN_C const IID IID_IObjectConstructString;
  813. #if defined(__cplusplus) && !defined(CINTERFACE)
  814.     
  815.     MIDL_INTERFACE("41C4F8B2-7439-11D2-98CB-00C04F8EE1C4")
  816.     IObjectConstructString : public IDispatch
  817.     {
  818.     public:
  819.         virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ConstructString( 
  820.             /* [retval][out] */ BSTR *pVal) = 0;
  821.         
  822.     };
  823.     
  824. #else  /* C style interface */
  825.     typedef struct IObjectConstructStringVtbl
  826.     {
  827.         BEGIN_INTERFACE
  828.         
  829.         HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
  830.             IObjectConstructString * This,
  831.             /* [in] */ REFIID riid,
  832.             /* [iid_is][out] */ void **ppvObject);
  833.         
  834.         ULONG ( STDMETHODCALLTYPE *AddRef )( 
  835.             IObjectConstructString * This);
  836.         
  837.         ULONG ( STDMETHODCALLTYPE *Release )( 
  838.             IObjectConstructString * This);
  839.         
  840.         HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
  841.             IObjectConstructString * This,
  842.             /* [out] */ UINT *pctinfo);
  843.         
  844.         HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
  845.             IObjectConstructString * This,
  846.             /* [in] */ UINT iTInfo,
  847.             /* [in] */ LCID lcid,
  848.             /* [out] */ ITypeInfo **ppTInfo);
  849.         
  850.         HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
  851.             IObjectConstructString * This,
  852.             /* [in] */ REFIID riid,
  853.             /* [size_is][in] */ LPOLESTR *rgszNames,
  854.             /* [in] */ UINT cNames,
  855.             /* [in] */ LCID lcid,
  856.             /* [size_is][out] */ DISPID *rgDispId);
  857.         
  858.         /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
  859.             IObjectConstructString * This,
  860.             /* [in] */ DISPID dispIdMember,
  861.             /* [in] */ REFIID riid,
  862.             /* [in] */ LCID lcid,
  863.             /* [in] */ WORD wFlags,
  864.             /* [out][in] */ DISPPARAMS *pDispParams,
  865.             /* [out] */ VARIANT *pVarResult,
  866.             /* [out] */ EXCEPINFO *pExcepInfo,
  867.             /* [out] */ UINT *puArgErr);
  868.         
  869.         /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ConstructString )( 
  870.             IObjectConstructString * This,
  871.             /* [retval][out] */ BSTR *pVal);
  872.         
  873.         END_INTERFACE
  874.     } IObjectConstructStringVtbl;
  875.     interface IObjectConstructString
  876.     {
  877.         CONST_VTBL struct IObjectConstructStringVtbl *lpVtbl;
  878.     };
  879.     
  880. #ifdef COBJMACROS
  881. #define IObjectConstructString_QueryInterface(This,riid,ppvObject)
  882.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  883. #define IObjectConstructString_AddRef(This)
  884.     (This)->lpVtbl -> AddRef(This)
  885. #define IObjectConstructString_Release(This)
  886.     (This)->lpVtbl -> Release(This)
  887. #define IObjectConstructString_GetTypeInfoCount(This,pctinfo)
  888.     (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)
  889. #define IObjectConstructString_GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  890.     (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  891. #define IObjectConstructString_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  892.     (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  893. #define IObjectConstructString_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  894.     (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  895. #define IObjectConstructString_get_ConstructString(This,pVal)
  896.     (This)->lpVtbl -> get_ConstructString(This,pVal)
  897. #endif /* COBJMACROS */
  898. #endif  /* C style interface */
  899. /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IObjectConstructString_get_ConstructString_Proxy( 
  900.     IObjectConstructString * This,
  901.     /* [retval][out] */ BSTR *pVal);
  902. void __RPC_STUB IObjectConstructString_get_ConstructString_Stub(
  903.     IRpcStubBuffer *This,
  904.     IRpcChannelBuffer *_pRpcChannelBuffer,
  905.     PRPC_MESSAGE _pRpcMessage,
  906.     DWORD *_pdwStubPhase);
  907. #endif  /* __IObjectConstructString_INTERFACE_DEFINED__ */
  908. #ifndef __IObjectContextActivity_INTERFACE_DEFINED__
  909. #define __IObjectContextActivity_INTERFACE_DEFINED__
  910. /* interface IObjectContextActivity */
  911. /* [object][unique][uuid][local] */ 
  912. EXTERN_C const IID IID_IObjectContextActivity;
  913. #if defined(__cplusplus) && !defined(CINTERFACE)
  914.     
  915.     MIDL_INTERFACE("51372afc-cae7-11cf-be81-00aa00a2fa25")
  916.     IObjectContextActivity : public IUnknown
  917.     {
  918.     public:
  919.         virtual HRESULT STDMETHODCALLTYPE GetActivityId( 
  920.             /* [out] */ GUID *pGUID) = 0;
  921.         
  922.     };
  923.     
  924. #else  /* C style interface */
  925.     typedef struct IObjectContextActivityVtbl
  926.     {
  927.         BEGIN_INTERFACE
  928.         
  929.         HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
  930.             IObjectContextActivity * This,
  931.             /* [in] */ REFIID riid,
  932.             /* [iid_is][out] */ void **ppvObject);
  933.         
  934.         ULONG ( STDMETHODCALLTYPE *AddRef )( 
  935.             IObjectContextActivity * This);
  936.         
  937.         ULONG ( STDMETHODCALLTYPE *Release )( 
  938.             IObjectContextActivity * This);
  939.         
  940.         HRESULT ( STDMETHODCALLTYPE *GetActivityId )( 
  941.             IObjectContextActivity * This,
  942.             /* [out] */ GUID *pGUID);
  943.         
  944.         END_INTERFACE
  945.     } IObjectContextActivityVtbl;
  946.     interface IObjectContextActivity
  947.     {
  948.         CONST_VTBL struct IObjectContextActivityVtbl *lpVtbl;
  949.     };
  950.     
  951. #ifdef COBJMACROS
  952. #define IObjectContextActivity_QueryInterface(This,riid,ppvObject)
  953.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  954. #define IObjectContextActivity_AddRef(This)
  955.     (This)->lpVtbl -> AddRef(This)
  956. #define IObjectContextActivity_Release(This)
  957.     (This)->lpVtbl -> Release(This)
  958. #define IObjectContextActivity_GetActivityId(This,pGUID)
  959.     (This)->lpVtbl -> GetActivityId(This,pGUID)
  960. #endif /* COBJMACROS */
  961. #endif  /* C style interface */
  962. HRESULT STDMETHODCALLTYPE IObjectContextActivity_GetActivityId_Proxy( 
  963.     IObjectContextActivity * This,
  964.     /* [out] */ GUID *pGUID);
  965. void __RPC_STUB IObjectContextActivity_GetActivityId_Stub(
  966.     IRpcStubBuffer *This,
  967.     IRpcChannelBuffer *_pRpcChannelBuffer,
  968.     PRPC_MESSAGE _pRpcMessage,
  969.     DWORD *_pdwStubPhase);
  970. #endif  /* __IObjectContextActivity_INTERFACE_DEFINED__ */
  971. #ifndef __IObjectContextInfo_INTERFACE_DEFINED__
  972. #define __IObjectContextInfo_INTERFACE_DEFINED__
  973. /* interface IObjectContextInfo */
  974. /* [uuid][unique][object][local] */ 
  975. EXTERN_C const IID IID_IObjectContextInfo;
  976. #if defined(__cplusplus) && !defined(CINTERFACE)
  977.     
  978.     MIDL_INTERFACE("75B52DDB-E8ED-11d1-93AD-00AA00BA3258")
  979.     IObjectContextInfo : public IUnknown
  980.     {
  981.     public:
  982.         virtual BOOL STDMETHODCALLTYPE IsInTransaction( void) = 0;
  983.         
  984.         virtual HRESULT STDMETHODCALLTYPE GetTransaction( 
  985.             IUnknown **pptrans) = 0;
  986.         
  987.         virtual HRESULT STDMETHODCALLTYPE GetTransactionId( 
  988.             /* [out] */ GUID *pGuid) = 0;
  989.         
  990.         virtual HRESULT STDMETHODCALLTYPE GetActivityId( 
  991.             /* [out] */ GUID *pGUID) = 0;
  992.         
  993.         virtual HRESULT STDMETHODCALLTYPE GetContextId( 
  994.             /* [out] */ GUID *pGuid) = 0;
  995.         
  996.     };
  997.     
  998. #else  /* C style interface */
  999.     typedef struct IObjectContextInfoVtbl
  1000.     {
  1001.         BEGIN_INTERFACE
  1002.         
  1003.         HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
  1004.             IObjectContextInfo * This,
  1005.             /* [in] */ REFIID riid,
  1006.             /* [iid_is][out] */ void **ppvObject);
  1007.         
  1008.         ULONG ( STDMETHODCALLTYPE *AddRef )( 
  1009.             IObjectContextInfo * This);
  1010.         
  1011.         ULONG ( STDMETHODCALLTYPE *Release )( 
  1012.             IObjectContextInfo * This);
  1013.         
  1014.         BOOL ( STDMETHODCALLTYPE *IsInTransaction )( 
  1015.             IObjectContextInfo * This);
  1016.         
  1017.         HRESULT ( STDMETHODCALLTYPE *GetTransaction )( 
  1018.             IObjectContextInfo * This,
  1019.             IUnknown **pptrans);
  1020.         
  1021.         HRESULT ( STDMETHODCALLTYPE *GetTransactionId )( 
  1022.             IObjectContextInfo * This,
  1023.             /* [out] */ GUID *pGuid);
  1024.         
  1025.         HRESULT ( STDMETHODCALLTYPE *GetActivityId )( 
  1026.             IObjectContextInfo * This,
  1027.             /* [out] */ GUID *pGUID);
  1028.         
  1029.         HRESULT ( STDMETHODCALLTYPE *GetContextId )( 
  1030.             IObjectContextInfo * This,
  1031.             /* [out] */ GUID *pGuid);
  1032.         
  1033.         END_INTERFACE
  1034.     } IObjectContextInfoVtbl;
  1035.     interface IObjectContextInfo
  1036.     {
  1037.         CONST_VTBL struct IObjectContextInfoVtbl *lpVtbl;
  1038.     };
  1039.     
  1040. #ifdef COBJMACROS
  1041. #define IObjectContextInfo_QueryInterface(This,riid,ppvObject)
  1042.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  1043. #define IObjectContextInfo_AddRef(This)
  1044.     (This)->lpVtbl -> AddRef(This)
  1045. #define IObjectContextInfo_Release(This)
  1046.     (This)->lpVtbl -> Release(This)
  1047. #define IObjectContextInfo_IsInTransaction(This)
  1048.     (This)->lpVtbl -> IsInTransaction(This)
  1049. #define IObjectContextInfo_GetTransaction(This,pptrans)
  1050.     (This)->lpVtbl -> GetTransaction(This,pptrans)
  1051. #define IObjectContextInfo_GetTransactionId(This,pGuid)
  1052.     (This)->lpVtbl -> GetTransactionId(This,pGuid)
  1053. #define IObjectContextInfo_GetActivityId(This,pGUID)
  1054.     (This)->lpVtbl -> GetActivityId(This,pGUID)
  1055. #define IObjectContextInfo_GetContextId(This,pGuid)
  1056.     (This)->lpVtbl -> GetContextId(This,pGuid)
  1057. #endif /* COBJMACROS */
  1058. #endif  /* C style interface */
  1059. BOOL STDMETHODCALLTYPE IObjectContextInfo_IsInTransaction_Proxy( 
  1060.     IObjectContextInfo * This);
  1061. void __RPC_STUB IObjectContextInfo_IsInTransaction_Stub(
  1062.     IRpcStubBuffer *This,
  1063.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1064.     PRPC_MESSAGE _pRpcMessage,
  1065.     DWORD *_pdwStubPhase);
  1066. HRESULT STDMETHODCALLTYPE IObjectContextInfo_GetTransaction_Proxy( 
  1067.     IObjectContextInfo * This,
  1068.     IUnknown **pptrans);
  1069. void __RPC_STUB IObjectContextInfo_GetTransaction_Stub(
  1070.     IRpcStubBuffer *This,
  1071.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1072.     PRPC_MESSAGE _pRpcMessage,
  1073.     DWORD *_pdwStubPhase);
  1074. HRESULT STDMETHODCALLTYPE IObjectContextInfo_GetTransactionId_Proxy( 
  1075.     IObjectContextInfo * This,
  1076.     /* [out] */ GUID *pGuid);
  1077. void __RPC_STUB IObjectContextInfo_GetTransactionId_Stub(
  1078.     IRpcStubBuffer *This,
  1079.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1080.     PRPC_MESSAGE _pRpcMessage,
  1081.     DWORD *_pdwStubPhase);
  1082. HRESULT STDMETHODCALLTYPE IObjectContextInfo_GetActivityId_Proxy( 
  1083.     IObjectContextInfo * This,
  1084.     /* [out] */ GUID *pGUID);
  1085. void __RPC_STUB IObjectContextInfo_GetActivityId_Stub(
  1086.     IRpcStubBuffer *This,
  1087.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1088.     PRPC_MESSAGE _pRpcMessage,
  1089.     DWORD *_pdwStubPhase);
  1090. HRESULT STDMETHODCALLTYPE IObjectContextInfo_GetContextId_Proxy( 
  1091.     IObjectContextInfo * This,
  1092.     /* [out] */ GUID *pGuid);
  1093. void __RPC_STUB IObjectContextInfo_GetContextId_Stub(
  1094.     IRpcStubBuffer *This,
  1095.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1096.     PRPC_MESSAGE _pRpcMessage,
  1097.     DWORD *_pdwStubPhase);
  1098. #endif  /* __IObjectContextInfo_INTERFACE_DEFINED__ */
  1099. #ifndef __IObjectContextInfo2_INTERFACE_DEFINED__
  1100. #define __IObjectContextInfo2_INTERFACE_DEFINED__
  1101. /* interface IObjectContextInfo2 */
  1102. /* [uuid][unique][object][local] */ 
  1103. EXTERN_C const IID IID_IObjectContextInfo2;
  1104. #if defined(__cplusplus) && !defined(CINTERFACE)
  1105.     
  1106.     MIDL_INTERFACE("594BE71A-4BC4-438b-9197-CFD176248B09")
  1107.     IObjectContextInfo2 : public IObjectContextInfo
  1108.     {
  1109.     public:
  1110.         virtual HRESULT STDMETHODCALLTYPE GetPartitionId( 
  1111.             /* [out] */ GUID *pGuid) = 0;
  1112.         
  1113.         virtual HRESULT STDMETHODCALLTYPE GetApplicationId( 
  1114.             /* [out] */ GUID *pGuid) = 0;
  1115.         
  1116.         virtual HRESULT STDMETHODCALLTYPE GetApplicationInstanceId( 
  1117.             /* [out] */ GUID *pGuid) = 0;
  1118.         
  1119.     };
  1120.     
  1121. #else  /* C style interface */
  1122.     typedef struct IObjectContextInfo2Vtbl
  1123.     {
  1124.         BEGIN_INTERFACE
  1125.         
  1126.         HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
  1127.             IObjectContextInfo2 * This,
  1128.             /* [in] */ REFIID riid,
  1129.             /* [iid_is][out] */ void **ppvObject);
  1130.         
  1131.         ULONG ( STDMETHODCALLTYPE *AddRef )( 
  1132.             IObjectContextInfo2 * This);
  1133.         
  1134.         ULONG ( STDMETHODCALLTYPE *Release )( 
  1135.             IObjectContextInfo2 * This);
  1136.         
  1137.         BOOL ( STDMETHODCALLTYPE *IsInTransaction )( 
  1138.             IObjectContextInfo2 * This);
  1139.         
  1140.         HRESULT ( STDMETHODCALLTYPE *GetTransaction )( 
  1141.             IObjectContextInfo2 * This,
  1142.             IUnknown **pptrans);
  1143.         
  1144.         HRESULT ( STDMETHODCALLTYPE *GetTransactionId )( 
  1145.             IObjectContextInfo2 * This,
  1146.             /* [out] */ GUID *pGuid);
  1147.         
  1148.         HRESULT ( STDMETHODCALLTYPE *GetActivityId )( 
  1149.             IObjectContextInfo2 * This,
  1150.             /* [out] */ GUID *pGUID);
  1151.         
  1152.         HRESULT ( STDMETHODCALLTYPE *GetContextId )( 
  1153.             IObjectContextInfo2 * This,
  1154.             /* [out] */ GUID *pGuid);
  1155.         
  1156.         HRESULT ( STDMETHODCALLTYPE *GetPartitionId )( 
  1157.             IObjectContextInfo2 * This,
  1158.             /* [out] */ GUID *pGuid);
  1159.         
  1160.         HRESULT ( STDMETHODCALLTYPE *GetApplicationId )( 
  1161.             IObjectContextInfo2 * This,
  1162.             /* [out] */ GUID *pGuid);
  1163.         
  1164.         HRESULT ( STDMETHODCALLTYPE *GetApplicationInstanceId )( 
  1165.             IObjectContextInfo2 * This,
  1166.             /* [out] */ GUID *pGuid);
  1167.         
  1168.         END_INTERFACE
  1169.     } IObjectContextInfo2Vtbl;
  1170.     interface IObjectContextInfo2
  1171.     {
  1172.         CONST_VTBL struct IObjectContextInfo2Vtbl *lpVtbl;
  1173.     };
  1174.     
  1175. #ifdef COBJMACROS
  1176. #define IObjectContextInfo2_QueryInterface(This,riid,ppvObject)
  1177.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  1178. #define IObjectContextInfo2_AddRef(This)
  1179.     (This)->lpVtbl -> AddRef(This)
  1180. #define IObjectContextInfo2_Release(This)
  1181.     (This)->lpVtbl -> Release(This)
  1182. #define IObjectContextInfo2_IsInTransaction(This)
  1183.     (This)->lpVtbl -> IsInTransaction(This)
  1184. #define IObjectContextInfo2_GetTransaction(This,pptrans)
  1185.     (This)->lpVtbl -> GetTransaction(This,pptrans)
  1186. #define IObjectContextInfo2_GetTransactionId(This,pGuid)
  1187.     (This)->lpVtbl -> GetTransactionId(This,pGuid)
  1188. #define IObjectContextInfo2_GetActivityId(This,pGUID)
  1189.     (This)->lpVtbl -> GetActivityId(This,pGUID)
  1190. #define IObjectContextInfo2_GetContextId(This,pGuid)
  1191.     (This)->lpVtbl -> GetContextId(This,pGuid)
  1192. #define IObjectContextInfo2_GetPartitionId(This,pGuid)
  1193.     (This)->lpVtbl -> GetPartitionId(This,pGuid)
  1194. #define IObjectContextInfo2_GetApplicationId(This,pGuid)
  1195.     (This)->lpVtbl -> GetApplicationId(This,pGuid)
  1196. #define IObjectContextInfo2_GetApplicationInstanceId(This,pGuid)
  1197.     (This)->lpVtbl -> GetApplicationInstanceId(This,pGuid)
  1198. #endif /* COBJMACROS */
  1199. #endif  /* C style interface */
  1200. HRESULT STDMETHODCALLTYPE IObjectContextInfo2_GetPartitionId_Proxy( 
  1201.     IObjectContextInfo2 * This,
  1202.     /* [out] */ GUID *pGuid);
  1203. void __RPC_STUB IObjectContextInfo2_GetPartitionId_Stub(
  1204.     IRpcStubBuffer *This,
  1205.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1206.     PRPC_MESSAGE _pRpcMessage,
  1207.     DWORD *_pdwStubPhase);
  1208. HRESULT STDMETHODCALLTYPE IObjectContextInfo2_GetApplicationId_Proxy( 
  1209.     IObjectContextInfo2 * This,
  1210.     /* [out] */ GUID *pGuid);
  1211. void __RPC_STUB IObjectContextInfo2_GetApplicationId_Stub(
  1212.     IRpcStubBuffer *This,
  1213.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1214.     PRPC_MESSAGE _pRpcMessage,
  1215.     DWORD *_pdwStubPhase);
  1216. HRESULT STDMETHODCALLTYPE IObjectContextInfo2_GetApplicationInstanceId_Proxy( 
  1217.     IObjectContextInfo2 * This,
  1218.     /* [out] */ GUID *pGuid);
  1219. void __RPC_STUB IObjectContextInfo2_GetApplicationInstanceId_Stub(
  1220.     IRpcStubBuffer *This,
  1221.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1222.     PRPC_MESSAGE _pRpcMessage,
  1223.     DWORD *_pdwStubPhase);
  1224. #endif  /* __IObjectContextInfo2_INTERFACE_DEFINED__ */
  1225. #ifndef __ITransactionStatus_INTERFACE_DEFINED__
  1226. #define __ITransactionStatus_INTERFACE_DEFINED__
  1227. /* interface ITransactionStatus */
  1228. /* [uuid][unique][object][local] */ 
  1229. EXTERN_C const IID IID_ITransactionStatus;
  1230. #if defined(__cplusplus) && !defined(CINTERFACE)
  1231.     
  1232.     MIDL_INTERFACE("61F589E8-3724-4898-A0A4-664AE9E1D1B4")
  1233.     ITransactionStatus : public IUnknown
  1234.     {
  1235.     public:
  1236.         virtual HRESULT STDMETHODCALLTYPE SetTransactionStatus( 
  1237.             HRESULT hrStatus) = 0;
  1238.         
  1239.         virtual HRESULT STDMETHODCALLTYPE GetTransactionStatus( 
  1240.             HRESULT *pHrStatus) = 0;
  1241.         
  1242.     };
  1243.     
  1244. #else  /* C style interface */
  1245.     typedef struct ITransactionStatusVtbl
  1246.     {
  1247.         BEGIN_INTERFACE
  1248.         
  1249.         HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
  1250.             ITransactionStatus * This,
  1251.             /* [in] */ REFIID riid,
  1252.             /* [iid_is][out] */ void **ppvObject);
  1253.         
  1254.         ULONG ( STDMETHODCALLTYPE *AddRef )( 
  1255.             ITransactionStatus * This);
  1256.         
  1257.         ULONG ( STDMETHODCALLTYPE *Release )( 
  1258.             ITransactionStatus * This);
  1259.         
  1260.         HRESULT ( STDMETHODCALLTYPE *SetTransactionStatus )( 
  1261.             ITransactionStatus * This,
  1262.             HRESULT hrStatus);
  1263.         
  1264.         HRESULT ( STDMETHODCALLTYPE *GetTransactionStatus )( 
  1265.             ITransactionStatus * This,
  1266.             HRESULT *pHrStatus);
  1267.         
  1268.         END_INTERFACE
  1269.     } ITransactionStatusVtbl;
  1270.     interface ITransactionStatus
  1271.     {
  1272.         CONST_VTBL struct ITransactionStatusVtbl *lpVtbl;
  1273.     };
  1274.     
  1275. #ifdef COBJMACROS
  1276. #define ITransactionStatus_QueryInterface(This,riid,ppvObject)
  1277.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  1278. #define ITransactionStatus_AddRef(This)
  1279.     (This)->lpVtbl -> AddRef(This)
  1280. #define ITransactionStatus_Release(This)
  1281.     (This)->lpVtbl -> Release(This)
  1282. #define ITransactionStatus_SetTransactionStatus(This,hrStatus)
  1283.     (This)->lpVtbl -> SetTransactionStatus(This,hrStatus)
  1284. #define ITransactionStatus_GetTransactionStatus(This,pHrStatus)
  1285.     (This)->lpVtbl -> GetTransactionStatus(This,pHrStatus)
  1286. #endif /* COBJMACROS */
  1287. #endif  /* C style interface */
  1288. HRESULT STDMETHODCALLTYPE ITransactionStatus_SetTransactionStatus_Proxy( 
  1289.     ITransactionStatus * This,
  1290.     HRESULT hrStatus);
  1291. void __RPC_STUB ITransactionStatus_SetTransactionStatus_Stub(
  1292.     IRpcStubBuffer *This,
  1293.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1294.     PRPC_MESSAGE _pRpcMessage,
  1295.     DWORD *_pdwStubPhase);
  1296. HRESULT STDMETHODCALLTYPE ITransactionStatus_GetTransactionStatus_Proxy( 
  1297.     ITransactionStatus * This,
  1298.     HRESULT *pHrStatus);
  1299. void __RPC_STUB ITransactionStatus_GetTransactionStatus_Stub(
  1300.     IRpcStubBuffer *This,
  1301.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1302.     PRPC_MESSAGE _pRpcMessage,
  1303.     DWORD *_pdwStubPhase);
  1304. #endif  /* __ITransactionStatus_INTERFACE_DEFINED__ */
  1305. #ifndef __IObjectContextTip_INTERFACE_DEFINED__
  1306. #define __IObjectContextTip_INTERFACE_DEFINED__
  1307. /* interface IObjectContextTip */
  1308. /* [object][uuid][unique][local] */ 
  1309. EXTERN_C const IID IID_IObjectContextTip;
  1310. #if defined(__cplusplus) && !defined(CINTERFACE)
  1311.     
  1312.     MIDL_INTERFACE("92FD41CA-BAD9-11d2-9A2D-00C04F797BC9")
  1313.     IObjectContextTip : public IUnknown
  1314.     {
  1315.     public:
  1316.         virtual HRESULT STDMETHODCALLTYPE GetTipUrl( 
  1317.             /* [retval][out] */ BSTR *pTipUrl) = 0;
  1318.         
  1319.     };
  1320.     
  1321. #else  /* C style interface */
  1322.     typedef struct IObjectContextTipVtbl
  1323.     {
  1324.         BEGIN_INTERFACE
  1325.         
  1326.         HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
  1327.             IObjectContextTip * This,
  1328.             /* [in] */ REFIID riid,
  1329.             /* [iid_is][out] */ void **ppvObject);
  1330.         
  1331.         ULONG ( STDMETHODCALLTYPE *AddRef )( 
  1332.             IObjectContextTip * This);
  1333.         
  1334.         ULONG ( STDMETHODCALLTYPE *Release )( 
  1335.             IObjectContextTip * This);
  1336.         
  1337.         HRESULT ( STDMETHODCALLTYPE *GetTipUrl )( 
  1338.             IObjectContextTip * This,
  1339.             /* [retval][out] */ BSTR *pTipUrl);
  1340.         
  1341.         END_INTERFACE
  1342.     } IObjectContextTipVtbl;
  1343.     interface IObjectContextTip
  1344.     {
  1345.         CONST_VTBL struct IObjectContextTipVtbl *lpVtbl;
  1346.     };
  1347.     
  1348. #ifdef COBJMACROS
  1349. #define IObjectContextTip_QueryInterface(This,riid,ppvObject)
  1350.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  1351. #define IObjectContextTip_AddRef(This)
  1352.     (This)->lpVtbl -> AddRef(This)
  1353. #define IObjectContextTip_Release(This)
  1354.     (This)->lpVtbl -> Release(This)
  1355. #define IObjectContextTip_GetTipUrl(This,pTipUrl)
  1356.     (This)->lpVtbl -> GetTipUrl(This,pTipUrl)
  1357. #endif /* COBJMACROS */
  1358. #endif  /* C style interface */
  1359. HRESULT STDMETHODCALLTYPE IObjectContextTip_GetTipUrl_Proxy( 
  1360.     IObjectContextTip * This,
  1361.     /* [retval][out] */ BSTR *pTipUrl);
  1362. void __RPC_STUB IObjectContextTip_GetTipUrl_Stub(
  1363.     IRpcStubBuffer *This,
  1364.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1365.     PRPC_MESSAGE _pRpcMessage,
  1366.     DWORD *_pdwStubPhase);
  1367. #endif  /* __IObjectContextTip_INTERFACE_DEFINED__ */
  1368. #ifndef __IPlaybackControl_INTERFACE_DEFINED__
  1369. #define __IPlaybackControl_INTERFACE_DEFINED__
  1370. /* interface IPlaybackControl */
  1371. /* [object][unique][uuid] */ 
  1372. EXTERN_C const IID IID_IPlaybackControl;
  1373. #if defined(__cplusplus) && !defined(CINTERFACE)
  1374.     
  1375.     MIDL_INTERFACE("51372afd-cae7-11cf-be81-00aa00a2fa25")
  1376.     IPlaybackControl : public IUnknown
  1377.     {
  1378.     public:
  1379.         virtual HRESULT STDMETHODCALLTYPE FinalClientRetry( void) = 0;
  1380.         
  1381.         virtual HRESULT STDMETHODCALLTYPE FinalServerRetry( void) = 0;
  1382.         
  1383.     };
  1384.     
  1385. #else  /* C style interface */
  1386.     typedef struct IPlaybackControlVtbl
  1387.     {
  1388.         BEGIN_INTERFACE
  1389.         
  1390.         HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
  1391.             IPlaybackControl * This,
  1392.             /* [in] */ REFIID riid,
  1393.             /* [iid_is][out] */ void **ppvObject);
  1394.         
  1395.         ULONG ( STDMETHODCALLTYPE *AddRef )( 
  1396.             IPlaybackControl * This);
  1397.         
  1398.         ULONG ( STDMETHODCALLTYPE *Release )( 
  1399.             IPlaybackControl * This);
  1400.         
  1401.         HRESULT ( STDMETHODCALLTYPE *FinalClientRetry )( 
  1402.             IPlaybackControl * This);
  1403.         
  1404.         HRESULT ( STDMETHODCALLTYPE *FinalServerRetry )( 
  1405.             IPlaybackControl * This);
  1406.         
  1407.         END_INTERFACE
  1408.     } IPlaybackControlVtbl;
  1409.     interface IPlaybackControl
  1410.     {
  1411.         CONST_VTBL struct IPlaybackControlVtbl *lpVtbl;
  1412.     };
  1413.     
  1414. #ifdef COBJMACROS
  1415. #define IPlaybackControl_QueryInterface(This,riid,ppvObject)
  1416.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  1417. #define IPlaybackControl_AddRef(This)
  1418.     (This)->lpVtbl -> AddRef(This)
  1419. #define IPlaybackControl_Release(This)
  1420.     (This)->lpVtbl -> Release(This)
  1421. #define IPlaybackControl_FinalClientRetry(This)
  1422.     (This)->lpVtbl -> FinalClientRetry(This)
  1423. #define IPlaybackControl_FinalServerRetry(This)
  1424.     (This)->lpVtbl -> FinalServerRetry(This)
  1425. #endif /* COBJMACROS */
  1426. #endif  /* C style interface */
  1427. HRESULT STDMETHODCALLTYPE IPlaybackControl_FinalClientRetry_Proxy( 
  1428.     IPlaybackControl * This);
  1429. void __RPC_STUB IPlaybackControl_FinalClientRetry_Stub(
  1430.     IRpcStubBuffer *This,
  1431.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1432.     PRPC_MESSAGE _pRpcMessage,
  1433.     DWORD *_pdwStubPhase);
  1434. HRESULT STDMETHODCALLTYPE IPlaybackControl_FinalServerRetry_Proxy( 
  1435.     IPlaybackControl * This);
  1436. void __RPC_STUB IPlaybackControl_FinalServerRetry_Stub(
  1437.     IRpcStubBuffer *This,
  1438.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1439.     PRPC_MESSAGE _pRpcMessage,
  1440.     DWORD *_pdwStubPhase);
  1441. #endif  /* __IPlaybackControl_INTERFACE_DEFINED__ */
  1442. #ifndef __IGetContextProperties_INTERFACE_DEFINED__
  1443. #define __IGetContextProperties_INTERFACE_DEFINED__
  1444. /* interface IGetContextProperties */
  1445. /* [object][unique][uuid][local] */ 
  1446. EXTERN_C const IID IID_IGetContextProperties;
  1447. #if defined(__cplusplus) && !defined(CINTERFACE)
  1448.     
  1449.     MIDL_INTERFACE("51372af4-cae7-11cf-be81-00aa00a2fa25")
  1450.     IGetContextProperties : public IUnknown
  1451.     {
  1452.     public:
  1453.         virtual HRESULT STDMETHODCALLTYPE Count( 
  1454.             /* [retval][out] */ long *plCount) = 0;
  1455.         
  1456.         virtual HRESULT STDMETHODCALLTYPE GetProperty( 
  1457.             /* [in] */ BSTR name,
  1458.             /* [retval][out] */ VARIANT *pProperty) = 0;
  1459.         
  1460.         virtual HRESULT STDMETHODCALLTYPE EnumNames( 
  1461.             /* [retval][out] */ IEnumNames **ppenum) = 0;
  1462.         
  1463.     };
  1464.     
  1465. #else  /* C style interface */
  1466.     typedef struct IGetContextPropertiesVtbl
  1467.     {
  1468.         BEGIN_INTERFACE
  1469.         
  1470.         HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
  1471.             IGetContextProperties * This,
  1472.             /* [in] */ REFIID riid,
  1473.             /* [iid_is][out] */ void **ppvObject);
  1474.         
  1475.         ULONG ( STDMETHODCALLTYPE *AddRef )( 
  1476.             IGetContextProperties * This);
  1477.         
  1478.         ULONG ( STDMETHODCALLTYPE *Release )( 
  1479.             IGetContextProperties * This);
  1480.         
  1481.         HRESULT ( STDMETHODCALLTYPE *Count )( 
  1482.             IGetContextProperties * This,
  1483.             /* [retval][out] */ long *plCount);
  1484.         
  1485.         HRESULT ( STDMETHODCALLTYPE *GetProperty )( 
  1486.             IGetContextProperties * This,
  1487.             /* [in] */ BSTR name,
  1488.             /* [retval][out] */ VARIANT *pProperty);
  1489.         
  1490.         HRESULT ( STDMETHODCALLTYPE *EnumNames )( 
  1491.             IGetContextProperties * This,
  1492.             /* [retval][out] */ IEnumNames **ppenum);
  1493.         
  1494.         END_INTERFACE
  1495.     } IGetContextPropertiesVtbl;
  1496.     interface IGetContextProperties
  1497.     {
  1498.         CONST_VTBL struct IGetContextPropertiesVtbl *lpVtbl;
  1499.     };
  1500.     
  1501. #ifdef COBJMACROS
  1502. #define IGetContextProperties_QueryInterface(This,riid,ppvObject)
  1503.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  1504. #define IGetContextProperties_AddRef(This)
  1505.     (This)->lpVtbl -> AddRef(This)
  1506. #define IGetContextProperties_Release(This)
  1507.     (This)->lpVtbl -> Release(This)
  1508. #define IGetContextProperties_Count(This,plCount)
  1509.     (This)->lpVtbl -> Count(This,plCount)
  1510. #define IGetContextProperties_GetProperty(This,name,pProperty)
  1511.     (This)->lpVtbl -> GetProperty(This,name,pProperty)
  1512. #define IGetContextProperties_EnumNames(This,ppenum)
  1513.     (This)->lpVtbl -> EnumNames(This,ppenum)
  1514. #endif /* COBJMACROS */
  1515. #endif  /* C style interface */
  1516. HRESULT STDMETHODCALLTYPE IGetContextProperties_Count_Proxy( 
  1517.     IGetContextProperties * This,
  1518.     /* [retval][out] */ long *plCount);
  1519. void __RPC_STUB IGetContextProperties_Count_Stub(
  1520.     IRpcStubBuffer *This,
  1521.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1522.     PRPC_MESSAGE _pRpcMessage,
  1523.     DWORD *_pdwStubPhase);
  1524. HRESULT STDMETHODCALLTYPE IGetContextProperties_GetProperty_Proxy( 
  1525.     IGetContextProperties * This,
  1526.     /* [in] */ BSTR name,
  1527.     /* [retval][out] */ VARIANT *pProperty);
  1528. void __RPC_STUB IGetContextProperties_GetProperty_Stub(
  1529.     IRpcStubBuffer *This,
  1530.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1531.     PRPC_MESSAGE _pRpcMessage,
  1532.     DWORD *_pdwStubPhase);
  1533. HRESULT STDMETHODCALLTYPE IGetContextProperties_EnumNames_Proxy( 
  1534.     IGetContextProperties * This,
  1535.     /* [retval][out] */ IEnumNames **ppenum);
  1536. void __RPC_STUB IGetContextProperties_EnumNames_Stub(
  1537.     IRpcStubBuffer *This,
  1538.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1539.     PRPC_MESSAGE _pRpcMessage,
  1540.     DWORD *_pdwStubPhase);
  1541. #endif  /* __IGetContextProperties_INTERFACE_DEFINED__ */
  1542. /* interface __MIDL_itf_autosvcs_0356 */
  1543. /* [local] */ 
  1544. typedef 
  1545. enum tagTransactionVote
  1546.     { TxCommit = 0,
  1547. TxAbort = TxCommit + 1
  1548.     }  TransactionVote;
  1549. extern RPC_IF_HANDLE __MIDL_itf_autosvcs_0356_v0_0_c_ifspec;
  1550. extern RPC_IF_HANDLE __MIDL_itf_autosvcs_0356_v0_0_s_ifspec;
  1551. #ifndef __IContextState_INTERFACE_DEFINED__
  1552. #define __IContextState_INTERFACE_DEFINED__
  1553. /* interface IContextState */
  1554. /* [uuid][unique][object][local] */ 
  1555. EXTERN_C const IID IID_IContextState;
  1556. #if defined(__cplusplus) && !defined(CINTERFACE)
  1557.     
  1558.     MIDL_INTERFACE("3C05E54B-A42A-11d2-AFC4-00C04F8EE1C4")
  1559.     IContextState : public IUnknown
  1560.     {
  1561.     public:
  1562.         virtual HRESULT STDMETHODCALLTYPE SetDeactivateOnReturn( 
  1563.             VARIANT_BOOL bDeactivate) = 0;
  1564.         
  1565.         virtual HRESULT STDMETHODCALLTYPE GetDeactivateOnReturn( 
  1566.             /* [out] */ VARIANT_BOOL *pbDeactivate) = 0;
  1567.         
  1568.         virtual HRESULT STDMETHODCALLTYPE SetMyTransactionVote( 
  1569.             TransactionVote txVote) = 0;
  1570.         
  1571.         virtual HRESULT STDMETHODCALLTYPE GetMyTransactionVote( 
  1572.             /* [out] */ TransactionVote *ptxVote) = 0;
  1573.         
  1574.     };
  1575.     
  1576. #else  /* C style interface */
  1577.     typedef struct IContextStateVtbl
  1578.     {
  1579.         BEGIN_INTERFACE
  1580.         
  1581.         HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
  1582.             IContextState * This,
  1583.             /* [in] */ REFIID riid,
  1584.             /* [iid_is][out] */ void **ppvObject);
  1585.         
  1586.         ULONG ( STDMETHODCALLTYPE *AddRef )( 
  1587.             IContextState * This);
  1588.         
  1589.         ULONG ( STDMETHODCALLTYPE *Release )( 
  1590.             IContextState * This);
  1591.         
  1592.         HRESULT ( STDMETHODCALLTYPE *SetDeactivateOnReturn )( 
  1593.             IContextState * This,
  1594.             VARIANT_BOOL bDeactivate);
  1595.         
  1596.         HRESULT ( STDMETHODCALLTYPE *GetDeactivateOnReturn )( 
  1597.             IContextState * This,
  1598.             /* [out] */ VARIANT_BOOL *pbDeactivate);
  1599.         
  1600.         HRESULT ( STDMETHODCALLTYPE *SetMyTransactionVote )( 
  1601.             IContextState * This,
  1602.             TransactionVote txVote);
  1603.         
  1604.         HRESULT ( STDMETHODCALLTYPE *GetMyTransactionVote )( 
  1605.             IContextState * This,
  1606.             /* [out] */ TransactionVote *ptxVote);
  1607.         
  1608.         END_INTERFACE
  1609.     } IContextStateVtbl;
  1610.     interface IContextState
  1611.     {
  1612.         CONST_VTBL struct IContextStateVtbl *lpVtbl;
  1613.     };
  1614.     
  1615. #ifdef COBJMACROS
  1616. #define IContextState_QueryInterface(This,riid,ppvObject)
  1617.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  1618. #define IContextState_AddRef(This)
  1619.     (This)->lpVtbl -> AddRef(This)
  1620. #define IContextState_Release(This)
  1621.     (This)->lpVtbl -> Release(This)
  1622. #define IContextState_SetDeactivateOnReturn(This,bDeactivate)
  1623.     (This)->lpVtbl -> SetDeactivateOnReturn(This,bDeactivate)
  1624. #define IContextState_GetDeactivateOnReturn(This,pbDeactivate)
  1625.     (This)->lpVtbl -> GetDeactivateOnReturn(This,pbDeactivate)
  1626. #define IContextState_SetMyTransactionVote(This,txVote)
  1627.     (This)->lpVtbl -> SetMyTransactionVote(This,txVote)
  1628. #define IContextState_GetMyTransactionVote(This,ptxVote)
  1629.     (This)->lpVtbl -> GetMyTransactionVote(This,ptxVote)
  1630. #endif /* COBJMACROS */
  1631. #endif  /* C style interface */
  1632. HRESULT STDMETHODCALLTYPE IContextState_SetDeactivateOnReturn_Proxy( 
  1633.     IContextState * This,
  1634.     VARIANT_BOOL bDeactivate);
  1635. void __RPC_STUB IContextState_SetDeactivateOnReturn_Stub(
  1636.     IRpcStubBuffer *This,
  1637.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1638.     PRPC_MESSAGE _pRpcMessage,
  1639.     DWORD *_pdwStubPhase);
  1640. HRESULT STDMETHODCALLTYPE IContextState_GetDeactivateOnReturn_Proxy( 
  1641.     IContextState * This,
  1642.     /* [out] */ VARIANT_BOOL *pbDeactivate);
  1643. void __RPC_STUB IContextState_GetDeactivateOnReturn_Stub(
  1644.     IRpcStubBuffer *This,
  1645.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1646.     PRPC_MESSAGE _pRpcMessage,
  1647.     DWORD *_pdwStubPhase);
  1648. HRESULT STDMETHODCALLTYPE IContextState_SetMyTransactionVote_Proxy( 
  1649.     IContextState * This,
  1650.     TransactionVote txVote);
  1651. void __RPC_STUB IContextState_SetMyTransactionVote_Stub(
  1652.     IRpcStubBuffer *This,
  1653.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1654.     PRPC_MESSAGE _pRpcMessage,
  1655.     DWORD *_pdwStubPhase);
  1656. HRESULT STDMETHODCALLTYPE IContextState_GetMyTransactionVote_Proxy( 
  1657.     IContextState * This,
  1658.     /* [out] */ TransactionVote *ptxVote);
  1659. void __RPC_STUB IContextState_GetMyTransactionVote_Stub(
  1660.     IRpcStubBuffer *This,
  1661.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1662.     PRPC_MESSAGE _pRpcMessage,
  1663.     DWORD *_pdwStubPhase);
  1664. #endif  /* __IContextState_INTERFACE_DEFINED__ */
  1665. #ifndef __IPoolManager_INTERFACE_DEFINED__
  1666. #define __IPoolManager_INTERFACE_DEFINED__
  1667. /* interface IPoolManager */
  1668. /* [uuid][unique][object][local] */ 
  1669. EXTERN_C const IID IID_IPoolManager;
  1670. #if defined(__cplusplus) && !defined(CINTERFACE)
  1671.     
  1672.     MIDL_INTERFACE("0a469861-5a91-43a0-99b6-d5e179bb0631")
  1673.     IPoolManager : public IDispatch
  1674.     {
  1675.     public:
  1676.         virtual /* [id] */ HRESULT STDMETHODCALLTYPE ShutdownPool( 
  1677.             /* [in] */ BSTR CLSIDOrProgID) = 0;
  1678.         
  1679.     };
  1680.     
  1681. #else  /* C style interface */
  1682.     typedef struct IPoolManagerVtbl
  1683.     {
  1684.         BEGIN_INTERFACE
  1685.         
  1686.         HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
  1687.             IPoolManager * This,
  1688.             /* [in] */ REFIID riid,
  1689.             /* [iid_is][out] */ void **ppvObject);
  1690.         
  1691.         ULONG ( STDMETHODCALLTYPE *AddRef )( 
  1692.             IPoolManager * This);
  1693.         
  1694.         ULONG ( STDMETHODCALLTYPE *Release )( 
  1695.             IPoolManager * This);
  1696.         
  1697.         HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
  1698.             IPoolManager * This,
  1699.             /* [out] */ UINT *pctinfo);
  1700.         
  1701.         HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
  1702.             IPoolManager * This,
  1703.             /* [in] */ UINT iTInfo,
  1704.             /* [in] */ LCID lcid,
  1705.             /* [out] */ ITypeInfo **ppTInfo);
  1706.         
  1707.         HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
  1708.             IPoolManager * This,
  1709.             /* [in] */ REFIID riid,
  1710.             /* [size_is][in] */ LPOLESTR *rgszNames,
  1711.             /* [in] */ UINT cNames,
  1712.             /* [in] */ LCID lcid,
  1713.             /* [size_is][out] */ DISPID *rgDispId);
  1714.         
  1715.         /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
  1716.             IPoolManager * This,
  1717.             /* [in] */ DISPID dispIdMember,
  1718.             /* [in] */ REFIID riid,
  1719.             /* [in] */ LCID lcid,
  1720.             /* [in] */ WORD wFlags,
  1721.             /* [out][in] */ DISPPARAMS *pDispParams,
  1722.             /* [out] */ VARIANT *pVarResult,
  1723.             /* [out] */ EXCEPINFO *pExcepInfo,
  1724.             /* [out] */ UINT *puArgErr);
  1725.         
  1726.         /* [id] */ HRESULT ( STDMETHODCALLTYPE *ShutdownPool )( 
  1727.             IPoolManager * This,
  1728.             /* [in] */ BSTR CLSIDOrProgID);
  1729.         
  1730.         END_INTERFACE
  1731.     } IPoolManagerVtbl;
  1732.     interface IPoolManager
  1733.     {
  1734.         CONST_VTBL struct IPoolManagerVtbl *lpVtbl;
  1735.     };
  1736.     
  1737. #ifdef COBJMACROS
  1738. #define IPoolManager_QueryInterface(This,riid,ppvObject)
  1739.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  1740. #define IPoolManager_AddRef(This)
  1741.     (This)->lpVtbl -> AddRef(This)
  1742. #define IPoolManager_Release(This)
  1743.     (This)->lpVtbl -> Release(This)
  1744. #define IPoolManager_GetTypeInfoCount(This,pctinfo)
  1745.     (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)
  1746. #define IPoolManager_GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  1747.     (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  1748. #define IPoolManager_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  1749.     (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  1750. #define IPoolManager_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  1751.     (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  1752. #define IPoolManager_ShutdownPool(This,CLSIDOrProgID)
  1753.     (This)->lpVtbl -> ShutdownPool(This,CLSIDOrProgID)
  1754. #endif /* COBJMACROS */
  1755. #endif  /* C style interface */
  1756. /* [id] */ HRESULT STDMETHODCALLTYPE IPoolManager_ShutdownPool_Proxy( 
  1757.     IPoolManager * This,
  1758.     /* [in] */ BSTR CLSIDOrProgID);
  1759. void __RPC_STUB IPoolManager_ShutdownPool_Stub(
  1760.     IRpcStubBuffer *This,
  1761.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1762.     PRPC_MESSAGE _pRpcMessage,
  1763.     DWORD *_pdwStubPhase);
  1764. #endif  /* __IPoolManager_INTERFACE_DEFINED__ */
  1765. #ifndef __ISelectCOMLBServer_INTERFACE_DEFINED__
  1766. #define __ISelectCOMLBServer_INTERFACE_DEFINED__
  1767. /* interface ISelectCOMLBServer */
  1768. /* [object][unique][uuid][local] */ 
  1769. EXTERN_C const IID IID_ISelectCOMLBServer;
  1770. #if defined(__cplusplus) && !defined(CINTERFACE)
  1771.     
  1772.     MIDL_INTERFACE("dcf443f4-3f8a-4872-b9f0-369a796d12d6")
  1773.     ISelectCOMLBServer : public IUnknown
  1774.     {
  1775.     public:
  1776.         virtual HRESULT STDMETHODCALLTYPE Init( void) = 0;
  1777.         
  1778.         virtual HRESULT STDMETHODCALLTYPE GetLBServer( 
  1779.             /* [in] */ IUnknown *pUnk) = 0;
  1780.         
  1781.     };
  1782.     
  1783. #else  /* C style interface */
  1784.     typedef struct ISelectCOMLBServerVtbl
  1785.     {
  1786.         BEGIN_INTERFACE
  1787.         
  1788.         HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
  1789.             ISelectCOMLBServer * This,
  1790.             /* [in] */ REFIID riid,
  1791.             /* [iid_is][out] */ void **ppvObject);
  1792.         
  1793.         ULONG ( STDMETHODCALLTYPE *AddRef )( 
  1794.             ISelectCOMLBServer * This);
  1795.         
  1796.         ULONG ( STDMETHODCALLTYPE *Release )( 
  1797.             ISelectCOMLBServer * This);
  1798.         
  1799.         HRESULT ( STDMETHODCALLTYPE *Init )( 
  1800.             ISelectCOMLBServer * This);
  1801.         
  1802.         HRESULT ( STDMETHODCALLTYPE *GetLBServer )( 
  1803.             ISelectCOMLBServer * This,
  1804.             /* [in] */ IUnknown *pUnk);
  1805.         
  1806.         END_INTERFACE
  1807.     } ISelectCOMLBServerVtbl;
  1808.     interface ISelectCOMLBServer
  1809.     {
  1810.         CONST_VTBL struct ISelectCOMLBServerVtbl *lpVtbl;
  1811.     };
  1812.     
  1813. #ifdef COBJMACROS
  1814. #define ISelectCOMLBServer_QueryInterface(This,riid,ppvObject)
  1815.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  1816. #define ISelectCOMLBServer_AddRef(This)
  1817.     (This)->lpVtbl -> AddRef(This)
  1818. #define ISelectCOMLBServer_Release(This)
  1819.     (This)->lpVtbl -> Release(This)
  1820. #define ISelectCOMLBServer_Init(This)
  1821.     (This)->lpVtbl -> Init(This)
  1822. #define ISelectCOMLBServer_GetLBServer(This,pUnk)
  1823.     (This)->lpVtbl -> GetLBServer(This,pUnk)
  1824. #endif /* COBJMACROS */
  1825. #endif  /* C style interface */
  1826. HRESULT STDMETHODCALLTYPE ISelectCOMLBServer_Init_Proxy( 
  1827.     ISelectCOMLBServer * This);
  1828. void __RPC_STUB ISelectCOMLBServer_Init_Stub(
  1829.     IRpcStubBuffer *This,
  1830.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1831.     PRPC_MESSAGE _pRpcMessage,
  1832.     DWORD *_pdwStubPhase);
  1833. HRESULT STDMETHODCALLTYPE ISelectCOMLBServer_GetLBServer_Proxy( 
  1834.     ISelectCOMLBServer * This,
  1835.     /* [in] */ IUnknown *pUnk);
  1836. void __RPC_STUB ISelectCOMLBServer_GetLBServer_Stub(
  1837.     IRpcStubBuffer *This,
  1838.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1839.     PRPC_MESSAGE _pRpcMessage,
  1840.     DWORD *_pdwStubPhase);
  1841. #endif  /* __ISelectCOMLBServer_INTERFACE_DEFINED__ */
  1842. #ifndef __ICOMLBArguments_INTERFACE_DEFINED__
  1843. #define __ICOMLBArguments_INTERFACE_DEFINED__
  1844. /* interface ICOMLBArguments */
  1845. /* [object][unique][uuid][local] */ 
  1846. EXTERN_C const IID IID_ICOMLBArguments;
  1847. #if defined(__cplusplus) && !defined(CINTERFACE)
  1848.     
  1849.     MIDL_INTERFACE("3a0f150f-8ee5-4b94-b40e-aef2f9e42ed2")
  1850.     ICOMLBArguments : public IUnknown
  1851.     {
  1852.     public:
  1853.         virtual HRESULT STDMETHODCALLTYPE GetCLSID( 
  1854.             /* [out] */ CLSID *pCLSID) = 0;
  1855.         
  1856.         virtual HRESULT STDMETHODCALLTYPE SetCLSID( 
  1857.             /* [in] */ CLSID *pCLSID) = 0;
  1858.         
  1859.         virtual HRESULT STDMETHODCALLTYPE GetMachineName( 
  1860.             /* [in] */ ULONG cchSvr,
  1861.             /* [max_is][out] */ WCHAR szServerName[  ]) = 0;
  1862.         
  1863.         virtual HRESULT STDMETHODCALLTYPE SetMachineName( 
  1864.             /* [in] */ ULONG cchSvr,
  1865.             /* [size_is][in] */ WCHAR szServerName[  ]) = 0;
  1866.         
  1867.     };
  1868.     
  1869. #else  /* C style interface */
  1870.     typedef struct ICOMLBArgumentsVtbl
  1871.     {
  1872.         BEGIN_INTERFACE
  1873.         
  1874.         HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
  1875.             ICOMLBArguments * This,
  1876.             /* [in] */ REFIID riid,
  1877.             /* [iid_is][out] */ void **ppvObject);
  1878.         
  1879.         ULONG ( STDMETHODCALLTYPE *AddRef )( 
  1880.             ICOMLBArguments * This);
  1881.         
  1882.         ULONG ( STDMETHODCALLTYPE *Release )( 
  1883.             ICOMLBArguments * This);
  1884.         
  1885.         HRESULT ( STDMETHODCALLTYPE *GetCLSID )( 
  1886.             ICOMLBArguments * This,
  1887.             /* [out] */ CLSID *pCLSID);
  1888.         
  1889.         HRESULT ( STDMETHODCALLTYPE *SetCLSID )( 
  1890.             ICOMLBArguments * This,
  1891.             /* [in] */ CLSID *pCLSID);
  1892.         
  1893.         HRESULT ( STDMETHODCALLTYPE *GetMachineName )( 
  1894.             ICOMLBArguments * This,
  1895.             /* [in] */ ULONG cchSvr,
  1896.             /* [max_is][out] */ WCHAR szServerName[  ]);
  1897.         
  1898.         HRESULT ( STDMETHODCALLTYPE *SetMachineName )( 
  1899.             ICOMLBArguments * This,
  1900.             /* [in] */ ULONG cchSvr,
  1901.             /* [size_is][in] */ WCHAR szServerName[  ]);
  1902.         
  1903.         END_INTERFACE
  1904.     } ICOMLBArgumentsVtbl;
  1905.     interface ICOMLBArguments
  1906.     {
  1907.         CONST_VTBL struct ICOMLBArgumentsVtbl *lpVtbl;
  1908.     };
  1909.     
  1910. #ifdef COBJMACROS
  1911. #define ICOMLBArguments_QueryInterface(This,riid,ppvObject)
  1912.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  1913. #define ICOMLBArguments_AddRef(This)
  1914.     (This)->lpVtbl -> AddRef(This)
  1915. #define ICOMLBArguments_Release(This)
  1916.     (This)->lpVtbl -> Release(This)
  1917. #define ICOMLBArguments_GetCLSID(This,pCLSID)
  1918.     (This)->lpVtbl -> GetCLSID(This,pCLSID)
  1919. #define ICOMLBArguments_SetCLSID(This,pCLSID)
  1920.     (This)->lpVtbl -> SetCLSID(This,pCLSID)
  1921. #define ICOMLBArguments_GetMachineName(This,cchSvr,szServerName)
  1922.     (This)->lpVtbl -> GetMachineName(This,cchSvr,szServerName)
  1923. #define ICOMLBArguments_SetMachineName(This,cchSvr,szServerName)
  1924.     (This)->lpVtbl -> SetMachineName(This,cchSvr,szServerName)
  1925. #endif /* COBJMACROS */
  1926. #endif  /* C style interface */
  1927. HRESULT STDMETHODCALLTYPE ICOMLBArguments_GetCLSID_Proxy( 
  1928.     ICOMLBArguments * This,
  1929.     /* [out] */ CLSID *pCLSID);
  1930. void __RPC_STUB ICOMLBArguments_GetCLSID_Stub(
  1931.     IRpcStubBuffer *This,
  1932.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1933.     PRPC_MESSAGE _pRpcMessage,
  1934.     DWORD *_pdwStubPhase);
  1935. HRESULT STDMETHODCALLTYPE ICOMLBArguments_SetCLSID_Proxy( 
  1936.     ICOMLBArguments * This,
  1937.     /* [in] */ CLSID *pCLSID);
  1938. void __RPC_STUB ICOMLBArguments_SetCLSID_Stub(
  1939.     IRpcStubBuffer *This,
  1940.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1941.     PRPC_MESSAGE _pRpcMessage,
  1942.     DWORD *_pdwStubPhase);
  1943. HRESULT STDMETHODCALLTYPE ICOMLBArguments_GetMachineName_Proxy( 
  1944.     ICOMLBArguments * This,
  1945.     /* [in] */ ULONG cchSvr,
  1946.     /* [max_is][out] */ WCHAR szServerName[  ]);
  1947. void __RPC_STUB ICOMLBArguments_GetMachineName_Stub(
  1948.     IRpcStubBuffer *This,
  1949.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1950.     PRPC_MESSAGE _pRpcMessage,
  1951.     DWORD *_pdwStubPhase);
  1952. HRESULT STDMETHODCALLTYPE ICOMLBArguments_SetMachineName_Proxy( 
  1953.     ICOMLBArguments * This,
  1954.     /* [in] */ ULONG cchSvr,
  1955.     /* [size_is][in] */ WCHAR szServerName[  ]);
  1956. void __RPC_STUB ICOMLBArguments_SetMachineName_Stub(
  1957.     IRpcStubBuffer *This,
  1958.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1959.     PRPC_MESSAGE _pRpcMessage,
  1960.     DWORD *_pdwStubPhase);
  1961. #endif  /* __ICOMLBArguments_INTERFACE_DEFINED__ */
  1962. /* interface __MIDL_itf_autosvcs_0360 */
  1963. /* [local] */ 
  1964. #if (_WIN32_WINNT >= 0x0500)
  1965. #define GetObjectContext(ppIOC) (CoGetObjectContext(IID_IObjectContext, (void **) (ppIOC)) == S_OK ? S_OK : CONTEXT_E_NOCONTEXT)
  1966. #else
  1967. extern HRESULT __cdecl GetObjectContext (IObjectContext** ppInstanceContext);
  1968. #endif
  1969. EXTERN_C HRESULT __stdcall CoCreateActivity(IUnknown* pIUnknown, REFIID riid, void** ppObj );
  1970. EXTERN_C HRESULT __stdcall CoEnterServiceDomain(IUnknown* pConfigObject);
  1971. EXTERN_C void __stdcall CoLeaveServiceDomain(IUnknown *pUnkStatus);
  1972. extern void* __cdecl SafeRef(REFIID rid, IUnknown* pUnk);
  1973. extern HRESULT __cdecl RecycleSurrogate(long lReasonCode);
  1974. extern RPC_IF_HANDLE __MIDL_itf_autosvcs_0360_v0_0_c_ifspec;
  1975. extern RPC_IF_HANDLE __MIDL_itf_autosvcs_0360_v0_0_s_ifspec;
  1976. #ifndef __ICrmLogControl_INTERFACE_DEFINED__
  1977. #define __ICrmLogControl_INTERFACE_DEFINED__
  1978. /* interface ICrmLogControl */
  1979. /* [unique][helpstring][uuid][object] */ 
  1980. EXTERN_C const IID IID_ICrmLogControl;
  1981. #if defined(__cplusplus) && !defined(CINTERFACE)
  1982.     
  1983.     MIDL_INTERFACE("A0E174B3-D26E-11d2-8F84-00805FC7BCD9")
  1984.     ICrmLogControl : public IUnknown
  1985.     {
  1986.     public:
  1987.         virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_TransactionUOW( 
  1988.             /* [retval][out] */ BSTR *pVal) = 0;
  1989.         
  1990.         virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE RegisterCompensator( 
  1991.             /* [in] */ LPCWSTR lpcwstrProgIdCompensator,
  1992.             /* [in] */ LPCWSTR lpcwstrDescription,
  1993.             /* [in] */ LONG lCrmRegFlags) = 0;
  1994.         
  1995.         virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE WriteLogRecordVariants( 
  1996.             /* [in] */ VARIANT *pLogRecord) = 0;
  1997.         
  1998.         virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE ForceLog( void) = 0;
  1999.         
  2000.         virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE ForgetLogRecord( void) = 0;
  2001.         
  2002.         virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE ForceTransactionToAbort( void) = 0;
  2003.         
  2004.         virtual HRESULT STDMETHODCALLTYPE WriteLogRecord( 
  2005.             /* [size_is][in] */ BLOB rgBlob[  ],
  2006.             /* [in] */ ULONG cBlob) = 0;
  2007.         
  2008.     };
  2009.     
  2010. #else  /* C style interface */
  2011.     typedef struct ICrmLogControlVtbl
  2012.     {
  2013.         BEGIN_INTERFACE
  2014.         
  2015.         HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
  2016.             ICrmLogControl * This,
  2017.             /* [in] */ REFIID riid,
  2018.             /* [iid_is][out] */ void **ppvObject);
  2019.         
  2020.         ULONG ( STDMETHODCALLTYPE *AddRef )( 
  2021.             ICrmLogControl * This);
  2022.         
  2023.         ULONG ( STDMETHODCALLTYPE *Release )( 
  2024.             ICrmLogControl * This);
  2025.         
  2026.         /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TransactionUOW )( 
  2027.             ICrmLogControl * This,
  2028.             /* [retval][out] */ BSTR *pVal);
  2029.         
  2030.         /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *RegisterCompensator )( 
  2031.             ICrmLogControl * This,
  2032.             /* [in] */ LPCWSTR lpcwstrProgIdCompensator,
  2033.             /* [in] */ LPCWSTR lpcwstrDescription,
  2034.             /* [in] */ LONG lCrmRegFlags);
  2035.         
  2036.         /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *WriteLogRecordVariants )( 
  2037.             ICrmLogControl * This,
  2038.             /* [in] */ VARIANT *pLogRecord);
  2039.         
  2040.         /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *ForceLog )( 
  2041.             ICrmLogControl * This);
  2042.         
  2043.         /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *ForgetLogRecord )( 
  2044.             ICrmLogControl * This);
  2045.         
  2046.         /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *ForceTransactionToAbort )( 
  2047.             ICrmLogControl * This);
  2048.         
  2049.         HRESULT ( STDMETHODCALLTYPE *WriteLogRecord )( 
  2050.             ICrmLogControl * This,
  2051.             /* [size_is][in] */ BLOB rgBlob[  ],
  2052.             /* [in] */ ULONG cBlob);
  2053.         
  2054.         END_INTERFACE
  2055.     } ICrmLogControlVtbl;
  2056.     interface ICrmLogControl
  2057.     {
  2058.         CONST_VTBL struct ICrmLogControlVtbl *lpVtbl;
  2059.     };
  2060.     
  2061. #ifdef COBJMACROS
  2062. #define ICrmLogControl_QueryInterface(This,riid,ppvObject)
  2063.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  2064. #define ICrmLogControl_AddRef(This)
  2065.     (This)->lpVtbl -> AddRef(This)
  2066. #define ICrmLogControl_Release(This)
  2067.     (This)->lpVtbl -> Release(This)
  2068. #define ICrmLogControl_get_TransactionUOW(This,pVal)
  2069.     (This)->lpVtbl -> get_TransactionUOW(This,pVal)
  2070. #define ICrmLogControl_RegisterCompensator(This,lpcwstrProgIdCompensator,lpcwstrDescription,lCrmRegFlags)
  2071.     (This)->lpVtbl -> RegisterCompensator(This,lpcwstrProgIdCompensator,lpcwstrDescription,lCrmRegFlags)
  2072. #define ICrmLogControl_WriteLogRecordVariants(This,pLogRecord)
  2073.     (This)->lpVtbl -> WriteLogRecordVariants(This,pLogRecord)
  2074. #define ICrmLogControl_ForceLog(This)
  2075.     (This)->lpVtbl -> ForceLog(This)
  2076. #define ICrmLogControl_ForgetLogRecord(This)
  2077.     (This)->lpVtbl -> ForgetLogRecord(This)
  2078. #define ICrmLogControl_ForceTransactionToAbort(This)
  2079.     (This)->lpVtbl -> ForceTransactionToAbort(This)
  2080. #define ICrmLogControl_WriteLogRecord(This,rgBlob,cBlob)
  2081.     (This)->lpVtbl -> WriteLogRecord(This,rgBlob,cBlob)
  2082. #endif /* COBJMACROS */
  2083. #endif  /* C style interface */
  2084. /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ICrmLogControl_get_TransactionUOW_Proxy( 
  2085.     ICrmLogControl * This,
  2086.     /* [retval][out] */ BSTR *pVal);
  2087. void __RPC_STUB ICrmLogControl_get_TransactionUOW_Stub(
  2088.     IRpcStubBuffer *This,
  2089.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2090.     PRPC_MESSAGE _pRpcMessage,
  2091.     DWORD *_pdwStubPhase);
  2092. /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE ICrmLogControl_RegisterCompensator_Proxy( 
  2093.     ICrmLogControl * This,
  2094.     /* [in] */ LPCWSTR lpcwstrProgIdCompensator,
  2095.     /* [in] */ LPCWSTR lpcwstrDescription,
  2096.     /* [in] */ LONG lCrmRegFlags);
  2097. void __RPC_STUB ICrmLogControl_RegisterCompensator_Stub(
  2098.     IRpcStubBuffer *This,
  2099.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2100.     PRPC_MESSAGE _pRpcMessage,
  2101.     DWORD *_pdwStubPhase);
  2102. /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE ICrmLogControl_WriteLogRecordVariants_Proxy( 
  2103.     ICrmLogControl * This,
  2104.     /* [in] */ VARIANT *pLogRecord);
  2105. void __RPC_STUB ICrmLogControl_WriteLogRecordVariants_Stub(
  2106.     IRpcStubBuffer *This,
  2107.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2108.     PRPC_MESSAGE _pRpcMessage,
  2109.     DWORD *_pdwStubPhase);
  2110. /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE ICrmLogControl_ForceLog_Proxy( 
  2111.     ICrmLogControl * This);
  2112. void __RPC_STUB ICrmLogControl_ForceLog_Stub(
  2113.     IRpcStubBuffer *This,
  2114.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2115.     PRPC_MESSAGE _pRpcMessage,
  2116.     DWORD *_pdwStubPhase);
  2117. /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE ICrmLogControl_ForgetLogRecord_Proxy( 
  2118.     ICrmLogControl * This);
  2119. void __RPC_STUB ICrmLogControl_ForgetLogRecord_Stub(
  2120.     IRpcStubBuffer *This,
  2121.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2122.     PRPC_MESSAGE _pRpcMessage,
  2123.     DWORD *_pdwStubPhase);
  2124. /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE ICrmLogControl_ForceTransactionToAbort_Proxy( 
  2125.     ICrmLogControl * This);
  2126. void __RPC_STUB ICrmLogControl_ForceTransactionToAbort_Stub(
  2127.     IRpcStubBuffer *This,
  2128.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2129.     PRPC_MESSAGE _pRpcMessage,
  2130.     DWORD *_pdwStubPhase);
  2131. HRESULT STDMETHODCALLTYPE ICrmLogControl_WriteLogRecord_Proxy( 
  2132.     ICrmLogControl * This,
  2133.     /* [size_is][in] */ BLOB rgBlob[  ],
  2134.     /* [in] */ ULONG cBlob);
  2135. void __RPC_STUB ICrmLogControl_WriteLogRecord_Stub(
  2136.     IRpcStubBuffer *This,
  2137.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2138.     PRPC_MESSAGE _pRpcMessage,
  2139.     DWORD *_pdwStubPhase);
  2140. #endif  /* __ICrmLogControl_INTERFACE_DEFINED__ */
  2141. #ifndef __ICrmCompensatorVariants_INTERFACE_DEFINED__
  2142. #define __ICrmCompensatorVariants_INTERFACE_DEFINED__
  2143. /* interface ICrmCompensatorVariants */
  2144. /* [unique][helpstring][uuid][object] */ 
  2145. EXTERN_C const IID IID_ICrmCompensatorVariants;
  2146. #if defined(__cplusplus) && !defined(CINTERFACE)
  2147.     
  2148.     MIDL_INTERFACE("F0BAF8E4-7804-11d1-82E9-00A0C91EEDE9")
  2149.     ICrmCompensatorVariants : public IUnknown
  2150.     {
  2151.     public:
  2152.         virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE SetLogControlVariants( 
  2153.             /* [in] */ ICrmLogControl *pLogControl) = 0;
  2154.         
  2155.         virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE BeginPrepareVariants( void) = 0;
  2156.         
  2157.         virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE PrepareRecordVariants( 
  2158.             /* [in] */ VARIANT *pLogRecord,
  2159.             /* [retval][out] */ VARIANT_BOOL *pbForget) = 0;
  2160.         
  2161.         virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE EndPrepareVariants( 
  2162.             /* [retval][out] */ VARIANT_BOOL *pbOkToPrepare) = 0;
  2163.         
  2164.         virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE BeginCommitVariants( 
  2165.             /* [in] */ VARIANT_BOOL bRecovery) = 0;
  2166.         
  2167.         virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE CommitRecordVariants( 
  2168.             /* [in] */ VARIANT *pLogRecord,
  2169.             /* [retval][out] */ VARIANT_BOOL *pbForget) = 0;
  2170.         
  2171.         virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE EndCommitVariants( void) = 0;
  2172.         
  2173.         virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE BeginAbortVariants( 
  2174.             /* [in] */ VARIANT_BOOL bRecovery) = 0;
  2175.         
  2176.         virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE AbortRecordVariants( 
  2177.             /* [in] */ VARIANT *pLogRecord,
  2178.             /* [retval][out] */ VARIANT_BOOL *pbForget) = 0;
  2179.         
  2180.         virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE EndAbortVariants( void) = 0;
  2181.         
  2182.     };
  2183.     
  2184. #else  /* C style interface */
  2185.     typedef struct ICrmCompensatorVariantsVtbl
  2186.     {
  2187.         BEGIN_INTERFACE
  2188.         
  2189.         HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
  2190.             ICrmCompensatorVariants * This,
  2191.             /* [in] */ REFIID riid,
  2192.             /* [iid_is][out] */ void **ppvObject);
  2193.         
  2194.         ULONG ( STDMETHODCALLTYPE *AddRef )( 
  2195.             ICrmCompensatorVariants * This);
  2196.         
  2197.         ULONG ( STDMETHODCALLTYPE *Release )( 
  2198.             ICrmCompensatorVariants * This);
  2199.         
  2200.         /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *SetLogControlVariants )( 
  2201.             ICrmCompensatorVariants * This,
  2202.             /* [in] */ ICrmLogControl *pLogControl);
  2203.         
  2204.         /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *BeginPrepareVariants )( 
  2205.             ICrmCompensatorVariants * This);
  2206.         
  2207.         /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *PrepareRecordVariants )( 
  2208.             ICrmCompensatorVariants * This,
  2209.             /* [in] */ VARIANT *pLogRecord,
  2210.             /* [retval][out] */ VARIANT_BOOL *pbForget);
  2211.         
  2212.         /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *EndPrepareVariants )( 
  2213.             ICrmCompensatorVariants * This,
  2214.             /* [retval][out] */ VARIANT_BOOL *pbOkToPrepare);
  2215.         
  2216.         /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *BeginCommitVariants )( 
  2217.             ICrmCompensatorVariants * This,
  2218.             /* [in] */ VARIANT_BOOL bRecovery);
  2219.         
  2220.         /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *CommitRecordVariants )( 
  2221.             ICrmCompensatorVariants * This,
  2222.             /* [in] */ VARIANT *pLogRecord,
  2223.             /* [retval][out] */ VARIANT_BOOL *pbForget);
  2224.         
  2225.         /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *EndCommitVariants )( 
  2226.             ICrmCompensatorVariants * This);
  2227.         
  2228.         /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *BeginAbortVariants )( 
  2229.             ICrmCompensatorVariants * This,
  2230.             /* [in] */ VARIANT_BOOL bRecovery);
  2231.         
  2232.         /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *AbortRecordVariants )( 
  2233.             ICrmCompensatorVariants * This,
  2234.             /* [in] */ VARIANT *pLogRecord,
  2235.             /* [retval][out] */ VARIANT_BOOL *pbForget);
  2236.         
  2237.         /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *EndAbortVariants )( 
  2238.             ICrmCompensatorVariants * This);
  2239.         
  2240.         END_INTERFACE
  2241.     } ICrmCompensatorVariantsVtbl;
  2242.     interface ICrmCompensatorVariants
  2243.     {
  2244.         CONST_VTBL struct ICrmCompensatorVariantsVtbl *lpVtbl;
  2245.     };
  2246.     
  2247. #ifdef COBJMACROS
  2248. #define ICrmCompensatorVariants_QueryInterface(This,riid,ppvObject)
  2249.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  2250. #define ICrmCompensatorVariants_AddRef(This)
  2251.     (This)->lpVtbl -> AddRef(This)
  2252. #define ICrmCompensatorVariants_Release(This)
  2253.     (This)->lpVtbl -> Release(This)
  2254. #define ICrmCompensatorVariants_SetLogControlVariants(This,pLogControl)
  2255.     (This)->lpVtbl -> SetLogControlVariants(This,pLogControl)
  2256. #define ICrmCompensatorVariants_BeginPrepareVariants(This)
  2257.     (This)->lpVtbl -> BeginPrepareVariants(This)
  2258. #define ICrmCompensatorVariants_PrepareRecordVariants(This,pLogRecord,pbForget)
  2259.     (This)->lpVtbl -> PrepareRecordVariants(This,pLogRecord,pbForget)
  2260. #define ICrmCompensatorVariants_EndPrepareVariants(This,pbOkToPrepare)
  2261.     (This)->lpVtbl -> EndPrepareVariants(This,pbOkToPrepare)
  2262. #define ICrmCompensatorVariants_BeginCommitVariants(This,bRecovery)
  2263.     (This)->lpVtbl -> BeginCommitVariants(This,bRecovery)
  2264. #define ICrmCompensatorVariants_CommitRecordVariants(This,pLogRecord,pbForget)
  2265.     (This)->lpVtbl -> CommitRecordVariants(This,pLogRecord,pbForget)
  2266. #define ICrmCompensatorVariants_EndCommitVariants(This)
  2267.     (This)->lpVtbl -> EndCommitVariants(This)
  2268. #define ICrmCompensatorVariants_BeginAbortVariants(This,bRecovery)
  2269.     (This)->lpVtbl -> BeginAbortVariants(This,bRecovery)
  2270. #define ICrmCompensatorVariants_AbortRecordVariants(This,pLogRecord,pbForget)
  2271.     (This)->lpVtbl -> AbortRecordVariants(This,pLogRecord,pbForget)
  2272. #define ICrmCompensatorVariants_EndAbortVariants(This)
  2273.     (This)->lpVtbl -> EndAbortVariants(This)
  2274. #endif /* COBJMACROS */
  2275. #endif  /* C style interface */
  2276. /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE ICrmCompensatorVariants_SetLogControlVariants_Proxy( 
  2277.     ICrmCompensatorVariants * This,
  2278.     /* [in] */ ICrmLogControl *pLogControl);
  2279. void __RPC_STUB ICrmCompensatorVariants_SetLogControlVariants_Stub(
  2280.     IRpcStubBuffer *This,
  2281.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2282.     PRPC_MESSAGE _pRpcMessage,
  2283.     DWORD *_pdwStubPhase);
  2284. /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE ICrmCompensatorVariants_BeginPrepareVariants_Proxy( 
  2285.     ICrmCompensatorVariants * This);
  2286. void __RPC_STUB ICrmCompensatorVariants_BeginPrepareVariants_Stub(
  2287.     IRpcStubBuffer *This,
  2288.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2289.     PRPC_MESSAGE _pRpcMessage,
  2290.     DWORD *_pdwStubPhase);
  2291. /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE ICrmCompensatorVariants_PrepareRecordVariants_Proxy( 
  2292.     ICrmCompensatorVariants * This,
  2293.     /* [in] */ VARIANT *pLogRecord,
  2294.     /* [retval][out] */ VARIANT_BOOL *pbForget);
  2295. void __RPC_STUB ICrmCompensatorVariants_PrepareRecordVariants_Stub(
  2296.     IRpcStubBuffer *This,
  2297.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2298.     PRPC_MESSAGE _pRpcMessage,
  2299.     DWORD *_pdwStubPhase);
  2300. /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE ICrmCompensatorVariants_EndPrepareVariants_Proxy( 
  2301.     ICrmCompensatorVariants * This,
  2302.     /* [retval][out] */ VARIANT_BOOL *pbOkToPrepare);
  2303. void __RPC_STUB ICrmCompensatorVariants_EndPrepareVariants_Stub(
  2304.     IRpcStubBuffer *This,
  2305.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2306.     PRPC_MESSAGE _pRpcMessage,
  2307.     DWORD *_pdwStubPhase);
  2308. /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE ICrmCompensatorVariants_BeginCommitVariants_Proxy( 
  2309.     ICrmCompensatorVariants * This,
  2310.     /* [in] */ VARIANT_BOOL bRecovery);
  2311. void __RPC_STUB ICrmCompensatorVariants_BeginCommitVariants_Stub(
  2312.     IRpcStubBuffer *This,
  2313.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2314.     PRPC_MESSAGE _pRpcMessage,
  2315.     DWORD *_pdwStubPhase);
  2316. /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE ICrmCompensatorVariants_CommitRecordVariants_Proxy( 
  2317.     ICrmCompensatorVariants * This,
  2318.     /* [in] */ VARIANT *pLogRecord,
  2319.     /* [retval][out] */ VARIANT_BOOL *pbForget);
  2320. void __RPC_STUB ICrmCompensatorVariants_CommitRecordVariants_Stub(
  2321.     IRpcStubBuffer *This,
  2322.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2323.     PRPC_MESSAGE _pRpcMessage,
  2324.     DWORD *_pdwStubPhase);
  2325. /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE ICrmCompensatorVariants_EndCommitVariants_Proxy( 
  2326.     ICrmCompensatorVariants * This);
  2327. void __RPC_STUB ICrmCompensatorVariants_EndCommitVariants_Stub(
  2328.     IRpcStubBuffer *This,
  2329.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2330.     PRPC_MESSAGE _pRpcMessage,
  2331.     DWORD *_pdwStubPhase);
  2332. /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE ICrmCompensatorVariants_BeginAbortVariants_Proxy( 
  2333.     ICrmCompensatorVariants * This,
  2334.     /* [in] */ VARIANT_BOOL bRecovery);
  2335. void __RPC_STUB ICrmCompensatorVariants_BeginAbortVariants_Stub(
  2336.     IRpcStubBuffer *This,
  2337.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2338.     PRPC_MESSAGE _pRpcMessage,
  2339.     DWORD *_pdwStubPhase);
  2340. /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE ICrmCompensatorVariants_AbortRecordVariants_Proxy( 
  2341.     ICrmCompensatorVariants * This,
  2342.     /* [in] */ VARIANT *pLogRecord,
  2343.     /* [retval][out] */ VARIANT_BOOL *pbForget);
  2344. void __RPC_STUB ICrmCompensatorVariants_AbortRecordVariants_Stub(
  2345.     IRpcStubBuffer *This,
  2346.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2347.     PRPC_MESSAGE _pRpcMessage,
  2348.     DWORD *_pdwStubPhase);
  2349. /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE ICrmCompensatorVariants_EndAbortVariants_Proxy( 
  2350.     ICrmCompensatorVariants * This);
  2351. void __RPC_STUB ICrmCompensatorVariants_EndAbortVariants_Stub(
  2352.     IRpcStubBuffer *This,
  2353.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2354.     PRPC_MESSAGE _pRpcMessage,
  2355.     DWORD *_pdwStubPhase);
  2356. #endif  /* __ICrmCompensatorVariants_INTERFACE_DEFINED__ */
  2357. /* interface __MIDL_itf_autosvcs_0362 */
  2358. /* [local] */ 
  2359. #ifndef _tagCrmLogRecordRead_
  2360. #define _tagCrmLogRecordRead_
  2361. typedef struct tagCrmLogRecordRead
  2362.     {
  2363.     DWORD dwCrmFlags;
  2364.     DWORD dwSequenceNumber;
  2365.     BLOB blobUserData;
  2366.     }  CrmLogRecordRead;
  2367. #endif _tagCrmLogRecordRead_
  2368. extern RPC_IF_HANDLE __MIDL_itf_autosvcs_0362_v0_0_c_ifspec;
  2369. extern RPC_IF_HANDLE __MIDL_itf_autosvcs_0362_v0_0_s_ifspec;
  2370. #ifndef __ICrmCompensator_INTERFACE_DEFINED__
  2371. #define __ICrmCompensator_INTERFACE_DEFINED__
  2372. /* interface ICrmCompensator */
  2373. /* [unique][helpstring][uuid][object] */ 
  2374. EXTERN_C const IID IID_ICrmCompensator;
  2375. #if defined(__cplusplus) && !defined(CINTERFACE)
  2376.     
  2377.     MIDL_INTERFACE("BBC01830-8D3B-11d1-82EC-00A0C91EEDE9")
  2378.     ICrmCompensator : public IUnknown
  2379.     {
  2380.     public:
  2381.         virtual HRESULT STDMETHODCALLTYPE SetLogControl( 
  2382.             /* [in] */ ICrmLogControl *pLogControl) = 0;
  2383.         
  2384.         virtual HRESULT STDMETHODCALLTYPE BeginPrepare( void) = 0;
  2385.         
  2386.         virtual HRESULT STDMETHODCALLTYPE PrepareRecord( 
  2387.             /* [in] */ CrmLogRecordRead crmLogRec,
  2388.             /* [retval][out] */ BOOL *pfForget) = 0;
  2389.         
  2390.         virtual HRESULT STDMETHODCALLTYPE EndPrepare( 
  2391.             /* [retval][out] */ BOOL *pfOkToPrepare) = 0;
  2392.         
  2393.         virtual HRESULT STDMETHODCALLTYPE BeginCommit( 
  2394.             /* [in] */ BOOL fRecovery) = 0;
  2395.         
  2396.         virtual HRESULT STDMETHODCALLTYPE CommitRecord( 
  2397.             /* [in] */ CrmLogRecordRead crmLogRec,
  2398.             /* [retval][out] */ BOOL *pfForget) = 0;
  2399.         
  2400.         virtual HRESULT STDMETHODCALLTYPE EndCommit( void) = 0;
  2401.         
  2402.         virtual HRESULT STDMETHODCALLTYPE BeginAbort( 
  2403.             /* [in] */ BOOL fRecovery) = 0;
  2404.         
  2405.         virtual HRESULT STDMETHODCALLTYPE AbortRecord( 
  2406.             /* [in] */ CrmLogRecordRead crmLogRec,
  2407.             /* [retval][out] */ BOOL *pfForget) = 0;
  2408.         
  2409.         virtual HRESULT STDMETHODCALLTYPE EndAbort( void) = 0;
  2410.         
  2411.     };
  2412.     
  2413. #else  /* C style interface */
  2414.     typedef struct ICrmCompensatorVtbl
  2415.     {
  2416.         BEGIN_INTERFACE
  2417.         
  2418.         HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
  2419.             ICrmCompensator * This,
  2420.             /* [in] */ REFIID riid,
  2421.             /* [iid_is][out] */ void **ppvObject);
  2422.         
  2423.         ULONG ( STDMETHODCALLTYPE *AddRef )( 
  2424.             ICrmCompensator * This);
  2425.         
  2426.         ULONG ( STDMETHODCALLTYPE *Release )( 
  2427.             ICrmCompensator * This);
  2428.         
  2429.         HRESULT ( STDMETHODCALLTYPE *SetLogControl )( 
  2430.             ICrmCompensator * This,
  2431.             /* [in] */ ICrmLogControl *pLogControl);
  2432.         
  2433.         HRESULT ( STDMETHODCALLTYPE *BeginPrepare )( 
  2434.             ICrmCompensator * This);
  2435.         
  2436.         HRESULT ( STDMETHODCALLTYPE *PrepareRecord )( 
  2437.             ICrmCompensator * This,
  2438.             /* [in] */ CrmLogRecordRead crmLogRec,
  2439.             /* [retval][out] */ BOOL *pfForget);
  2440.         
  2441.         HRESULT ( STDMETHODCALLTYPE *EndPrepare )( 
  2442.             ICrmCompensator * This,
  2443.             /* [retval][out] */ BOOL *pfOkToPrepare);
  2444.         
  2445.         HRESULT ( STDMETHODCALLTYPE *BeginCommit )( 
  2446.             ICrmCompensator * This,
  2447.             /* [in] */ BOOL fRecovery);
  2448.         
  2449.         HRESULT ( STDMETHODCALLTYPE *CommitRecord )( 
  2450.             ICrmCompensator * This,
  2451.             /* [in] */ CrmLogRecordRead crmLogRec,
  2452.             /* [retval][out] */ BOOL *pfForget);
  2453.         
  2454.         HRESULT ( STDMETHODCALLTYPE *EndCommit )( 
  2455.             ICrmCompensator * This);
  2456.         
  2457.         HRESULT ( STDMETHODCALLTYPE *BeginAbort )( 
  2458.             ICrmCompensator * This,
  2459.             /* [in] */ BOOL fRecovery);
  2460.         
  2461.         HRESULT ( STDMETHODCALLTYPE *AbortRecord )( 
  2462.             ICrmCompensator * This,
  2463.             /* [in] */ CrmLogRecordRead crmLogRec,
  2464.             /* [retval][out] */ BOOL *pfForget);
  2465.         
  2466.         HRESULT ( STDMETHODCALLTYPE *EndAbort )( 
  2467.             ICrmCompensator * This);
  2468.         
  2469.         END_INTERFACE
  2470.     } ICrmCompensatorVtbl;
  2471.     interface ICrmCompensator
  2472.     {
  2473.         CONST_VTBL struct ICrmCompensatorVtbl *lpVtbl;
  2474.     };
  2475.     
  2476. #ifdef COBJMACROS
  2477. #define ICrmCompensator_QueryInterface(This,riid,ppvObject)
  2478.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  2479. #define ICrmCompensator_AddRef(This)
  2480.     (This)->lpVtbl -> AddRef(This)
  2481. #define ICrmCompensator_Release(This)
  2482.     (This)->lpVtbl -> Release(This)
  2483. #define ICrmCompensator_SetLogControl(This,pLogControl)
  2484.     (This)->lpVtbl -> SetLogControl(This,pLogControl)
  2485. #define ICrmCompensator_BeginPrepare(This)
  2486.     (This)->lpVtbl -> BeginPrepare(This)
  2487. #define ICrmCompensator_PrepareRecord(This,crmLogRec,pfForget)
  2488.     (This)->lpVtbl -> PrepareRecord(This,crmLogRec,pfForget)
  2489. #define ICrmCompensator_EndPrepare(This,pfOkToPrepare)
  2490.     (This)->lpVtbl -> EndPrepare(This,pfOkToPrepare)
  2491. #define ICrmCompensator_BeginCommit(This,fRecovery)
  2492.     (This)->lpVtbl -> BeginCommit(This,fRecovery)
  2493. #define ICrmCompensator_CommitRecord(This,crmLogRec,pfForget)
  2494.     (This)->lpVtbl -> CommitRecord(This,crmLogRec,pfForget)
  2495. #define ICrmCompensator_EndCommit(This)
  2496.     (This)->lpVtbl -> EndCommit(This)
  2497. #define ICrmCompensator_BeginAbort(This,fRecovery)
  2498.     (This)->lpVtbl -> BeginAbort(This,fRecovery)
  2499. #define ICrmCompensator_AbortRecord(This,crmLogRec,pfForget)
  2500.     (This)->lpVtbl -> AbortRecord(This,crmLogRec,pfForget)
  2501. #define ICrmCompensator_EndAbort(This)
  2502.     (This)->lpVtbl -> EndAbort(This)
  2503. #endif /* COBJMACROS */
  2504. #endif  /* C style interface */
  2505. HRESULT STDMETHODCALLTYPE ICrmCompensator_SetLogControl_Proxy( 
  2506.     ICrmCompensator * This,
  2507.     /* [in] */ ICrmLogControl *pLogControl);
  2508. void __RPC_STUB ICrmCompensator_SetLogControl_Stub(
  2509.     IRpcStubBuffer *This,
  2510.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2511.     PRPC_MESSAGE _pRpcMessage,
  2512.     DWORD *_pdwStubPhase);
  2513. HRESULT STDMETHODCALLTYPE ICrmCompensator_BeginPrepare_Proxy( 
  2514.     ICrmCompensator * This);
  2515. void __RPC_STUB ICrmCompensator_BeginPrepare_Stub(
  2516.     IRpcStubBuffer *This,
  2517.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2518.     PRPC_MESSAGE _pRpcMessage,
  2519.     DWORD *_pdwStubPhase);
  2520. HRESULT STDMETHODCALLTYPE ICrmCompensator_PrepareRecord_Proxy( 
  2521.     ICrmCompensator * This,
  2522.     /* [in] */ CrmLogRecordRead crmLogRec,
  2523.     /* [retval][out] */ BOOL *pfForget);
  2524. void __RPC_STUB ICrmCompensator_PrepareRecord_Stub(
  2525.     IRpcStubBuffer *This,
  2526.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2527.     PRPC_MESSAGE _pRpcMessage,
  2528.     DWORD *_pdwStubPhase);
  2529. HRESULT STDMETHODCALLTYPE ICrmCompensator_EndPrepare_Proxy( 
  2530.     ICrmCompensator * This,
  2531.     /* [retval][out] */ BOOL *pfOkToPrepare);
  2532. void __RPC_STUB ICrmCompensator_EndPrepare_Stub(
  2533.     IRpcStubBuffer *This,
  2534.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2535.     PRPC_MESSAGE _pRpcMessage,
  2536.     DWORD *_pdwStubPhase);
  2537. HRESULT STDMETHODCALLTYPE ICrmCompensator_BeginCommit_Proxy( 
  2538.     ICrmCompensator * This,
  2539.     /* [in] */ BOOL fRecovery);
  2540. void __RPC_STUB ICrmCompensator_BeginCommit_Stub(
  2541.     IRpcStubBuffer *This,
  2542.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2543.     PRPC_MESSAGE _pRpcMessage,
  2544.     DWORD *_pdwStubPhase);
  2545. HRESULT STDMETHODCALLTYPE ICrmCompensator_CommitRecord_Proxy( 
  2546.     ICrmCompensator * This,
  2547.     /* [in] */ CrmLogRecordRead crmLogRec,
  2548.     /* [retval][out] */ BOOL *pfForget);
  2549. void __RPC_STUB ICrmCompensator_CommitRecord_Stub(
  2550.     IRpcStubBuffer *This,
  2551.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2552.     PRPC_MESSAGE _pRpcMessage,
  2553.     DWORD *_pdwStubPhase);
  2554. HRESULT STDMETHODCALLTYPE ICrmCompensator_EndCommit_Proxy( 
  2555.     ICrmCompensator * This);
  2556. void __RPC_STUB ICrmCompensator_EndCommit_Stub(
  2557.     IRpcStubBuffer *This,
  2558.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2559.     PRPC_MESSAGE _pRpcMessage,
  2560.     DWORD *_pdwStubPhase);
  2561. HRESULT STDMETHODCALLTYPE ICrmCompensator_BeginAbort_Proxy( 
  2562.     ICrmCompensator * This,
  2563.     /* [in] */ BOOL fRecovery);
  2564. void __RPC_STUB ICrmCompensator_BeginAbort_Stub(
  2565.     IRpcStubBuffer *This,
  2566.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2567.     PRPC_MESSAGE _pRpcMessage,
  2568.     DWORD *_pdwStubPhase);
  2569. HRESULT STDMETHODCALLTYPE ICrmCompensator_AbortRecord_Proxy( 
  2570.     ICrmCompensator * This,
  2571.     /* [in] */ CrmLogRecordRead crmLogRec,
  2572.     /* [retval][out] */ BOOL *pfForget);
  2573. void __RPC_STUB ICrmCompensator_AbortRecord_Stub(
  2574.     IRpcStubBuffer *This,
  2575.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2576.     PRPC_MESSAGE _pRpcMessage,
  2577.     DWORD *_pdwStubPhase);
  2578. HRESULT STDMETHODCALLTYPE ICrmCompensator_EndAbort_Proxy( 
  2579.     ICrmCompensator * This);
  2580. void __RPC_STUB ICrmCompensator_EndAbort_Stub(
  2581.     IRpcStubBuffer *This,
  2582.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2583.     PRPC_MESSAGE _pRpcMessage,
  2584.     DWORD *_pdwStubPhase);
  2585. #endif  /* __ICrmCompensator_INTERFACE_DEFINED__ */
  2586. /* interface __MIDL_itf_autosvcs_0363 */
  2587. /* [local] */ 
  2588. #ifndef _tagCrmTransactionState_
  2589. #define _tagCrmTransactionState_
  2590. typedef 
  2591. enum tagCrmTransactionState
  2592.     { TxState_Active = 0,
  2593. TxState_Committed = TxState_Active + 1,
  2594. TxState_Aborted = TxState_Committed + 1,
  2595. TxState_Indoubt = TxState_Aborted + 1
  2596.     }  CrmTransactionState;
  2597. #endif _tagCrmTransactionState_
  2598. extern RPC_IF_HANDLE __MIDL_itf_autosvcs_0363_v0_0_c_ifspec;
  2599. extern RPC_IF_HANDLE __MIDL_itf_autosvcs_0363_v0_0_s_ifspec;
  2600. #ifndef __ICrmMonitorLogRecords_INTERFACE_DEFINED__
  2601. #define __ICrmMonitorLogRecords_INTERFACE_DEFINED__
  2602. /* interface ICrmMonitorLogRecords */
  2603. /* [unique][helpstring][uuid][object] */ 
  2604. EXTERN_C const IID IID_ICrmMonitorLogRecords;
  2605. #if defined(__cplusplus) && !defined(CINTERFACE)
  2606.     
  2607.     MIDL_INTERFACE("70C8E441-C7ED-11d1-82FB-00A0C91EEDE9")
  2608.     ICrmMonitorLogRecords : public IUnknown
  2609.     {
  2610.     public:
  2611.         virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Count( 
  2612.             /* [retval][out] */ long *pVal) = 0;
  2613.         
  2614.         virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_TransactionState( 
  2615.             /* [retval][out] */ CrmTransactionState *pVal) = 0;
  2616.         
  2617.         virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_StructuredRecords( 
  2618.             /* [retval][out] */ VARIANT_BOOL *pVal) = 0;
  2619.         
  2620.         virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE GetLogRecord( 
  2621.             /* [in] */ DWORD dwIndex,
  2622.             /* [out][in] */ CrmLogRecordRead *pCrmLogRec) = 0;
  2623.         
  2624.         virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE GetLogRecordVariants( 
  2625.             /* [in] */ VARIANT IndexNumber,
  2626.             /* [retval][out] */ LPVARIANT pLogRecord) = 0;
  2627.         
  2628.     };
  2629.     
  2630. #else  /* C style interface */
  2631.     typedef struct ICrmMonitorLogRecordsVtbl
  2632.     {
  2633.         BEGIN_INTERFACE
  2634.         
  2635.         HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
  2636.             ICrmMonitorLogRecords * This,
  2637.             /* [in] */ REFIID riid,
  2638.             /* [iid_is][out] */ void **ppvObject);
  2639.         
  2640.         ULONG ( STDMETHODCALLTYPE *AddRef )( 
  2641.             ICrmMonitorLogRecords * This);
  2642.         
  2643.         ULONG ( STDMETHODCALLTYPE *Release )( 
  2644.             ICrmMonitorLogRecords * This);
  2645.         
  2646.         /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Count )( 
  2647.             ICrmMonitorLogRecords * This,
  2648.             /* [retval][out] */ long *pVal);
  2649.         
  2650.         /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TransactionState )( 
  2651.             ICrmMonitorLogRecords * This,
  2652.             /* [retval][out] */ CrmTransactionState *pVal);
  2653.         
  2654.         /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_StructuredRecords )( 
  2655.             ICrmMonitorLogRecords * This,
  2656.             /* [retval][out] */ VARIANT_BOOL *pVal);
  2657.         
  2658.         /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *GetLogRecord )( 
  2659.             ICrmMonitorLogRecords * This,
  2660.             /* [in] */ DWORD dwIndex,
  2661.             /* [out][in] */ CrmLogRecordRead *pCrmLogRec);
  2662.         
  2663.         /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *GetLogRecordVariants )( 
  2664.             ICrmMonitorLogRecords * This,
  2665.             /* [in] */ VARIANT IndexNumber,
  2666.             /* [retval][out] */ LPVARIANT pLogRecord);
  2667.         
  2668.         END_INTERFACE
  2669.     } ICrmMonitorLogRecordsVtbl;
  2670.     interface ICrmMonitorLogRecords
  2671.     {
  2672.         CONST_VTBL struct ICrmMonitorLogRecordsVtbl *lpVtbl;
  2673.     };
  2674.     
  2675. #ifdef COBJMACROS
  2676. #define ICrmMonitorLogRecords_QueryInterface(This,riid,ppvObject)
  2677.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  2678. #define ICrmMonitorLogRecords_AddRef(This)
  2679.     (This)->lpVtbl -> AddRef(This)
  2680. #define ICrmMonitorLogRecords_Release(This)
  2681.     (This)->lpVtbl -> Release(This)
  2682. #define ICrmMonitorLogRecords_get_Count(This,pVal)
  2683.     (This)->lpVtbl -> get_Count(This,pVal)
  2684. #define ICrmMonitorLogRecords_get_TransactionState(This,pVal)
  2685.     (This)->lpVtbl -> get_TransactionState(This,pVal)
  2686. #define ICrmMonitorLogRecords_get_StructuredRecords(This,pVal)
  2687.     (This)->lpVtbl -> get_StructuredRecords(This,pVal)
  2688. #define ICrmMonitorLogRecords_GetLogRecord(This,dwIndex,pCrmLogRec)
  2689.     (This)->lpVtbl -> GetLogRecord(This,dwIndex,pCrmLogRec)
  2690. #define ICrmMonitorLogRecords_GetLogRecordVariants(This,IndexNumber,pLogRecord)
  2691.     (This)->lpVtbl -> GetLogRecordVariants(This,IndexNumber,pLogRecord)
  2692. #endif /* COBJMACROS */
  2693. #endif  /* C style interface */