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

模拟服务器

开发平台:

C/C++

  1. #pragma warning( disable: 4049 )  /* more than 64k source lines */
  2. /* this ALWAYS GENERATED file contains the definitions for the interfaces */
  3.  /* File created by MIDL compiler version 6.00.0347 */
  4. /* Compiler settings for mobsync.idl:
  5.     Oicf, W1, Zp8, env=Win32 (32b run)
  6.     protocol : dce , ms_ext, c_ext, robust
  7.     error checks: allocation ref bounds_check enum stub_data 
  8.     VC __declspec() decoration level: 
  9.          __declspec(uuid()), __declspec(selectany), __declspec(novtable)
  10.          DECLSPEC_UUID(), MIDL_INTERFACE()
  11. */
  12. //@@MIDL_FILE_HEADING(  )
  13. /* verify that the <rpcndr.h> version is high enough to compile this file*/
  14. #ifndef __REQUIRED_RPCNDR_H_VERSION__
  15. #define __REQUIRED_RPCNDR_H_VERSION__ 475
  16. #endif
  17. #include "rpc.h"
  18. #include "rpcndr.h"
  19. #ifndef __RPCNDR_H_VERSION__
  20. #error this stub requires an updated version of <rpcndr.h>
  21. #endif // __RPCNDR_H_VERSION__
  22. #ifndef COM_NO_WINDOWS_H
  23. #include "windows.h"
  24. #include "ole2.h"
  25. #endif /*COM_NO_WINDOWS_H*/
  26. #ifndef __mobsync_h__
  27. #define __mobsync_h__
  28. #if defined(_MSC_VER) && (_MSC_VER >= 1020)
  29. #pragma once
  30. #endif
  31. /* Forward Declarations */ 
  32. #ifndef __ISyncMgrSynchronize_FWD_DEFINED__
  33. #define __ISyncMgrSynchronize_FWD_DEFINED__
  34. typedef interface ISyncMgrSynchronize ISyncMgrSynchronize;
  35. #endif  /* __ISyncMgrSynchronize_FWD_DEFINED__ */
  36. #ifndef __ISyncMgrSynchronizeCallback_FWD_DEFINED__
  37. #define __ISyncMgrSynchronizeCallback_FWD_DEFINED__
  38. typedef interface ISyncMgrSynchronizeCallback ISyncMgrSynchronizeCallback;
  39. #endif  /* __ISyncMgrSynchronizeCallback_FWD_DEFINED__ */
  40. #ifndef __ISyncMgrEnumItems_FWD_DEFINED__
  41. #define __ISyncMgrEnumItems_FWD_DEFINED__
  42. typedef interface ISyncMgrEnumItems ISyncMgrEnumItems;
  43. #endif  /* __ISyncMgrEnumItems_FWD_DEFINED__ */
  44. #ifndef __ISyncMgrSynchronizeInvoke_FWD_DEFINED__
  45. #define __ISyncMgrSynchronizeInvoke_FWD_DEFINED__
  46. typedef interface ISyncMgrSynchronizeInvoke ISyncMgrSynchronizeInvoke;
  47. #endif  /* __ISyncMgrSynchronizeInvoke_FWD_DEFINED__ */
  48. #ifndef __ISyncMgrRegister_FWD_DEFINED__
  49. #define __ISyncMgrRegister_FWD_DEFINED__
  50. typedef interface ISyncMgrRegister ISyncMgrRegister;
  51. #endif  /* __ISyncMgrRegister_FWD_DEFINED__ */
  52. #ifndef __SyncMgr_FWD_DEFINED__
  53. #define __SyncMgr_FWD_DEFINED__
  54. #ifdef __cplusplus
  55. typedef class SyncMgr SyncMgr;
  56. #else
  57. typedef struct SyncMgr SyncMgr;
  58. #endif /* __cplusplus */
  59. #endif  /* __SyncMgr_FWD_DEFINED__ */
  60. /* header files for imported files */
  61. #include "objidl.h"
  62. #include "oleidl.h"
  63. #ifdef __cplusplus
  64. extern "C"{
  65. #endif 
  66. void * __RPC_USER MIDL_user_allocate(size_t);
  67. void __RPC_USER MIDL_user_free( void * ); 
  68. /* interface __MIDL_itf_mobsync_0000 */
  69. /* [local] */ 
  70. typedef GUID SYNCMGRITEMID;
  71. typedef REFGUID REFSYNCMGRITEMID;
  72. typedef GUID SYNCMGRERRORID;
  73. typedef REFGUID REFSYNCMGRERRORID;
  74. DEFINE_GUID(CLSID_SyncMgr,0x6295df27, 0x35ee, 0x11d1, 0x87, 0x7, 0x0, 0xc0, 0x4f, 0xd9, 0x33, 0x27);
  75. DEFINE_GUID(IID_ISyncMgrSynchronize,0x6295df40, 0x35ee, 0x11d1, 0x87, 0x7, 0x0, 0xc0, 0x4f, 0xd9, 0x33, 0x27);
  76. DEFINE_GUID(IID_ISyncMgrSynchronizeCallback,0x6295df41, 0x35ee, 0x11d1, 0x87, 0x7, 0x0, 0xc0, 0x4f, 0xd9, 0x33, 0x27);
  77. DEFINE_GUID(IID_ISyncMgrRegister, 0x6295df42, 0x35ee, 0x11d1, 0x87, 0x7, 0x0, 0xc0, 0x4f, 0xd9, 0x33, 0x27);
  78. DEFINE_GUID(IID_ISyncMgrEnumItems,0x6295df2a, 0x35ee, 0x11d1, 0x87, 0x7, 0x0, 0xc0, 0x4f, 0xd9, 0x33, 0x27);
  79. DEFINE_GUID(IID_ISyncMgrSynchronizeInvoke,0x6295df2c, 0x35ee, 0x11d1, 0x87, 0x7, 0x0, 0xc0, 0x4f, 0xd9, 0x33, 0x27);
  80. #define S_SYNCMGR_MISSINGITEMS       MAKE_SCODE(SEVERITY_SUCCESS,FACILITY_ITF,0x0201)
  81. #define S_SYNCMGR_RETRYSYNC          MAKE_SCODE(SEVERITY_SUCCESS,FACILITY_ITF,0x0202)
  82. #define S_SYNCMGR_CANCELITEM         MAKE_SCODE(SEVERITY_SUCCESS,FACILITY_ITF,0x0203)
  83. #define S_SYNCMGR_CANCELALL          MAKE_SCODE(SEVERITY_SUCCESS,FACILITY_ITF,0x0204)
  84. #define S_SYNCMGR_ITEMDELETED        MAKE_SCODE(SEVERITY_SUCCESS,FACILITY_ITF,0x0210)
  85. #define S_SYNCMGR_ENUMITEMS          MAKE_SCODE(SEVERITY_SUCCESS,FACILITY_ITF,0x0211)
  86. extern RPC_IF_HANDLE __MIDL_itf_mobsync_0000_v0_0_c_ifspec;
  87. extern RPC_IF_HANDLE __MIDL_itf_mobsync_0000_v0_0_s_ifspec;
  88. #ifndef __ISyncMgrSynchronize_INTERFACE_DEFINED__
  89. #define __ISyncMgrSynchronize_INTERFACE_DEFINED__
  90. /* interface ISyncMgrSynchronize */
  91. /* [uuid][object][local] */ 
  92. typedef /* [unique] */ ISyncMgrSynchronize *LPSYNCMGRSYNCHRONIZE;
  93. typedef 
  94. enum _tagSYNCMGRFLAG
  95.     { SYNCMGRFLAG_CONNECT = 0x1,
  96. SYNCMGRFLAG_PENDINGDISCONNECT = 0x2,
  97. SYNCMGRFLAG_MANUAL = 0x3,
  98. SYNCMGRFLAG_IDLE = 0x4,
  99. SYNCMGRFLAG_INVOKE = 0x5,
  100. SYNCMGRFLAG_SCHEDULED = 0x6,
  101. SYNCMGRFLAG_EVENTMASK = 0xff,
  102. SYNCMGRFLAG_SETTINGS = 0x100,
  103. SYNCMGRFLAG_MAYBOTHERUSER = 0x200
  104.     }  SYNCMGRFLAG;
  105. #define MAX_SYNCMGRHANDLERNAME ( 32 )
  106. #define SYNCMGRHANDLERFLAG_MASK 0x07
  107. typedef 
  108. enum _tagSYNCMGRHANDLERFLAGS
  109.     { SYNCMGRHANDLER_HASPROPERTIES = 0x1,
  110. SYNCMGRHANDLER_MAYESTABLISHCONNECTION = 0x2,
  111. SYNCMGRHANDLER_ALWAYSLISTHANDLER = 0x4
  112.     }  SYNCMGRHANDLERFLAGS;
  113. typedef struct _tagSYNCMGRHANDLERINFO
  114.     {
  115.     DWORD cbSize;
  116.     HICON hIcon;
  117.     DWORD SyncMgrHandlerFlags;
  118.     WCHAR wszHandlerName[ 32 ];
  119.     }  SYNCMGRHANDLERINFO;
  120. typedef struct _tagSYNCMGRHANDLERINFO *LPSYNCMGRHANDLERINFO;
  121. #define   SYNCMGRITEMSTATE_UNCHECKED    0x0000
  122. #define   SYNCMGRITEMSTATE_CHECKED      0x0001
  123. typedef 
  124. enum _tagSYNCMGRSTATUS
  125.     { SYNCMGRSTATUS_STOPPED = 0,
  126. SYNCMGRSTATUS_SKIPPED = 0x1,
  127. SYNCMGRSTATUS_PENDING = 0x2,
  128. SYNCMGRSTATUS_UPDATING = 0x3,
  129. SYNCMGRSTATUS_SUCCEEDED = 0x4,
  130. SYNCMGRSTATUS_FAILED = 0x5,
  131. SYNCMGRSTATUS_PAUSED = 0x6,
  132. SYNCMGRSTATUS_RESUMING = 0x7,
  133. SYNCMGRSTATUS_DELETED = 0x100
  134.     }  SYNCMGRSTATUS;
  135. EXTERN_C const IID IID_ISyncMgrSynchronize;
  136. #if defined(__cplusplus) && !defined(CINTERFACE)
  137.     
  138.     MIDL_INTERFACE("6295DF40-35EE-11d1-8707-00C04FD93327")
  139.     ISyncMgrSynchronize : public IUnknown
  140.     {
  141.     public:
  142.         virtual HRESULT STDMETHODCALLTYPE Initialize( 
  143.             /* [in] */ DWORD dwReserved,
  144.             /* [in] */ DWORD dwSyncMgrFlags,
  145.             /* [in] */ DWORD cbCookie,
  146.             /* [size_is][unique][in] */ const BYTE *lpCookie) = 0;
  147.         
  148.         virtual HRESULT STDMETHODCALLTYPE GetHandlerInfo( 
  149.             /* [out] */ LPSYNCMGRHANDLERINFO *ppSyncMgrHandlerInfo) = 0;
  150.         
  151.         virtual HRESULT STDMETHODCALLTYPE EnumSyncMgrItems( 
  152.             /* [out] */ ISyncMgrEnumItems **ppSyncMgrEnumItems) = 0;
  153.         
  154.         virtual HRESULT STDMETHODCALLTYPE GetItemObject( 
  155.             /* [in] */ REFSYNCMGRITEMID ItemID,
  156.             /* [in] */ REFIID riid,
  157.             /* [iid_is][out] */ void **ppv) = 0;
  158.         
  159.         virtual HRESULT STDMETHODCALLTYPE ShowProperties( 
  160.             /* [in] */ HWND hWndParent,
  161.             /* [in] */ REFSYNCMGRITEMID ItemID) = 0;
  162.         
  163.         virtual HRESULT STDMETHODCALLTYPE SetProgressCallback( 
  164.             /* [unique][in] */ ISyncMgrSynchronizeCallback *lpCallBack) = 0;
  165.         
  166.         virtual HRESULT STDMETHODCALLTYPE PrepareForSync( 
  167.             /* [in] */ ULONG cbNumItems,
  168.             /* [size_is][in] */ SYNCMGRITEMID *pItemIDs,
  169.             /* [in] */ HWND hWndParent,
  170.             /* [in] */ DWORD dwReserved) = 0;
  171.         
  172.         virtual HRESULT STDMETHODCALLTYPE Synchronize( 
  173.             /* [in] */ HWND hWndParent) = 0;
  174.         
  175.         virtual HRESULT STDMETHODCALLTYPE SetItemStatus( 
  176.             /* [in] */ REFSYNCMGRITEMID pItemID,
  177.             /* [in] */ DWORD dwSyncMgrStatus) = 0;
  178.         
  179.         virtual HRESULT STDMETHODCALLTYPE ShowError( 
  180.             /* [in] */ HWND hWndParent,
  181.             /* [in] */ REFSYNCMGRERRORID ErrorID) = 0;
  182.         
  183.     };
  184.     
  185. #else  /* C style interface */
  186.     typedef struct ISyncMgrSynchronizeVtbl
  187.     {
  188.         BEGIN_INTERFACE
  189.         
  190.         HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
  191.             ISyncMgrSynchronize * This,
  192.             /* [in] */ REFIID riid,
  193.             /* [iid_is][out] */ void **ppvObject);
  194.         
  195.         ULONG ( STDMETHODCALLTYPE *AddRef )( 
  196.             ISyncMgrSynchronize * This);
  197.         
  198.         ULONG ( STDMETHODCALLTYPE *Release )( 
  199.             ISyncMgrSynchronize * This);
  200.         
  201.         HRESULT ( STDMETHODCALLTYPE *Initialize )( 
  202.             ISyncMgrSynchronize * This,
  203.             /* [in] */ DWORD dwReserved,
  204.             /* [in] */ DWORD dwSyncMgrFlags,
  205.             /* [in] */ DWORD cbCookie,
  206.             /* [size_is][unique][in] */ const BYTE *lpCookie);
  207.         
  208.         HRESULT ( STDMETHODCALLTYPE *GetHandlerInfo )( 
  209.             ISyncMgrSynchronize * This,
  210.             /* [out] */ LPSYNCMGRHANDLERINFO *ppSyncMgrHandlerInfo);
  211.         
  212.         HRESULT ( STDMETHODCALLTYPE *EnumSyncMgrItems )( 
  213.             ISyncMgrSynchronize * This,
  214.             /* [out] */ ISyncMgrEnumItems **ppSyncMgrEnumItems);
  215.         
  216.         HRESULT ( STDMETHODCALLTYPE *GetItemObject )( 
  217.             ISyncMgrSynchronize * This,
  218.             /* [in] */ REFSYNCMGRITEMID ItemID,
  219.             /* [in] */ REFIID riid,
  220.             /* [iid_is][out] */ void **ppv);
  221.         
  222.         HRESULT ( STDMETHODCALLTYPE *ShowProperties )( 
  223.             ISyncMgrSynchronize * This,
  224.             /* [in] */ HWND hWndParent,
  225.             /* [in] */ REFSYNCMGRITEMID ItemID);
  226.         
  227.         HRESULT ( STDMETHODCALLTYPE *SetProgressCallback )( 
  228.             ISyncMgrSynchronize * This,
  229.             /* [unique][in] */ ISyncMgrSynchronizeCallback *lpCallBack);
  230.         
  231.         HRESULT ( STDMETHODCALLTYPE *PrepareForSync )( 
  232.             ISyncMgrSynchronize * This,
  233.             /* [in] */ ULONG cbNumItems,
  234.             /* [size_is][in] */ SYNCMGRITEMID *pItemIDs,
  235.             /* [in] */ HWND hWndParent,
  236.             /* [in] */ DWORD dwReserved);
  237.         
  238.         HRESULT ( STDMETHODCALLTYPE *Synchronize )( 
  239.             ISyncMgrSynchronize * This,
  240.             /* [in] */ HWND hWndParent);
  241.         
  242.         HRESULT ( STDMETHODCALLTYPE *SetItemStatus )( 
  243.             ISyncMgrSynchronize * This,
  244.             /* [in] */ REFSYNCMGRITEMID pItemID,
  245.             /* [in] */ DWORD dwSyncMgrStatus);
  246.         
  247.         HRESULT ( STDMETHODCALLTYPE *ShowError )( 
  248.             ISyncMgrSynchronize * This,
  249.             /* [in] */ HWND hWndParent,
  250.             /* [in] */ REFSYNCMGRERRORID ErrorID);
  251.         
  252.         END_INTERFACE
  253.     } ISyncMgrSynchronizeVtbl;
  254.     interface ISyncMgrSynchronize
  255.     {
  256.         CONST_VTBL struct ISyncMgrSynchronizeVtbl *lpVtbl;
  257.     };
  258.     
  259. #ifdef COBJMACROS
  260. #define ISyncMgrSynchronize_QueryInterface(This,riid,ppvObject)
  261.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  262. #define ISyncMgrSynchronize_AddRef(This)
  263.     (This)->lpVtbl -> AddRef(This)
  264. #define ISyncMgrSynchronize_Release(This)
  265.     (This)->lpVtbl -> Release(This)
  266. #define ISyncMgrSynchronize_Initialize(This,dwReserved,dwSyncMgrFlags,cbCookie,lpCookie)
  267.     (This)->lpVtbl -> Initialize(This,dwReserved,dwSyncMgrFlags,cbCookie,lpCookie)
  268. #define ISyncMgrSynchronize_GetHandlerInfo(This,ppSyncMgrHandlerInfo)
  269.     (This)->lpVtbl -> GetHandlerInfo(This,ppSyncMgrHandlerInfo)
  270. #define ISyncMgrSynchronize_EnumSyncMgrItems(This,ppSyncMgrEnumItems)
  271.     (This)->lpVtbl -> EnumSyncMgrItems(This,ppSyncMgrEnumItems)
  272. #define ISyncMgrSynchronize_GetItemObject(This,ItemID,riid,ppv)
  273.     (This)->lpVtbl -> GetItemObject(This,ItemID,riid,ppv)
  274. #define ISyncMgrSynchronize_ShowProperties(This,hWndParent,ItemID)
  275.     (This)->lpVtbl -> ShowProperties(This,hWndParent,ItemID)
  276. #define ISyncMgrSynchronize_SetProgressCallback(This,lpCallBack)
  277.     (This)->lpVtbl -> SetProgressCallback(This,lpCallBack)
  278. #define ISyncMgrSynchronize_PrepareForSync(This,cbNumItems,pItemIDs,hWndParent,dwReserved)
  279.     (This)->lpVtbl -> PrepareForSync(This,cbNumItems,pItemIDs,hWndParent,dwReserved)
  280. #define ISyncMgrSynchronize_Synchronize(This,hWndParent)
  281.     (This)->lpVtbl -> Synchronize(This,hWndParent)
  282. #define ISyncMgrSynchronize_SetItemStatus(This,pItemID,dwSyncMgrStatus)
  283.     (This)->lpVtbl -> SetItemStatus(This,pItemID,dwSyncMgrStatus)
  284. #define ISyncMgrSynchronize_ShowError(This,hWndParent,ErrorID)
  285.     (This)->lpVtbl -> ShowError(This,hWndParent,ErrorID)
  286. #endif /* COBJMACROS */
  287. #endif  /* C style interface */
  288. HRESULT STDMETHODCALLTYPE ISyncMgrSynchronize_Initialize_Proxy( 
  289.     ISyncMgrSynchronize * This,
  290.     /* [in] */ DWORD dwReserved,
  291.     /* [in] */ DWORD dwSyncMgrFlags,
  292.     /* [in] */ DWORD cbCookie,
  293.     /* [size_is][unique][in] */ const BYTE *lpCookie);
  294. void __RPC_STUB ISyncMgrSynchronize_Initialize_Stub(
  295.     IRpcStubBuffer *This,
  296.     IRpcChannelBuffer *_pRpcChannelBuffer,
  297.     PRPC_MESSAGE _pRpcMessage,
  298.     DWORD *_pdwStubPhase);
  299. HRESULT STDMETHODCALLTYPE ISyncMgrSynchronize_GetHandlerInfo_Proxy( 
  300.     ISyncMgrSynchronize * This,
  301.     /* [out] */ LPSYNCMGRHANDLERINFO *ppSyncMgrHandlerInfo);
  302. void __RPC_STUB ISyncMgrSynchronize_GetHandlerInfo_Stub(
  303.     IRpcStubBuffer *This,
  304.     IRpcChannelBuffer *_pRpcChannelBuffer,
  305.     PRPC_MESSAGE _pRpcMessage,
  306.     DWORD *_pdwStubPhase);
  307. HRESULT STDMETHODCALLTYPE ISyncMgrSynchronize_EnumSyncMgrItems_Proxy( 
  308.     ISyncMgrSynchronize * This,
  309.     /* [out] */ ISyncMgrEnumItems **ppSyncMgrEnumItems);
  310. void __RPC_STUB ISyncMgrSynchronize_EnumSyncMgrItems_Stub(
  311.     IRpcStubBuffer *This,
  312.     IRpcChannelBuffer *_pRpcChannelBuffer,
  313.     PRPC_MESSAGE _pRpcMessage,
  314.     DWORD *_pdwStubPhase);
  315. HRESULT STDMETHODCALLTYPE ISyncMgrSynchronize_GetItemObject_Proxy( 
  316.     ISyncMgrSynchronize * This,
  317.     /* [in] */ REFSYNCMGRITEMID ItemID,
  318.     /* [in] */ REFIID riid,
  319.     /* [iid_is][out] */ void **ppv);
  320. void __RPC_STUB ISyncMgrSynchronize_GetItemObject_Stub(
  321.     IRpcStubBuffer *This,
  322.     IRpcChannelBuffer *_pRpcChannelBuffer,
  323.     PRPC_MESSAGE _pRpcMessage,
  324.     DWORD *_pdwStubPhase);
  325. HRESULT STDMETHODCALLTYPE ISyncMgrSynchronize_ShowProperties_Proxy( 
  326.     ISyncMgrSynchronize * This,
  327.     /* [in] */ HWND hWndParent,
  328.     /* [in] */ REFSYNCMGRITEMID ItemID);
  329. void __RPC_STUB ISyncMgrSynchronize_ShowProperties_Stub(
  330.     IRpcStubBuffer *This,
  331.     IRpcChannelBuffer *_pRpcChannelBuffer,
  332.     PRPC_MESSAGE _pRpcMessage,
  333.     DWORD *_pdwStubPhase);
  334. HRESULT STDMETHODCALLTYPE ISyncMgrSynchronize_SetProgressCallback_Proxy( 
  335.     ISyncMgrSynchronize * This,
  336.     /* [unique][in] */ ISyncMgrSynchronizeCallback *lpCallBack);
  337. void __RPC_STUB ISyncMgrSynchronize_SetProgressCallback_Stub(
  338.     IRpcStubBuffer *This,
  339.     IRpcChannelBuffer *_pRpcChannelBuffer,
  340.     PRPC_MESSAGE _pRpcMessage,
  341.     DWORD *_pdwStubPhase);
  342. HRESULT STDMETHODCALLTYPE ISyncMgrSynchronize_PrepareForSync_Proxy( 
  343.     ISyncMgrSynchronize * This,
  344.     /* [in] */ ULONG cbNumItems,
  345.     /* [size_is][in] */ SYNCMGRITEMID *pItemIDs,
  346.     /* [in] */ HWND hWndParent,
  347.     /* [in] */ DWORD dwReserved);
  348. void __RPC_STUB ISyncMgrSynchronize_PrepareForSync_Stub(
  349.     IRpcStubBuffer *This,
  350.     IRpcChannelBuffer *_pRpcChannelBuffer,
  351.     PRPC_MESSAGE _pRpcMessage,
  352.     DWORD *_pdwStubPhase);
  353. HRESULT STDMETHODCALLTYPE ISyncMgrSynchronize_Synchronize_Proxy( 
  354.     ISyncMgrSynchronize * This,
  355.     /* [in] */ HWND hWndParent);
  356. void __RPC_STUB ISyncMgrSynchronize_Synchronize_Stub(
  357.     IRpcStubBuffer *This,
  358.     IRpcChannelBuffer *_pRpcChannelBuffer,
  359.     PRPC_MESSAGE _pRpcMessage,
  360.     DWORD *_pdwStubPhase);
  361. HRESULT STDMETHODCALLTYPE ISyncMgrSynchronize_SetItemStatus_Proxy( 
  362.     ISyncMgrSynchronize * This,
  363.     /* [in] */ REFSYNCMGRITEMID pItemID,
  364.     /* [in] */ DWORD dwSyncMgrStatus);
  365. void __RPC_STUB ISyncMgrSynchronize_SetItemStatus_Stub(
  366.     IRpcStubBuffer *This,
  367.     IRpcChannelBuffer *_pRpcChannelBuffer,
  368.     PRPC_MESSAGE _pRpcMessage,
  369.     DWORD *_pdwStubPhase);
  370. HRESULT STDMETHODCALLTYPE ISyncMgrSynchronize_ShowError_Proxy( 
  371.     ISyncMgrSynchronize * This,
  372.     /* [in] */ HWND hWndParent,
  373.     /* [in] */ REFSYNCMGRERRORID ErrorID);
  374. void __RPC_STUB ISyncMgrSynchronize_ShowError_Stub(
  375.     IRpcStubBuffer *This,
  376.     IRpcChannelBuffer *_pRpcChannelBuffer,
  377.     PRPC_MESSAGE _pRpcMessage,
  378.     DWORD *_pdwStubPhase);
  379. #endif  /* __ISyncMgrSynchronize_INTERFACE_DEFINED__ */
  380. #ifndef __ISyncMgrSynchronizeCallback_INTERFACE_DEFINED__
  381. #define __ISyncMgrSynchronizeCallback_INTERFACE_DEFINED__
  382. /* interface ISyncMgrSynchronizeCallback */
  383. /* [uuid][object][local] */ 
  384. typedef /* [unique] */ ISyncMgrSynchronizeCallback *LPSYNCMGRSYNCHRONIZECALLBACK;
  385. #define   SYNCMGRPROGRESSITEM_STATUSTEXT         0x0001
  386. #define   SYNCMGRPROGRESSITEM_STATUSTYPE         0x0002
  387. #define   SYNCMGRPROGRESSITEM_PROGVALUE      0x0004
  388. #define   SYNCMGRPROGRESSITEM_MAXVALUE       0x0008
  389. typedef struct _tagSYNCMGRPROGRESSITEM
  390.     {
  391.     DWORD cbSize;
  392.     UINT mask;
  393.     LPCWSTR lpcStatusText;
  394.     DWORD dwStatusType;
  395.     INT iProgValue;
  396.     INT iMaxValue;
  397.     }  SYNCMGRPROGRESSITEM;
  398. typedef struct _tagSYNCMGRPROGRESSITEM *LPSYNCMGRPROGRESSITEM;
  399. typedef 
  400. enum _tagSYNCMGRLOGLEVEL
  401.     { SYNCMGRLOGLEVEL_INFORMATION = 0x1,
  402. SYNCMGRLOGLEVEL_WARNING = 0x2,
  403. SYNCMGRLOGLEVEL_ERROR = 0x3
  404.     }  SYNCMGRLOGLEVEL;
  405. #define   SYNCMGRLOGERROR_ERRORFLAGS                     0x0001
  406. #define   SYNCMGRLOGERROR_ERRORID                        0x0002
  407. #define   SYNCMGRLOGERROR_ITEMID                         0x0004
  408. typedef 
  409. enum _tagSYNCMGRERRORFLAGS
  410.     { SYNCMGRERRORFLAG_ENABLEJUMPTEXT = 0x1
  411.     }  SYNCMGRERRORFLAGS;
  412. typedef struct _tagSYNCMGRLOGERRORINFO
  413.     {
  414.     DWORD cbSize;
  415.     DWORD mask;
  416.     DWORD dwSyncMgrErrorFlags;
  417.     SYNCMGRERRORID ErrorID;
  418.     SYNCMGRITEMID ItemID;
  419.     }  SYNCMGRLOGERRORINFO;
  420. typedef struct _tagSYNCMGRLOGERRORINFO *LPSYNCMGRLOGERRORINFO;
  421. EXTERN_C const IID IID_ISyncMgrSynchronizeCallback;
  422. #if defined(__cplusplus) && !defined(CINTERFACE)
  423.     
  424.     MIDL_INTERFACE("6295DF41-35EE-11d1-8707-00C04FD93327")
  425.     ISyncMgrSynchronizeCallback : public IUnknown
  426.     {
  427.     public:
  428.         virtual HRESULT STDMETHODCALLTYPE ShowPropertiesCompleted( 
  429.             /* [in] */ HRESULT hr) = 0;
  430.         
  431.         virtual HRESULT STDMETHODCALLTYPE PrepareForSyncCompleted( 
  432.             /* [in] */ HRESULT hr) = 0;
  433.         
  434.         virtual HRESULT STDMETHODCALLTYPE SynchronizeCompleted( 
  435.             /* [in] */ HRESULT hr) = 0;
  436.         
  437.         virtual HRESULT STDMETHODCALLTYPE ShowErrorCompleted( 
  438.             /* [in] */ HRESULT hr,
  439.             /* [in] */ ULONG cbNumItems,
  440.             /* [size_is][unique][in] */ SYNCMGRITEMID *pItemIDs) = 0;
  441.         
  442.         virtual HRESULT STDMETHODCALLTYPE EnableModeless( 
  443.             /* [in] */ BOOL fEnable) = 0;
  444.         
  445.         virtual HRESULT STDMETHODCALLTYPE Progress( 
  446.             /* [in] */ REFSYNCMGRITEMID pItemID,
  447.             /* [unique][in] */ LPSYNCMGRPROGRESSITEM lpSyncProgressItem) = 0;
  448.         
  449.         virtual HRESULT STDMETHODCALLTYPE LogError( 
  450.             /* [in] */ DWORD dwErrorLevel,
  451.             /* [in] */ LPCWSTR lpcErrorText,
  452.             /* [unique][in] */ LPSYNCMGRLOGERRORINFO lpSyncLogError) = 0;
  453.         
  454.         virtual HRESULT STDMETHODCALLTYPE DeleteLogError( 
  455.             /* [in] */ REFSYNCMGRERRORID ErrorID,
  456.             /* [in] */ DWORD dwReserved) = 0;
  457.         
  458.         virtual HRESULT STDMETHODCALLTYPE EstablishConnection( 
  459.             /* [unique][in] */ LPCWSTR lpwszConnection,
  460.             /* [in] */ DWORD dwReserved) = 0;
  461.         
  462.     };
  463.     
  464. #else  /* C style interface */
  465.     typedef struct ISyncMgrSynchronizeCallbackVtbl
  466.     {
  467.         BEGIN_INTERFACE
  468.         
  469.         HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
  470.             ISyncMgrSynchronizeCallback * This,
  471.             /* [in] */ REFIID riid,
  472.             /* [iid_is][out] */ void **ppvObject);
  473.         
  474.         ULONG ( STDMETHODCALLTYPE *AddRef )( 
  475.             ISyncMgrSynchronizeCallback * This);
  476.         
  477.         ULONG ( STDMETHODCALLTYPE *Release )( 
  478.             ISyncMgrSynchronizeCallback * This);
  479.         
  480.         HRESULT ( STDMETHODCALLTYPE *ShowPropertiesCompleted )( 
  481.             ISyncMgrSynchronizeCallback * This,
  482.             /* [in] */ HRESULT hr);
  483.         
  484.         HRESULT ( STDMETHODCALLTYPE *PrepareForSyncCompleted )( 
  485.             ISyncMgrSynchronizeCallback * This,
  486.             /* [in] */ HRESULT hr);
  487.         
  488.         HRESULT ( STDMETHODCALLTYPE *SynchronizeCompleted )( 
  489.             ISyncMgrSynchronizeCallback * This,
  490.             /* [in] */ HRESULT hr);
  491.         
  492.         HRESULT ( STDMETHODCALLTYPE *ShowErrorCompleted )( 
  493.             ISyncMgrSynchronizeCallback * This,
  494.             /* [in] */ HRESULT hr,
  495.             /* [in] */ ULONG cbNumItems,
  496.             /* [size_is][unique][in] */ SYNCMGRITEMID *pItemIDs);
  497.         
  498.         HRESULT ( STDMETHODCALLTYPE *EnableModeless )( 
  499.             ISyncMgrSynchronizeCallback * This,
  500.             /* [in] */ BOOL fEnable);
  501.         
  502.         HRESULT ( STDMETHODCALLTYPE *Progress )( 
  503.             ISyncMgrSynchronizeCallback * This,
  504.             /* [in] */ REFSYNCMGRITEMID pItemID,
  505.             /* [unique][in] */ LPSYNCMGRPROGRESSITEM lpSyncProgressItem);
  506.         
  507.         HRESULT ( STDMETHODCALLTYPE *LogError )( 
  508.             ISyncMgrSynchronizeCallback * This,
  509.             /* [in] */ DWORD dwErrorLevel,
  510.             /* [in] */ LPCWSTR lpcErrorText,
  511.             /* [unique][in] */ LPSYNCMGRLOGERRORINFO lpSyncLogError);
  512.         
  513.         HRESULT ( STDMETHODCALLTYPE *DeleteLogError )( 
  514.             ISyncMgrSynchronizeCallback * This,
  515.             /* [in] */ REFSYNCMGRERRORID ErrorID,
  516.             /* [in] */ DWORD dwReserved);
  517.         
  518.         HRESULT ( STDMETHODCALLTYPE *EstablishConnection )( 
  519.             ISyncMgrSynchronizeCallback * This,
  520.             /* [unique][in] */ LPCWSTR lpwszConnection,
  521.             /* [in] */ DWORD dwReserved);
  522.         
  523.         END_INTERFACE
  524.     } ISyncMgrSynchronizeCallbackVtbl;
  525.     interface ISyncMgrSynchronizeCallback
  526.     {
  527.         CONST_VTBL struct ISyncMgrSynchronizeCallbackVtbl *lpVtbl;
  528.     };
  529.     
  530. #ifdef COBJMACROS
  531. #define ISyncMgrSynchronizeCallback_QueryInterface(This,riid,ppvObject)
  532.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  533. #define ISyncMgrSynchronizeCallback_AddRef(This)
  534.     (This)->lpVtbl -> AddRef(This)
  535. #define ISyncMgrSynchronizeCallback_Release(This)
  536.     (This)->lpVtbl -> Release(This)
  537. #define ISyncMgrSynchronizeCallback_ShowPropertiesCompleted(This,hr)
  538.     (This)->lpVtbl -> ShowPropertiesCompleted(This,hr)
  539. #define ISyncMgrSynchronizeCallback_PrepareForSyncCompleted(This,hr)
  540.     (This)->lpVtbl -> PrepareForSyncCompleted(This,hr)
  541. #define ISyncMgrSynchronizeCallback_SynchronizeCompleted(This,hr)
  542.     (This)->lpVtbl -> SynchronizeCompleted(This,hr)
  543. #define ISyncMgrSynchronizeCallback_ShowErrorCompleted(This,hr,cbNumItems,pItemIDs)
  544.     (This)->lpVtbl -> ShowErrorCompleted(This,hr,cbNumItems,pItemIDs)
  545. #define ISyncMgrSynchronizeCallback_EnableModeless(This,fEnable)
  546.     (This)->lpVtbl -> EnableModeless(This,fEnable)
  547. #define ISyncMgrSynchronizeCallback_Progress(This,pItemID,lpSyncProgressItem)
  548.     (This)->lpVtbl -> Progress(This,pItemID,lpSyncProgressItem)
  549. #define ISyncMgrSynchronizeCallback_LogError(This,dwErrorLevel,lpcErrorText,lpSyncLogError)
  550.     (This)->lpVtbl -> LogError(This,dwErrorLevel,lpcErrorText,lpSyncLogError)
  551. #define ISyncMgrSynchronizeCallback_DeleteLogError(This,ErrorID,dwReserved)
  552.     (This)->lpVtbl -> DeleteLogError(This,ErrorID,dwReserved)
  553. #define ISyncMgrSynchronizeCallback_EstablishConnection(This,lpwszConnection,dwReserved)
  554.     (This)->lpVtbl -> EstablishConnection(This,lpwszConnection,dwReserved)
  555. #endif /* COBJMACROS */
  556. #endif  /* C style interface */
  557. HRESULT STDMETHODCALLTYPE ISyncMgrSynchronizeCallback_ShowPropertiesCompleted_Proxy( 
  558.     ISyncMgrSynchronizeCallback * This,
  559.     /* [in] */ HRESULT hr);
  560. void __RPC_STUB ISyncMgrSynchronizeCallback_ShowPropertiesCompleted_Stub(
  561.     IRpcStubBuffer *This,
  562.     IRpcChannelBuffer *_pRpcChannelBuffer,
  563.     PRPC_MESSAGE _pRpcMessage,
  564.     DWORD *_pdwStubPhase);
  565. HRESULT STDMETHODCALLTYPE ISyncMgrSynchronizeCallback_PrepareForSyncCompleted_Proxy( 
  566.     ISyncMgrSynchronizeCallback * This,
  567.     /* [in] */ HRESULT hr);
  568. void __RPC_STUB ISyncMgrSynchronizeCallback_PrepareForSyncCompleted_Stub(
  569.     IRpcStubBuffer *This,
  570.     IRpcChannelBuffer *_pRpcChannelBuffer,
  571.     PRPC_MESSAGE _pRpcMessage,
  572.     DWORD *_pdwStubPhase);
  573. HRESULT STDMETHODCALLTYPE ISyncMgrSynchronizeCallback_SynchronizeCompleted_Proxy( 
  574.     ISyncMgrSynchronizeCallback * This,
  575.     /* [in] */ HRESULT hr);
  576. void __RPC_STUB ISyncMgrSynchronizeCallback_SynchronizeCompleted_Stub(
  577.     IRpcStubBuffer *This,
  578.     IRpcChannelBuffer *_pRpcChannelBuffer,
  579.     PRPC_MESSAGE _pRpcMessage,
  580.     DWORD *_pdwStubPhase);
  581. HRESULT STDMETHODCALLTYPE ISyncMgrSynchronizeCallback_ShowErrorCompleted_Proxy( 
  582.     ISyncMgrSynchronizeCallback * This,
  583.     /* [in] */ HRESULT hr,
  584.     /* [in] */ ULONG cbNumItems,
  585.     /* [size_is][unique][in] */ SYNCMGRITEMID *pItemIDs);
  586. void __RPC_STUB ISyncMgrSynchronizeCallback_ShowErrorCompleted_Stub(
  587.     IRpcStubBuffer *This,
  588.     IRpcChannelBuffer *_pRpcChannelBuffer,
  589.     PRPC_MESSAGE _pRpcMessage,
  590.     DWORD *_pdwStubPhase);
  591. HRESULT STDMETHODCALLTYPE ISyncMgrSynchronizeCallback_EnableModeless_Proxy( 
  592.     ISyncMgrSynchronizeCallback * This,
  593.     /* [in] */ BOOL fEnable);
  594. void __RPC_STUB ISyncMgrSynchronizeCallback_EnableModeless_Stub(
  595.     IRpcStubBuffer *This,
  596.     IRpcChannelBuffer *_pRpcChannelBuffer,
  597.     PRPC_MESSAGE _pRpcMessage,
  598.     DWORD *_pdwStubPhase);
  599. HRESULT STDMETHODCALLTYPE ISyncMgrSynchronizeCallback_Progress_Proxy( 
  600.     ISyncMgrSynchronizeCallback * This,
  601.     /* [in] */ REFSYNCMGRITEMID pItemID,
  602.     /* [unique][in] */ LPSYNCMGRPROGRESSITEM lpSyncProgressItem);
  603. void __RPC_STUB ISyncMgrSynchronizeCallback_Progress_Stub(
  604.     IRpcStubBuffer *This,
  605.     IRpcChannelBuffer *_pRpcChannelBuffer,
  606.     PRPC_MESSAGE _pRpcMessage,
  607.     DWORD *_pdwStubPhase);
  608. HRESULT STDMETHODCALLTYPE ISyncMgrSynchronizeCallback_LogError_Proxy( 
  609.     ISyncMgrSynchronizeCallback * This,
  610.     /* [in] */ DWORD dwErrorLevel,
  611.     /* [in] */ LPCWSTR lpcErrorText,
  612.     /* [unique][in] */ LPSYNCMGRLOGERRORINFO lpSyncLogError);
  613. void __RPC_STUB ISyncMgrSynchronizeCallback_LogError_Stub(
  614.     IRpcStubBuffer *This,
  615.     IRpcChannelBuffer *_pRpcChannelBuffer,
  616.     PRPC_MESSAGE _pRpcMessage,
  617.     DWORD *_pdwStubPhase);
  618. HRESULT STDMETHODCALLTYPE ISyncMgrSynchronizeCallback_DeleteLogError_Proxy( 
  619.     ISyncMgrSynchronizeCallback * This,
  620.     /* [in] */ REFSYNCMGRERRORID ErrorID,
  621.     /* [in] */ DWORD dwReserved);
  622. void __RPC_STUB ISyncMgrSynchronizeCallback_DeleteLogError_Stub(
  623.     IRpcStubBuffer *This,
  624.     IRpcChannelBuffer *_pRpcChannelBuffer,
  625.     PRPC_MESSAGE _pRpcMessage,
  626.     DWORD *_pdwStubPhase);
  627. HRESULT STDMETHODCALLTYPE ISyncMgrSynchronizeCallback_EstablishConnection_Proxy( 
  628.     ISyncMgrSynchronizeCallback * This,
  629.     /* [unique][in] */ LPCWSTR lpwszConnection,
  630.     /* [in] */ DWORD dwReserved);
  631. void __RPC_STUB ISyncMgrSynchronizeCallback_EstablishConnection_Stub(
  632.     IRpcStubBuffer *This,
  633.     IRpcChannelBuffer *_pRpcChannelBuffer,
  634.     PRPC_MESSAGE _pRpcMessage,
  635.     DWORD *_pdwStubPhase);
  636. #endif  /* __ISyncMgrSynchronizeCallback_INTERFACE_DEFINED__ */
  637. #ifndef __ISyncMgrEnumItems_INTERFACE_DEFINED__
  638. #define __ISyncMgrEnumItems_INTERFACE_DEFINED__
  639. /* interface ISyncMgrEnumItems */
  640. /* [unique][uuid][object][local] */ 
  641. typedef /* [unique] */ ISyncMgrEnumItems *LPSYNCMGRENUMITEMS;
  642. #define SYNCMGRITEM_ITEMFLAGMASK  0x1F
  643. #define MAX_SYNCMGRITEMNAME ( 128 )
  644. typedef 
  645. enum _tagSYNCMGRITEMFLAGS
  646.     { SYNCMGRITEM_HASPROPERTIES = 0x1,
  647. SYNCMGRITEM_TEMPORARY = 0x2,
  648. SYNCMGRITEM_ROAMINGUSER = 0x4,
  649. SYNCMGRITEM_LASTUPDATETIME = 0x8,
  650. SYNCMGRITEM_MAYDELETEITEM = 0x10
  651.     }  SYNCMGRITEMFLAGS;
  652. typedef struct _tagSYNCMGRITEM
  653.     {
  654.     DWORD cbSize;
  655.     DWORD dwFlags;
  656.     SYNCMGRITEMID ItemID;
  657.     DWORD dwItemState;
  658.     HICON hIcon;
  659.     WCHAR wszItemName[ 128 ];
  660.     FILETIME ftLastUpdate;
  661.     }  SYNCMGRITEM;
  662. typedef struct _tagSYNCMGRITEM *LPSYNCMGRITEM;
  663. EXTERN_C const IID IID_ISyncMgrEnumItems;
  664. #if defined(__cplusplus) && !defined(CINTERFACE)
  665.     
  666.     MIDL_INTERFACE("6295DF2A-35EE-11d1-8707-00C04FD93327")
  667.     ISyncMgrEnumItems : public IUnknown
  668.     {
  669.     public:
  670.         virtual HRESULT STDMETHODCALLTYPE Next( 
  671.             /* [in] */ ULONG celt,
  672.             /* [length_is][size_is][out] */ LPSYNCMGRITEM rgelt,
  673.             /* [out] */ ULONG *pceltFetched) = 0;
  674.         
  675.         virtual HRESULT STDMETHODCALLTYPE Skip( 
  676.             /* [in] */ ULONG celt) = 0;
  677.         
  678.         virtual HRESULT STDMETHODCALLTYPE Reset( void) = 0;
  679.         
  680.         virtual HRESULT STDMETHODCALLTYPE Clone( 
  681.             /* [out] */ ISyncMgrEnumItems **ppenum) = 0;
  682.         
  683.     };
  684.     
  685. #else  /* C style interface */
  686.     typedef struct ISyncMgrEnumItemsVtbl
  687.     {
  688.         BEGIN_INTERFACE
  689.         
  690.         HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
  691.             ISyncMgrEnumItems * This,
  692.             /* [in] */ REFIID riid,
  693.             /* [iid_is][out] */ void **ppvObject);
  694.         
  695.         ULONG ( STDMETHODCALLTYPE *AddRef )( 
  696.             ISyncMgrEnumItems * This);
  697.         
  698.         ULONG ( STDMETHODCALLTYPE *Release )( 
  699.             ISyncMgrEnumItems * This);
  700.         
  701.         HRESULT ( STDMETHODCALLTYPE *Next )( 
  702.             ISyncMgrEnumItems * This,
  703.             /* [in] */ ULONG celt,
  704.             /* [length_is][size_is][out] */ LPSYNCMGRITEM rgelt,
  705.             /* [out] */ ULONG *pceltFetched);
  706.         
  707.         HRESULT ( STDMETHODCALLTYPE *Skip )( 
  708.             ISyncMgrEnumItems * This,
  709.             /* [in] */ ULONG celt);
  710.         
  711.         HRESULT ( STDMETHODCALLTYPE *Reset )( 
  712.             ISyncMgrEnumItems * This);
  713.         
  714.         HRESULT ( STDMETHODCALLTYPE *Clone )( 
  715.             ISyncMgrEnumItems * This,
  716.             /* [out] */ ISyncMgrEnumItems **ppenum);
  717.         
  718.         END_INTERFACE
  719.     } ISyncMgrEnumItemsVtbl;
  720.     interface ISyncMgrEnumItems
  721.     {
  722.         CONST_VTBL struct ISyncMgrEnumItemsVtbl *lpVtbl;
  723.     };
  724.     
  725. #ifdef COBJMACROS
  726. #define ISyncMgrEnumItems_QueryInterface(This,riid,ppvObject)
  727.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  728. #define ISyncMgrEnumItems_AddRef(This)
  729.     (This)->lpVtbl -> AddRef(This)
  730. #define ISyncMgrEnumItems_Release(This)
  731.     (This)->lpVtbl -> Release(This)
  732. #define ISyncMgrEnumItems_Next(This,celt,rgelt,pceltFetched)
  733.     (This)->lpVtbl -> Next(This,celt,rgelt,pceltFetched)
  734. #define ISyncMgrEnumItems_Skip(This,celt)
  735.     (This)->lpVtbl -> Skip(This,celt)
  736. #define ISyncMgrEnumItems_Reset(This)
  737.     (This)->lpVtbl -> Reset(This)
  738. #define ISyncMgrEnumItems_Clone(This,ppenum)
  739.     (This)->lpVtbl -> Clone(This,ppenum)
  740. #endif /* COBJMACROS */
  741. #endif  /* C style interface */
  742. HRESULT STDMETHODCALLTYPE ISyncMgrEnumItems_Next_Proxy( 
  743.     ISyncMgrEnumItems * This,
  744.     /* [in] */ ULONG celt,
  745.     /* [length_is][size_is][out] */ LPSYNCMGRITEM rgelt,
  746.     /* [out] */ ULONG *pceltFetched);
  747. void __RPC_STUB ISyncMgrEnumItems_Next_Stub(
  748.     IRpcStubBuffer *This,
  749.     IRpcChannelBuffer *_pRpcChannelBuffer,
  750.     PRPC_MESSAGE _pRpcMessage,
  751.     DWORD *_pdwStubPhase);
  752. HRESULT STDMETHODCALLTYPE ISyncMgrEnumItems_Skip_Proxy( 
  753.     ISyncMgrEnumItems * This,
  754.     /* [in] */ ULONG celt);
  755. void __RPC_STUB ISyncMgrEnumItems_Skip_Stub(
  756.     IRpcStubBuffer *This,
  757.     IRpcChannelBuffer *_pRpcChannelBuffer,
  758.     PRPC_MESSAGE _pRpcMessage,
  759.     DWORD *_pdwStubPhase);
  760. HRESULT STDMETHODCALLTYPE ISyncMgrEnumItems_Reset_Proxy( 
  761.     ISyncMgrEnumItems * This);
  762. void __RPC_STUB ISyncMgrEnumItems_Reset_Stub(
  763.     IRpcStubBuffer *This,
  764.     IRpcChannelBuffer *_pRpcChannelBuffer,
  765.     PRPC_MESSAGE _pRpcMessage,
  766.     DWORD *_pdwStubPhase);
  767. HRESULT STDMETHODCALLTYPE ISyncMgrEnumItems_Clone_Proxy( 
  768.     ISyncMgrEnumItems * This,
  769.     /* [out] */ ISyncMgrEnumItems **ppenum);
  770. void __RPC_STUB ISyncMgrEnumItems_Clone_Stub(
  771.     IRpcStubBuffer *This,
  772.     IRpcChannelBuffer *_pRpcChannelBuffer,
  773.     PRPC_MESSAGE _pRpcMessage,
  774.     DWORD *_pdwStubPhase);
  775. #endif  /* __ISyncMgrEnumItems_INTERFACE_DEFINED__ */
  776. #ifndef __ISyncMgrSynchronizeInvoke_INTERFACE_DEFINED__
  777. #define __ISyncMgrSynchronizeInvoke_INTERFACE_DEFINED__
  778. /* interface ISyncMgrSynchronizeInvoke */
  779. /* [unique][uuid][object][local] */ 
  780. typedef /* [unique] */ ISyncMgrSynchronizeInvoke *LPSYNCMGRSYNCHRONIZEINVOKE;
  781. typedef 
  782. enum _tagSYNCMGRINVOKEFLAGS
  783.     { SYNCMGRINVOKE_STARTSYNC = 0x2,
  784. SYNCMGRINVOKE_MINIMIZED = 0x4
  785.     }  SYNCMGRINVOKEFLAGS;
  786. EXTERN_C const IID IID_ISyncMgrSynchronizeInvoke;
  787. #if defined(__cplusplus) && !defined(CINTERFACE)
  788.     
  789.     MIDL_INTERFACE("6295DF2C-35EE-11d1-8707-00C04FD93327")
  790.     ISyncMgrSynchronizeInvoke : public IUnknown
  791.     {
  792.     public:
  793.         virtual HRESULT STDMETHODCALLTYPE UpdateItems( 
  794.             /* [in] */ DWORD dwInvokeFlags,
  795.             /* [in] */ REFCLSID rclsid,
  796.             /* [in] */ DWORD cbCookie,
  797.             /* [size_is][unique][in] */ const BYTE *lpCookie) = 0;
  798.         
  799.         virtual HRESULT STDMETHODCALLTYPE UpdateAll( void) = 0;
  800.         
  801.     };
  802.     
  803. #else  /* C style interface */
  804.     typedef struct ISyncMgrSynchronizeInvokeVtbl
  805.     {
  806.         BEGIN_INTERFACE
  807.         
  808.         HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
  809.             ISyncMgrSynchronizeInvoke * This,
  810.             /* [in] */ REFIID riid,
  811.             /* [iid_is][out] */ void **ppvObject);
  812.         
  813.         ULONG ( STDMETHODCALLTYPE *AddRef )( 
  814.             ISyncMgrSynchronizeInvoke * This);
  815.         
  816.         ULONG ( STDMETHODCALLTYPE *Release )( 
  817.             ISyncMgrSynchronizeInvoke * This);
  818.         
  819.         HRESULT ( STDMETHODCALLTYPE *UpdateItems )( 
  820.             ISyncMgrSynchronizeInvoke * This,
  821.             /* [in] */ DWORD dwInvokeFlags,
  822.             /* [in] */ REFCLSID rclsid,
  823.             /* [in] */ DWORD cbCookie,
  824.             /* [size_is][unique][in] */ const BYTE *lpCookie);
  825.         
  826.         HRESULT ( STDMETHODCALLTYPE *UpdateAll )( 
  827.             ISyncMgrSynchronizeInvoke * This);
  828.         
  829.         END_INTERFACE
  830.     } ISyncMgrSynchronizeInvokeVtbl;
  831.     interface ISyncMgrSynchronizeInvoke
  832.     {
  833.         CONST_VTBL struct ISyncMgrSynchronizeInvokeVtbl *lpVtbl;
  834.     };
  835.     
  836. #ifdef COBJMACROS
  837. #define ISyncMgrSynchronizeInvoke_QueryInterface(This,riid,ppvObject)
  838.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  839. #define ISyncMgrSynchronizeInvoke_AddRef(This)
  840.     (This)->lpVtbl -> AddRef(This)
  841. #define ISyncMgrSynchronizeInvoke_Release(This)
  842.     (This)->lpVtbl -> Release(This)
  843. #define ISyncMgrSynchronizeInvoke_UpdateItems(This,dwInvokeFlags,rclsid,cbCookie,lpCookie)
  844.     (This)->lpVtbl -> UpdateItems(This,dwInvokeFlags,rclsid,cbCookie,lpCookie)
  845. #define ISyncMgrSynchronizeInvoke_UpdateAll(This)
  846.     (This)->lpVtbl -> UpdateAll(This)
  847. #endif /* COBJMACROS */
  848. #endif  /* C style interface */
  849. HRESULT STDMETHODCALLTYPE ISyncMgrSynchronizeInvoke_UpdateItems_Proxy( 
  850.     ISyncMgrSynchronizeInvoke * This,
  851.     /* [in] */ DWORD dwInvokeFlags,
  852.     /* [in] */ REFCLSID rclsid,
  853.     /* [in] */ DWORD cbCookie,
  854.     /* [size_is][unique][in] */ const BYTE *lpCookie);
  855. void __RPC_STUB ISyncMgrSynchronizeInvoke_UpdateItems_Stub(
  856.     IRpcStubBuffer *This,
  857.     IRpcChannelBuffer *_pRpcChannelBuffer,
  858.     PRPC_MESSAGE _pRpcMessage,
  859.     DWORD *_pdwStubPhase);
  860. HRESULT STDMETHODCALLTYPE ISyncMgrSynchronizeInvoke_UpdateAll_Proxy( 
  861.     ISyncMgrSynchronizeInvoke * This);
  862. void __RPC_STUB ISyncMgrSynchronizeInvoke_UpdateAll_Stub(
  863.     IRpcStubBuffer *This,
  864.     IRpcChannelBuffer *_pRpcChannelBuffer,
  865.     PRPC_MESSAGE _pRpcMessage,
  866.     DWORD *_pdwStubPhase);
  867. #endif  /* __ISyncMgrSynchronizeInvoke_INTERFACE_DEFINED__ */
  868. #ifndef __ISyncMgrRegister_INTERFACE_DEFINED__
  869. #define __ISyncMgrRegister_INTERFACE_DEFINED__
  870. /* interface ISyncMgrRegister */
  871. /* [unique][uuid][object][local] */ 
  872. typedef /* [unique] */ ISyncMgrRegister *LPSYNCMGRREGISTER;
  873. #define SYNCMGRREGISTERFLAGS_MASK  0x07
  874. typedef 
  875. enum _tagSYNCMGRREGISTERFLAGS
  876.     { SYNCMGRREGISTERFLAG_CONNECT = 0x1,
  877. SYNCMGRREGISTERFLAG_PENDINGDISCONNECT = 0x2,
  878. SYNCMGRREGISTERFLAG_IDLE = 0x4
  879.     }  SYNCMGRREGISTERFLAGS;
  880. EXTERN_C const IID IID_ISyncMgrRegister;
  881. #if defined(__cplusplus) && !defined(CINTERFACE)
  882.     
  883.     MIDL_INTERFACE("6295DF42-35EE-11d1-8707-00C04FD93327")
  884.     ISyncMgrRegister : public IUnknown
  885.     {
  886.     public:
  887.         virtual HRESULT STDMETHODCALLTYPE RegisterSyncMgrHandler( 
  888.             /* [in] */ REFCLSID rclsidHandler,
  889.             /* [unique][in] */ LPCWSTR pwszDescription,
  890.             /* [in] */ DWORD dwSyncMgrRegisterFlags) = 0;
  891.         
  892.         virtual HRESULT STDMETHODCALLTYPE UnregisterSyncMgrHandler( 
  893.             /* [in] */ REFCLSID rclsidHandler,
  894.             /* [in] */ DWORD dwReserved) = 0;
  895.         
  896.         virtual HRESULT STDMETHODCALLTYPE GetHandlerRegistrationInfo( 
  897.             /* [in] */ REFCLSID rclsidHandler,
  898.             /* [out][in] */ LPDWORD pdwSyncMgrRegisterFlags) = 0;
  899.         
  900.     };
  901.     
  902. #else  /* C style interface */
  903.     typedef struct ISyncMgrRegisterVtbl
  904.     {
  905.         BEGIN_INTERFACE
  906.         
  907.         HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
  908.             ISyncMgrRegister * This,
  909.             /* [in] */ REFIID riid,
  910.             /* [iid_is][out] */ void **ppvObject);
  911.         
  912.         ULONG ( STDMETHODCALLTYPE *AddRef )( 
  913.             ISyncMgrRegister * This);
  914.         
  915.         ULONG ( STDMETHODCALLTYPE *Release )( 
  916.             ISyncMgrRegister * This);
  917.         
  918.         HRESULT ( STDMETHODCALLTYPE *RegisterSyncMgrHandler )( 
  919.             ISyncMgrRegister * This,
  920.             /* [in] */ REFCLSID rclsidHandler,
  921.             /* [unique][in] */ LPCWSTR pwszDescription,
  922.             /* [in] */ DWORD dwSyncMgrRegisterFlags);
  923.         
  924.         HRESULT ( STDMETHODCALLTYPE *UnregisterSyncMgrHandler )( 
  925.             ISyncMgrRegister * This,
  926.             /* [in] */ REFCLSID rclsidHandler,
  927.             /* [in] */ DWORD dwReserved);
  928.         
  929.         HRESULT ( STDMETHODCALLTYPE *GetHandlerRegistrationInfo )( 
  930.             ISyncMgrRegister * This,
  931.             /* [in] */ REFCLSID rclsidHandler,
  932.             /* [out][in] */ LPDWORD pdwSyncMgrRegisterFlags);
  933.         
  934.         END_INTERFACE
  935.     } ISyncMgrRegisterVtbl;
  936.     interface ISyncMgrRegister
  937.     {
  938.         CONST_VTBL struct ISyncMgrRegisterVtbl *lpVtbl;
  939.     };
  940.     
  941. #ifdef COBJMACROS
  942. #define ISyncMgrRegister_QueryInterface(This,riid,ppvObject)
  943.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  944. #define ISyncMgrRegister_AddRef(This)
  945.     (This)->lpVtbl -> AddRef(This)
  946. #define ISyncMgrRegister_Release(This)
  947.     (This)->lpVtbl -> Release(This)
  948. #define ISyncMgrRegister_RegisterSyncMgrHandler(This,rclsidHandler,pwszDescription,dwSyncMgrRegisterFlags)
  949.     (This)->lpVtbl -> RegisterSyncMgrHandler(This,rclsidHandler,pwszDescription,dwSyncMgrRegisterFlags)
  950. #define ISyncMgrRegister_UnregisterSyncMgrHandler(This,rclsidHandler,dwReserved)
  951.     (This)->lpVtbl -> UnregisterSyncMgrHandler(This,rclsidHandler,dwReserved)
  952. #define ISyncMgrRegister_GetHandlerRegistrationInfo(This,rclsidHandler,pdwSyncMgrRegisterFlags)
  953.     (This)->lpVtbl -> GetHandlerRegistrationInfo(This,rclsidHandler,pdwSyncMgrRegisterFlags)
  954. #endif /* COBJMACROS */
  955. #endif  /* C style interface */
  956. HRESULT STDMETHODCALLTYPE ISyncMgrRegister_RegisterSyncMgrHandler_Proxy( 
  957.     ISyncMgrRegister * This,
  958.     /* [in] */ REFCLSID rclsidHandler,
  959.     /* [unique][in] */ LPCWSTR pwszDescription,
  960.     /* [in] */ DWORD dwSyncMgrRegisterFlags);
  961. void __RPC_STUB ISyncMgrRegister_RegisterSyncMgrHandler_Stub(
  962.     IRpcStubBuffer *This,
  963.     IRpcChannelBuffer *_pRpcChannelBuffer,
  964.     PRPC_MESSAGE _pRpcMessage,
  965.     DWORD *_pdwStubPhase);
  966. HRESULT STDMETHODCALLTYPE ISyncMgrRegister_UnregisterSyncMgrHandler_Proxy( 
  967.     ISyncMgrRegister * This,
  968.     /* [in] */ REFCLSID rclsidHandler,
  969.     /* [in] */ DWORD dwReserved);
  970. void __RPC_STUB ISyncMgrRegister_UnregisterSyncMgrHandler_Stub(
  971.     IRpcStubBuffer *This,
  972.     IRpcChannelBuffer *_pRpcChannelBuffer,
  973.     PRPC_MESSAGE _pRpcMessage,
  974.     DWORD *_pdwStubPhase);
  975. HRESULT STDMETHODCALLTYPE ISyncMgrRegister_GetHandlerRegistrationInfo_Proxy( 
  976.     ISyncMgrRegister * This,
  977.     /* [in] */ REFCLSID rclsidHandler,
  978.     /* [out][in] */ LPDWORD pdwSyncMgrRegisterFlags);
  979. void __RPC_STUB ISyncMgrRegister_GetHandlerRegistrationInfo_Stub(
  980.     IRpcStubBuffer *This,
  981.     IRpcChannelBuffer *_pRpcChannelBuffer,
  982.     PRPC_MESSAGE _pRpcMessage,
  983.     DWORD *_pdwStubPhase);
  984. #endif  /* __ISyncMgrRegister_INTERFACE_DEFINED__ */
  985. /* interface __MIDL_itf_mobsync_0117 */
  986. /* [local] */ 
  987. // Declarations for Conflict resolution dialog      
  988. // Flags                                            
  989. #define RFCF_APPLY_ALL           0x0001             
  990. // Parameter values for RFCCM_NEEDELEMENT (unimplemented)
  991. #define RFCD_NAME                0x0001             
  992. #define RFCD_KEEPBOTHICON        0x0002             
  993. #define RFCD_KEEPLOCALICON       0x0004             
  994. #define RFCD_KEEPSERVERICON      0x0008             
  995. #define RFCD_NETWORKMODIFIEDBY   0x0010             
  996. #define RFCD_NETWORKMODIFIEDON   0x0020             
  997. #define RFCD_LOCALMODIFIEDBY     0x0040             
  998. #define RFCD_LOCALMODIFIEDON     0x0080             
  999. #define RFCD_NEWNAME             0x0100             
  1000. #define RFCD_LOCATION            0x0200             
  1001. #define RFCD_ALL                 0x03FF             
  1002. // Callback Messages                                
  1003. #define RFCCM_VIEWLOCAL          0x0001             
  1004. #define RFCCM_VIEWNETWORK        0x0002             
  1005. #define RFCCM_NEEDELEMENT        0x0003             
  1006. // Return values                                  
  1007. #define RFC_CANCEL               0x00             
  1008. #define RFC_KEEPBOTH             0x01             
  1009. #define RFC_KEEPLOCAL            0x02             
  1010. #define RFC_KEEPNETWORK          0x03             
  1011. #define RFC_APPLY_TO_ALL         0x10             
  1012. typedef BOOL (WINAPI *PFNRFCDCALLBACK)(HWND hWnd, UINT uMsg, WPARAM wParam, LPARAM lParam);
  1013. typedef struct tagRFCDLGPARAMW {                                                 
  1014.     DWORD    dwFlags;               // RFCF_*                                    
  1015.     LPCWSTR  pszFilename;           // File name of the file conflicted          
  1016.     LPCWSTR  pszLocation;           // Location of the file                      
  1017.     LPCWSTR  pszNewName;            // The  new name to give the file            
  1018.     LPCWSTR  pszNetworkModifiedBy;  // Name of person who changed the net doc    
  1019.     LPCWSTR  pszLocalModifiedBy;    // Name of person who changed the local doc  
  1020.     LPCWSTR  pszNetworkModifiedOn;  // When the net doc was changed              
  1021.     LPCWSTR  pszLocalModifiedOn;    // When the local doc was changed            
  1022.     HICON  hIKeepBoth;            // Icon                                      
  1023.     HICON hIKeepLocal;           //                                           
  1024.     HICON  hIKeepNetwork;         //                                           
  1025.     PFNRFCDCALLBACK pfnCallBack;    // Callback                                  
  1026.     LPARAM  lCallerData;            // Place where the caller can keep some context data
  1027. } RFCDLGPARAMW;
  1028. typedef struct tagRFCDLGPARAMA {
  1029.     DWORD   dwFlags;                // RFCF_*                                    
  1030.     LPCSTR  pszFilename;            // File name of the file conflicted          
  1031.     LPCSTR  pszLocation;            // Location of the file                      
  1032.     LPCSTR  pszNewName;             // The  new name to give the file            
  1033.     LPCSTR  pszNetworkModifiedBy;   // Name of person who changed the net doc    
  1034.     LPCSTR  pszLocalModifiedBy;     // Name of person who changed the local doc  
  1035.     LPCSTR  pszNetworkModifiedOn;   // When the net doc was changed              
  1036.     LPCSTR  pszLocalModifiedOn;     // When the local doc was changed            
  1037.     HICON   hIKeepBoth;             // Icon                                      
  1038.     HICON   hIKeepLocal;            //                                           
  1039.     HICON   hIKeepNetwork;          //                                           
  1040.     PFNRFCDCALLBACK pfnCallBack;    // Callback                                  
  1041.     LPARAM  lCallerData;            // Place where the caller can keep some context data
  1042. } RFCDLGPARAMA;
  1043. int WINAPI SyncMgrResolveConflictW(HWND hWndParent, RFCDLGPARAMW *pdlgParam);
  1044. int WINAPI SyncMgrResolveConflictA(HWND hWndParent, RFCDLGPARAMA *pdlgParam);
  1045. #ifdef UNICODE                                                       
  1046. #define SyncMgrResolveConflict SyncMgrResolveConflictW               
  1047. #define RFCDLGPARAM RFCDLGPARAMW                                     
  1048. #else                                                                
  1049. #define SyncMgrResolveConflict SyncMgrResolveConflictA               
  1050. #define RFCDLGPARAM RFCDLGPARAMA                                     
  1051. #endif // !UNICODE                                                   
  1052. extern RPC_IF_HANDLE __MIDL_itf_mobsync_0117_v0_0_c_ifspec;
  1053. extern RPC_IF_HANDLE __MIDL_itf_mobsync_0117_v0_0_s_ifspec;
  1054. /* Additional Prototypes for ALL interfaces */
  1055. /* end of Additional Prototypes */
  1056. #ifdef __cplusplus
  1057. }
  1058. #endif
  1059. #endif