Source code of Windows XP (NT5)
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

1401 lines
44 KiB

  1. #pragma warning( disable: 4049 ) /* more than 64k source lines */
  2. /* this ALWAYS GENERATED file contains the definitions for the interfaces */
  3. /* File created by MIDL compiler version 6.00.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. MIDL_INTERFACE("6295DF40-35EE-11d1-8707-00C04FD93327")
  138. ISyncMgrSynchronize : public IUnknown
  139. {
  140. public:
  141. virtual HRESULT STDMETHODCALLTYPE Initialize(
  142. /* [in] */ DWORD dwReserved,
  143. /* [in] */ DWORD dwSyncMgrFlags,
  144. /* [in] */ DWORD cbCookie,
  145. /* [size_is][unique][in] */ const BYTE *lpCookie) = 0;
  146. virtual HRESULT STDMETHODCALLTYPE GetHandlerInfo(
  147. /* [out] */ LPSYNCMGRHANDLERINFO *ppSyncMgrHandlerInfo) = 0;
  148. virtual HRESULT STDMETHODCALLTYPE EnumSyncMgrItems(
  149. /* [out] */ ISyncMgrEnumItems **ppSyncMgrEnumItems) = 0;
  150. virtual HRESULT STDMETHODCALLTYPE GetItemObject(
  151. /* [in] */ REFSYNCMGRITEMID ItemID,
  152. /* [in] */ REFIID riid,
  153. /* [iid_is][out] */ void **ppv) = 0;
  154. virtual HRESULT STDMETHODCALLTYPE ShowProperties(
  155. /* [in] */ HWND hWndParent,
  156. /* [in] */ REFSYNCMGRITEMID ItemID) = 0;
  157. virtual HRESULT STDMETHODCALLTYPE SetProgressCallback(
  158. /* [unique][in] */ ISyncMgrSynchronizeCallback *lpCallBack) = 0;
  159. virtual HRESULT STDMETHODCALLTYPE PrepareForSync(
  160. /* [in] */ ULONG cbNumItems,
  161. /* [size_is][in] */ SYNCMGRITEMID *pItemIDs,
  162. /* [in] */ HWND hWndParent,
  163. /* [in] */ DWORD dwReserved) = 0;
  164. virtual HRESULT STDMETHODCALLTYPE Synchronize(
  165. /* [in] */ HWND hWndParent) = 0;
  166. virtual HRESULT STDMETHODCALLTYPE SetItemStatus(
  167. /* [in] */ REFSYNCMGRITEMID pItemID,
  168. /* [in] */ DWORD dwSyncMgrStatus) = 0;
  169. virtual HRESULT STDMETHODCALLTYPE ShowError(
  170. /* [in] */ HWND hWndParent,
  171. /* [in] */ REFSYNCMGRERRORID ErrorID) = 0;
  172. };
  173. #else /* C style interface */
  174. typedef struct ISyncMgrSynchronizeVtbl
  175. {
  176. BEGIN_INTERFACE
  177. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  178. ISyncMgrSynchronize * This,
  179. /* [in] */ REFIID riid,
  180. /* [iid_is][out] */ void **ppvObject);
  181. ULONG ( STDMETHODCALLTYPE *AddRef )(
  182. ISyncMgrSynchronize * This);
  183. ULONG ( STDMETHODCALLTYPE *Release )(
  184. ISyncMgrSynchronize * This);
  185. HRESULT ( STDMETHODCALLTYPE *Initialize )(
  186. ISyncMgrSynchronize * This,
  187. /* [in] */ DWORD dwReserved,
  188. /* [in] */ DWORD dwSyncMgrFlags,
  189. /* [in] */ DWORD cbCookie,
  190. /* [size_is][unique][in] */ const BYTE *lpCookie);
  191. HRESULT ( STDMETHODCALLTYPE *GetHandlerInfo )(
  192. ISyncMgrSynchronize * This,
  193. /* [out] */ LPSYNCMGRHANDLERINFO *ppSyncMgrHandlerInfo);
  194. HRESULT ( STDMETHODCALLTYPE *EnumSyncMgrItems )(
  195. ISyncMgrSynchronize * This,
  196. /* [out] */ ISyncMgrEnumItems **ppSyncMgrEnumItems);
  197. HRESULT ( STDMETHODCALLTYPE *GetItemObject )(
  198. ISyncMgrSynchronize * This,
  199. /* [in] */ REFSYNCMGRITEMID ItemID,
  200. /* [in] */ REFIID riid,
  201. /* [iid_is][out] */ void **ppv);
  202. HRESULT ( STDMETHODCALLTYPE *ShowProperties )(
  203. ISyncMgrSynchronize * This,
  204. /* [in] */ HWND hWndParent,
  205. /* [in] */ REFSYNCMGRITEMID ItemID);
  206. HRESULT ( STDMETHODCALLTYPE *SetProgressCallback )(
  207. ISyncMgrSynchronize * This,
  208. /* [unique][in] */ ISyncMgrSynchronizeCallback *lpCallBack);
  209. HRESULT ( STDMETHODCALLTYPE *PrepareForSync )(
  210. ISyncMgrSynchronize * This,
  211. /* [in] */ ULONG cbNumItems,
  212. /* [size_is][in] */ SYNCMGRITEMID *pItemIDs,
  213. /* [in] */ HWND hWndParent,
  214. /* [in] */ DWORD dwReserved);
  215. HRESULT ( STDMETHODCALLTYPE *Synchronize )(
  216. ISyncMgrSynchronize * This,
  217. /* [in] */ HWND hWndParent);
  218. HRESULT ( STDMETHODCALLTYPE *SetItemStatus )(
  219. ISyncMgrSynchronize * This,
  220. /* [in] */ REFSYNCMGRITEMID pItemID,
  221. /* [in] */ DWORD dwSyncMgrStatus);
  222. HRESULT ( STDMETHODCALLTYPE *ShowError )(
  223. ISyncMgrSynchronize * This,
  224. /* [in] */ HWND hWndParent,
  225. /* [in] */ REFSYNCMGRERRORID ErrorID);
  226. END_INTERFACE
  227. } ISyncMgrSynchronizeVtbl;
  228. interface ISyncMgrSynchronize
  229. {
  230. CONST_VTBL struct ISyncMgrSynchronizeVtbl *lpVtbl;
  231. };
  232. #ifdef COBJMACROS
  233. #define ISyncMgrSynchronize_QueryInterface(This,riid,ppvObject) \
  234. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  235. #define ISyncMgrSynchronize_AddRef(This) \
  236. (This)->lpVtbl -> AddRef(This)
  237. #define ISyncMgrSynchronize_Release(This) \
  238. (This)->lpVtbl -> Release(This)
  239. #define ISyncMgrSynchronize_Initialize(This,dwReserved,dwSyncMgrFlags,cbCookie,lpCookie) \
  240. (This)->lpVtbl -> Initialize(This,dwReserved,dwSyncMgrFlags,cbCookie,lpCookie)
  241. #define ISyncMgrSynchronize_GetHandlerInfo(This,ppSyncMgrHandlerInfo) \
  242. (This)->lpVtbl -> GetHandlerInfo(This,ppSyncMgrHandlerInfo)
  243. #define ISyncMgrSynchronize_EnumSyncMgrItems(This,ppSyncMgrEnumItems) \
  244. (This)->lpVtbl -> EnumSyncMgrItems(This,ppSyncMgrEnumItems)
  245. #define ISyncMgrSynchronize_GetItemObject(This,ItemID,riid,ppv) \
  246. (This)->lpVtbl -> GetItemObject(This,ItemID,riid,ppv)
  247. #define ISyncMgrSynchronize_ShowProperties(This,hWndParent,ItemID) \
  248. (This)->lpVtbl -> ShowProperties(This,hWndParent,ItemID)
  249. #define ISyncMgrSynchronize_SetProgressCallback(This,lpCallBack) \
  250. (This)->lpVtbl -> SetProgressCallback(This,lpCallBack)
  251. #define ISyncMgrSynchronize_PrepareForSync(This,cbNumItems,pItemIDs,hWndParent,dwReserved) \
  252. (This)->lpVtbl -> PrepareForSync(This,cbNumItems,pItemIDs,hWndParent,dwReserved)
  253. #define ISyncMgrSynchronize_Synchronize(This,hWndParent) \
  254. (This)->lpVtbl -> Synchronize(This,hWndParent)
  255. #define ISyncMgrSynchronize_SetItemStatus(This,pItemID,dwSyncMgrStatus) \
  256. (This)->lpVtbl -> SetItemStatus(This,pItemID,dwSyncMgrStatus)
  257. #define ISyncMgrSynchronize_ShowError(This,hWndParent,ErrorID) \
  258. (This)->lpVtbl -> ShowError(This,hWndParent,ErrorID)
  259. #endif /* COBJMACROS */
  260. #endif /* C style interface */
  261. HRESULT STDMETHODCALLTYPE ISyncMgrSynchronize_Initialize_Proxy(
  262. ISyncMgrSynchronize * This,
  263. /* [in] */ DWORD dwReserved,
  264. /* [in] */ DWORD dwSyncMgrFlags,
  265. /* [in] */ DWORD cbCookie,
  266. /* [size_is][unique][in] */ const BYTE *lpCookie);
  267. void __RPC_STUB ISyncMgrSynchronize_Initialize_Stub(
  268. IRpcStubBuffer *This,
  269. IRpcChannelBuffer *_pRpcChannelBuffer,
  270. PRPC_MESSAGE _pRpcMessage,
  271. DWORD *_pdwStubPhase);
  272. HRESULT STDMETHODCALLTYPE ISyncMgrSynchronize_GetHandlerInfo_Proxy(
  273. ISyncMgrSynchronize * This,
  274. /* [out] */ LPSYNCMGRHANDLERINFO *ppSyncMgrHandlerInfo);
  275. void __RPC_STUB ISyncMgrSynchronize_GetHandlerInfo_Stub(
  276. IRpcStubBuffer *This,
  277. IRpcChannelBuffer *_pRpcChannelBuffer,
  278. PRPC_MESSAGE _pRpcMessage,
  279. DWORD *_pdwStubPhase);
  280. HRESULT STDMETHODCALLTYPE ISyncMgrSynchronize_EnumSyncMgrItems_Proxy(
  281. ISyncMgrSynchronize * This,
  282. /* [out] */ ISyncMgrEnumItems **ppSyncMgrEnumItems);
  283. void __RPC_STUB ISyncMgrSynchronize_EnumSyncMgrItems_Stub(
  284. IRpcStubBuffer *This,
  285. IRpcChannelBuffer *_pRpcChannelBuffer,
  286. PRPC_MESSAGE _pRpcMessage,
  287. DWORD *_pdwStubPhase);
  288. HRESULT STDMETHODCALLTYPE ISyncMgrSynchronize_GetItemObject_Proxy(
  289. ISyncMgrSynchronize * This,
  290. /* [in] */ REFSYNCMGRITEMID ItemID,
  291. /* [in] */ REFIID riid,
  292. /* [iid_is][out] */ void **ppv);
  293. void __RPC_STUB ISyncMgrSynchronize_GetItemObject_Stub(
  294. IRpcStubBuffer *This,
  295. IRpcChannelBuffer *_pRpcChannelBuffer,
  296. PRPC_MESSAGE _pRpcMessage,
  297. DWORD *_pdwStubPhase);
  298. HRESULT STDMETHODCALLTYPE ISyncMgrSynchronize_ShowProperties_Proxy(
  299. ISyncMgrSynchronize * This,
  300. /* [in] */ HWND hWndParent,
  301. /* [in] */ REFSYNCMGRITEMID ItemID);
  302. void __RPC_STUB ISyncMgrSynchronize_ShowProperties_Stub(
  303. IRpcStubBuffer *This,
  304. IRpcChannelBuffer *_pRpcChannelBuffer,
  305. PRPC_MESSAGE _pRpcMessage,
  306. DWORD *_pdwStubPhase);
  307. HRESULT STDMETHODCALLTYPE ISyncMgrSynchronize_SetProgressCallback_Proxy(
  308. ISyncMgrSynchronize * This,
  309. /* [unique][in] */ ISyncMgrSynchronizeCallback *lpCallBack);
  310. void __RPC_STUB ISyncMgrSynchronize_SetProgressCallback_Stub(
  311. IRpcStubBuffer *This,
  312. IRpcChannelBuffer *_pRpcChannelBuffer,
  313. PRPC_MESSAGE _pRpcMessage,
  314. DWORD *_pdwStubPhase);
  315. HRESULT STDMETHODCALLTYPE ISyncMgrSynchronize_PrepareForSync_Proxy(
  316. ISyncMgrSynchronize * This,
  317. /* [in] */ ULONG cbNumItems,
  318. /* [size_is][in] */ SYNCMGRITEMID *pItemIDs,
  319. /* [in] */ HWND hWndParent,
  320. /* [in] */ DWORD dwReserved);
  321. void __RPC_STUB ISyncMgrSynchronize_PrepareForSync_Stub(
  322. IRpcStubBuffer *This,
  323. IRpcChannelBuffer *_pRpcChannelBuffer,
  324. PRPC_MESSAGE _pRpcMessage,
  325. DWORD *_pdwStubPhase);
  326. HRESULT STDMETHODCALLTYPE ISyncMgrSynchronize_Synchronize_Proxy(
  327. ISyncMgrSynchronize * This,
  328. /* [in] */ HWND hWndParent);
  329. void __RPC_STUB ISyncMgrSynchronize_Synchronize_Stub(
  330. IRpcStubBuffer *This,
  331. IRpcChannelBuffer *_pRpcChannelBuffer,
  332. PRPC_MESSAGE _pRpcMessage,
  333. DWORD *_pdwStubPhase);
  334. HRESULT STDMETHODCALLTYPE ISyncMgrSynchronize_SetItemStatus_Proxy(
  335. ISyncMgrSynchronize * This,
  336. /* [in] */ REFSYNCMGRITEMID pItemID,
  337. /* [in] */ DWORD dwSyncMgrStatus);
  338. void __RPC_STUB ISyncMgrSynchronize_SetItemStatus_Stub(
  339. IRpcStubBuffer *This,
  340. IRpcChannelBuffer *_pRpcChannelBuffer,
  341. PRPC_MESSAGE _pRpcMessage,
  342. DWORD *_pdwStubPhase);
  343. HRESULT STDMETHODCALLTYPE ISyncMgrSynchronize_ShowError_Proxy(
  344. ISyncMgrSynchronize * This,
  345. /* [in] */ HWND hWndParent,
  346. /* [in] */ REFSYNCMGRERRORID ErrorID);
  347. void __RPC_STUB ISyncMgrSynchronize_ShowError_Stub(
  348. IRpcStubBuffer *This,
  349. IRpcChannelBuffer *_pRpcChannelBuffer,
  350. PRPC_MESSAGE _pRpcMessage,
  351. DWORD *_pdwStubPhase);
  352. #endif /* __ISyncMgrSynchronize_INTERFACE_DEFINED__ */
  353. #ifndef __ISyncMgrSynchronizeCallback_INTERFACE_DEFINED__
  354. #define __ISyncMgrSynchronizeCallback_INTERFACE_DEFINED__
  355. /* interface ISyncMgrSynchronizeCallback */
  356. /* [uuid][object][local] */
  357. typedef /* [unique] */ ISyncMgrSynchronizeCallback *LPSYNCMGRSYNCHRONIZECALLBACK;
  358. #define SYNCMGRPROGRESSITEM_STATUSTEXT 0x0001
  359. #define SYNCMGRPROGRESSITEM_STATUSTYPE 0x0002
  360. #define SYNCMGRPROGRESSITEM_PROGVALUE 0x0004
  361. #define SYNCMGRPROGRESSITEM_MAXVALUE 0x0008
  362. typedef struct _tagSYNCMGRPROGRESSITEM
  363. {
  364. DWORD cbSize;
  365. UINT mask;
  366. LPCWSTR lpcStatusText;
  367. DWORD dwStatusType;
  368. INT iProgValue;
  369. INT iMaxValue;
  370. } SYNCMGRPROGRESSITEM;
  371. typedef struct _tagSYNCMGRPROGRESSITEM *LPSYNCMGRPROGRESSITEM;
  372. typedef
  373. enum _tagSYNCMGRLOGLEVEL
  374. { SYNCMGRLOGLEVEL_INFORMATION = 0x1,
  375. SYNCMGRLOGLEVEL_WARNING = 0x2,
  376. SYNCMGRLOGLEVEL_ERROR = 0x3
  377. } SYNCMGRLOGLEVEL;
  378. #define SYNCMGRLOGERROR_ERRORFLAGS 0x0001
  379. #define SYNCMGRLOGERROR_ERRORID 0x0002
  380. #define SYNCMGRLOGERROR_ITEMID 0x0004
  381. typedef
  382. enum _tagSYNCMGRERRORFLAGS
  383. { SYNCMGRERRORFLAG_ENABLEJUMPTEXT = 0x1
  384. } SYNCMGRERRORFLAGS;
  385. typedef struct _tagSYNCMGRLOGERRORINFO
  386. {
  387. DWORD cbSize;
  388. DWORD mask;
  389. DWORD dwSyncMgrErrorFlags;
  390. SYNCMGRERRORID ErrorID;
  391. SYNCMGRITEMID ItemID;
  392. } SYNCMGRLOGERRORINFO;
  393. typedef struct _tagSYNCMGRLOGERRORINFO *LPSYNCMGRLOGERRORINFO;
  394. EXTERN_C const IID IID_ISyncMgrSynchronizeCallback;
  395. #if defined(__cplusplus) && !defined(CINTERFACE)
  396. MIDL_INTERFACE("6295DF41-35EE-11d1-8707-00C04FD93327")
  397. ISyncMgrSynchronizeCallback : public IUnknown
  398. {
  399. public:
  400. virtual HRESULT STDMETHODCALLTYPE ShowPropertiesCompleted(
  401. /* [in] */ HRESULT hr) = 0;
  402. virtual HRESULT STDMETHODCALLTYPE PrepareForSyncCompleted(
  403. /* [in] */ HRESULT hr) = 0;
  404. virtual HRESULT STDMETHODCALLTYPE SynchronizeCompleted(
  405. /* [in] */ HRESULT hr) = 0;
  406. virtual HRESULT STDMETHODCALLTYPE ShowErrorCompleted(
  407. /* [in] */ HRESULT hr,
  408. /* [in] */ ULONG cbNumItems,
  409. /* [size_is][unique][in] */ SYNCMGRITEMID *pItemIDs) = 0;
  410. virtual HRESULT STDMETHODCALLTYPE EnableModeless(
  411. /* [in] */ BOOL fEnable) = 0;
  412. virtual HRESULT STDMETHODCALLTYPE Progress(
  413. /* [in] */ REFSYNCMGRITEMID pItemID,
  414. /* [unique][in] */ LPSYNCMGRPROGRESSITEM lpSyncProgressItem) = 0;
  415. virtual HRESULT STDMETHODCALLTYPE LogError(
  416. /* [in] */ DWORD dwErrorLevel,
  417. /* [in] */ LPCWSTR lpcErrorText,
  418. /* [unique][in] */ LPSYNCMGRLOGERRORINFO lpSyncLogError) = 0;
  419. virtual HRESULT STDMETHODCALLTYPE DeleteLogError(
  420. /* [in] */ REFSYNCMGRERRORID ErrorID,
  421. /* [in] */ DWORD dwReserved) = 0;
  422. virtual HRESULT STDMETHODCALLTYPE EstablishConnection(
  423. /* [unique][in] */ LPCWSTR lpwszConnection,
  424. /* [in] */ DWORD dwReserved) = 0;
  425. };
  426. #else /* C style interface */
  427. typedef struct ISyncMgrSynchronizeCallbackVtbl
  428. {
  429. BEGIN_INTERFACE
  430. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  431. ISyncMgrSynchronizeCallback * This,
  432. /* [in] */ REFIID riid,
  433. /* [iid_is][out] */ void **ppvObject);
  434. ULONG ( STDMETHODCALLTYPE *AddRef )(
  435. ISyncMgrSynchronizeCallback * This);
  436. ULONG ( STDMETHODCALLTYPE *Release )(
  437. ISyncMgrSynchronizeCallback * This);
  438. HRESULT ( STDMETHODCALLTYPE *ShowPropertiesCompleted )(
  439. ISyncMgrSynchronizeCallback * This,
  440. /* [in] */ HRESULT hr);
  441. HRESULT ( STDMETHODCALLTYPE *PrepareForSyncCompleted )(
  442. ISyncMgrSynchronizeCallback * This,
  443. /* [in] */ HRESULT hr);
  444. HRESULT ( STDMETHODCALLTYPE *SynchronizeCompleted )(
  445. ISyncMgrSynchronizeCallback * This,
  446. /* [in] */ HRESULT hr);
  447. HRESULT ( STDMETHODCALLTYPE *ShowErrorCompleted )(
  448. ISyncMgrSynchronizeCallback * This,
  449. /* [in] */ HRESULT hr,
  450. /* [in] */ ULONG cbNumItems,
  451. /* [size_is][unique][in] */ SYNCMGRITEMID *pItemIDs);
  452. HRESULT ( STDMETHODCALLTYPE *EnableModeless )(
  453. ISyncMgrSynchronizeCallback * This,
  454. /* [in] */ BOOL fEnable);
  455. HRESULT ( STDMETHODCALLTYPE *Progress )(
  456. ISyncMgrSynchronizeCallback * This,
  457. /* [in] */ REFSYNCMGRITEMID pItemID,
  458. /* [unique][in] */ LPSYNCMGRPROGRESSITEM lpSyncProgressItem);
  459. HRESULT ( STDMETHODCALLTYPE *LogError )(
  460. ISyncMgrSynchronizeCallback * This,
  461. /* [in] */ DWORD dwErrorLevel,
  462. /* [in] */ LPCWSTR lpcErrorText,
  463. /* [unique][in] */ LPSYNCMGRLOGERRORINFO lpSyncLogError);
  464. HRESULT ( STDMETHODCALLTYPE *DeleteLogError )(
  465. ISyncMgrSynchronizeCallback * This,
  466. /* [in] */ REFSYNCMGRERRORID ErrorID,
  467. /* [in] */ DWORD dwReserved);
  468. HRESULT ( STDMETHODCALLTYPE *EstablishConnection )(
  469. ISyncMgrSynchronizeCallback * This,
  470. /* [unique][in] */ LPCWSTR lpwszConnection,
  471. /* [in] */ DWORD dwReserved);
  472. END_INTERFACE
  473. } ISyncMgrSynchronizeCallbackVtbl;
  474. interface ISyncMgrSynchronizeCallback
  475. {
  476. CONST_VTBL struct ISyncMgrSynchronizeCallbackVtbl *lpVtbl;
  477. };
  478. #ifdef COBJMACROS
  479. #define ISyncMgrSynchronizeCallback_QueryInterface(This,riid,ppvObject) \
  480. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  481. #define ISyncMgrSynchronizeCallback_AddRef(This) \
  482. (This)->lpVtbl -> AddRef(This)
  483. #define ISyncMgrSynchronizeCallback_Release(This) \
  484. (This)->lpVtbl -> Release(This)
  485. #define ISyncMgrSynchronizeCallback_ShowPropertiesCompleted(This,hr) \
  486. (This)->lpVtbl -> ShowPropertiesCompleted(This,hr)
  487. #define ISyncMgrSynchronizeCallback_PrepareForSyncCompleted(This,hr) \
  488. (This)->lpVtbl -> PrepareForSyncCompleted(This,hr)
  489. #define ISyncMgrSynchronizeCallback_SynchronizeCompleted(This,hr) \
  490. (This)->lpVtbl -> SynchronizeCompleted(This,hr)
  491. #define ISyncMgrSynchronizeCallback_ShowErrorCompleted(This,hr,cbNumItems,pItemIDs) \
  492. (This)->lpVtbl -> ShowErrorCompleted(This,hr,cbNumItems,pItemIDs)
  493. #define ISyncMgrSynchronizeCallback_EnableModeless(This,fEnable) \
  494. (This)->lpVtbl -> EnableModeless(This,fEnable)
  495. #define ISyncMgrSynchronizeCallback_Progress(This,pItemID,lpSyncProgressItem) \
  496. (This)->lpVtbl -> Progress(This,pItemID,lpSyncProgressItem)
  497. #define ISyncMgrSynchronizeCallback_LogError(This,dwErrorLevel,lpcErrorText,lpSyncLogError) \
  498. (This)->lpVtbl -> LogError(This,dwErrorLevel,lpcErrorText,lpSyncLogError)
  499. #define ISyncMgrSynchronizeCallback_DeleteLogError(This,ErrorID,dwReserved) \
  500. (This)->lpVtbl -> DeleteLogError(This,ErrorID,dwReserved)
  501. #define ISyncMgrSynchronizeCallback_EstablishConnection(This,lpwszConnection,dwReserved) \
  502. (This)->lpVtbl -> EstablishConnection(This,lpwszConnection,dwReserved)
  503. #endif /* COBJMACROS */
  504. #endif /* C style interface */
  505. HRESULT STDMETHODCALLTYPE ISyncMgrSynchronizeCallback_ShowPropertiesCompleted_Proxy(
  506. ISyncMgrSynchronizeCallback * This,
  507. /* [in] */ HRESULT hr);
  508. void __RPC_STUB ISyncMgrSynchronizeCallback_ShowPropertiesCompleted_Stub(
  509. IRpcStubBuffer *This,
  510. IRpcChannelBuffer *_pRpcChannelBuffer,
  511. PRPC_MESSAGE _pRpcMessage,
  512. DWORD *_pdwStubPhase);
  513. HRESULT STDMETHODCALLTYPE ISyncMgrSynchronizeCallback_PrepareForSyncCompleted_Proxy(
  514. ISyncMgrSynchronizeCallback * This,
  515. /* [in] */ HRESULT hr);
  516. void __RPC_STUB ISyncMgrSynchronizeCallback_PrepareForSyncCompleted_Stub(
  517. IRpcStubBuffer *This,
  518. IRpcChannelBuffer *_pRpcChannelBuffer,
  519. PRPC_MESSAGE _pRpcMessage,
  520. DWORD *_pdwStubPhase);
  521. HRESULT STDMETHODCALLTYPE ISyncMgrSynchronizeCallback_SynchronizeCompleted_Proxy(
  522. ISyncMgrSynchronizeCallback * This,
  523. /* [in] */ HRESULT hr);
  524. void __RPC_STUB ISyncMgrSynchronizeCallback_SynchronizeCompleted_Stub(
  525. IRpcStubBuffer *This,
  526. IRpcChannelBuffer *_pRpcChannelBuffer,
  527. PRPC_MESSAGE _pRpcMessage,
  528. DWORD *_pdwStubPhase);
  529. HRESULT STDMETHODCALLTYPE ISyncMgrSynchronizeCallback_ShowErrorCompleted_Proxy(
  530. ISyncMgrSynchronizeCallback * This,
  531. /* [in] */ HRESULT hr,
  532. /* [in] */ ULONG cbNumItems,
  533. /* [size_is][unique][in] */ SYNCMGRITEMID *pItemIDs);
  534. void __RPC_STUB ISyncMgrSynchronizeCallback_ShowErrorCompleted_Stub(
  535. IRpcStubBuffer *This,
  536. IRpcChannelBuffer *_pRpcChannelBuffer,
  537. PRPC_MESSAGE _pRpcMessage,
  538. DWORD *_pdwStubPhase);
  539. HRESULT STDMETHODCALLTYPE ISyncMgrSynchronizeCallback_EnableModeless_Proxy(
  540. ISyncMgrSynchronizeCallback * This,
  541. /* [in] */ BOOL fEnable);
  542. void __RPC_STUB ISyncMgrSynchronizeCallback_EnableModeless_Stub(
  543. IRpcStubBuffer *This,
  544. IRpcChannelBuffer *_pRpcChannelBuffer,
  545. PRPC_MESSAGE _pRpcMessage,
  546. DWORD *_pdwStubPhase);
  547. HRESULT STDMETHODCALLTYPE ISyncMgrSynchronizeCallback_Progress_Proxy(
  548. ISyncMgrSynchronizeCallback * This,
  549. /* [in] */ REFSYNCMGRITEMID pItemID,
  550. /* [unique][in] */ LPSYNCMGRPROGRESSITEM lpSyncProgressItem);
  551. void __RPC_STUB ISyncMgrSynchronizeCallback_Progress_Stub(
  552. IRpcStubBuffer *This,
  553. IRpcChannelBuffer *_pRpcChannelBuffer,
  554. PRPC_MESSAGE _pRpcMessage,
  555. DWORD *_pdwStubPhase);
  556. HRESULT STDMETHODCALLTYPE ISyncMgrSynchronizeCallback_LogError_Proxy(
  557. ISyncMgrSynchronizeCallback * This,
  558. /* [in] */ DWORD dwErrorLevel,
  559. /* [in] */ LPCWSTR lpcErrorText,
  560. /* [unique][in] */ LPSYNCMGRLOGERRORINFO lpSyncLogError);
  561. void __RPC_STUB ISyncMgrSynchronizeCallback_LogError_Stub(
  562. IRpcStubBuffer *This,
  563. IRpcChannelBuffer *_pRpcChannelBuffer,
  564. PRPC_MESSAGE _pRpcMessage,
  565. DWORD *_pdwStubPhase);
  566. HRESULT STDMETHODCALLTYPE ISyncMgrSynchronizeCallback_DeleteLogError_Proxy(
  567. ISyncMgrSynchronizeCallback * This,
  568. /* [in] */ REFSYNCMGRERRORID ErrorID,
  569. /* [in] */ DWORD dwReserved);
  570. void __RPC_STUB ISyncMgrSynchronizeCallback_DeleteLogError_Stub(
  571. IRpcStubBuffer *This,
  572. IRpcChannelBuffer *_pRpcChannelBuffer,
  573. PRPC_MESSAGE _pRpcMessage,
  574. DWORD *_pdwStubPhase);
  575. HRESULT STDMETHODCALLTYPE ISyncMgrSynchronizeCallback_EstablishConnection_Proxy(
  576. ISyncMgrSynchronizeCallback * This,
  577. /* [unique][in] */ LPCWSTR lpwszConnection,
  578. /* [in] */ DWORD dwReserved);
  579. void __RPC_STUB ISyncMgrSynchronizeCallback_EstablishConnection_Stub(
  580. IRpcStubBuffer *This,
  581. IRpcChannelBuffer *_pRpcChannelBuffer,
  582. PRPC_MESSAGE _pRpcMessage,
  583. DWORD *_pdwStubPhase);
  584. #endif /* __ISyncMgrSynchronizeCallback_INTERFACE_DEFINED__ */
  585. #ifndef __ISyncMgrEnumItems_INTERFACE_DEFINED__
  586. #define __ISyncMgrEnumItems_INTERFACE_DEFINED__
  587. /* interface ISyncMgrEnumItems */
  588. /* [unique][uuid][object][local] */
  589. typedef /* [unique] */ ISyncMgrEnumItems *LPSYNCMGRENUMITEMS;
  590. #define SYNCMGRITEM_ITEMFLAGMASK 0x1F
  591. #define MAX_SYNCMGRITEMNAME ( 128 )
  592. typedef
  593. enum _tagSYNCMGRITEMFLAGS
  594. { SYNCMGRITEM_HASPROPERTIES = 0x1,
  595. SYNCMGRITEM_TEMPORARY = 0x2,
  596. SYNCMGRITEM_ROAMINGUSER = 0x4,
  597. SYNCMGRITEM_LASTUPDATETIME = 0x8,
  598. SYNCMGRITEM_MAYDELETEITEM = 0x10
  599. } SYNCMGRITEMFLAGS;
  600. typedef struct _tagSYNCMGRITEM
  601. {
  602. DWORD cbSize;
  603. DWORD dwFlags;
  604. SYNCMGRITEMID ItemID;
  605. DWORD dwItemState;
  606. HICON hIcon;
  607. WCHAR wszItemName[ 128 ];
  608. FILETIME ftLastUpdate;
  609. } SYNCMGRITEM;
  610. typedef struct _tagSYNCMGRITEM *LPSYNCMGRITEM;
  611. EXTERN_C const IID IID_ISyncMgrEnumItems;
  612. #if defined(__cplusplus) && !defined(CINTERFACE)
  613. MIDL_INTERFACE("6295DF2A-35EE-11d1-8707-00C04FD93327")
  614. ISyncMgrEnumItems : public IUnknown
  615. {
  616. public:
  617. virtual HRESULT STDMETHODCALLTYPE Next(
  618. /* [in] */ ULONG celt,
  619. /* [length_is][size_is][out] */ LPSYNCMGRITEM rgelt,
  620. /* [out] */ ULONG *pceltFetched) = 0;
  621. virtual HRESULT STDMETHODCALLTYPE Skip(
  622. /* [in] */ ULONG celt) = 0;
  623. virtual HRESULT STDMETHODCALLTYPE Reset( void) = 0;
  624. virtual HRESULT STDMETHODCALLTYPE Clone(
  625. /* [out] */ ISyncMgrEnumItems **ppenum) = 0;
  626. };
  627. #else /* C style interface */
  628. typedef struct ISyncMgrEnumItemsVtbl
  629. {
  630. BEGIN_INTERFACE
  631. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  632. ISyncMgrEnumItems * This,
  633. /* [in] */ REFIID riid,
  634. /* [iid_is][out] */ void **ppvObject);
  635. ULONG ( STDMETHODCALLTYPE *AddRef )(
  636. ISyncMgrEnumItems * This);
  637. ULONG ( STDMETHODCALLTYPE *Release )(
  638. ISyncMgrEnumItems * This);
  639. HRESULT ( STDMETHODCALLTYPE *Next )(
  640. ISyncMgrEnumItems * This,
  641. /* [in] */ ULONG celt,
  642. /* [length_is][size_is][out] */ LPSYNCMGRITEM rgelt,
  643. /* [out] */ ULONG *pceltFetched);
  644. HRESULT ( STDMETHODCALLTYPE *Skip )(
  645. ISyncMgrEnumItems * This,
  646. /* [in] */ ULONG celt);
  647. HRESULT ( STDMETHODCALLTYPE *Reset )(
  648. ISyncMgrEnumItems * This);
  649. HRESULT ( STDMETHODCALLTYPE *Clone )(
  650. ISyncMgrEnumItems * This,
  651. /* [out] */ ISyncMgrEnumItems **ppenum);
  652. END_INTERFACE
  653. } ISyncMgrEnumItemsVtbl;
  654. interface ISyncMgrEnumItems
  655. {
  656. CONST_VTBL struct ISyncMgrEnumItemsVtbl *lpVtbl;
  657. };
  658. #ifdef COBJMACROS
  659. #define ISyncMgrEnumItems_QueryInterface(This,riid,ppvObject) \
  660. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  661. #define ISyncMgrEnumItems_AddRef(This) \
  662. (This)->lpVtbl -> AddRef(This)
  663. #define ISyncMgrEnumItems_Release(This) \
  664. (This)->lpVtbl -> Release(This)
  665. #define ISyncMgrEnumItems_Next(This,celt,rgelt,pceltFetched) \
  666. (This)->lpVtbl -> Next(This,celt,rgelt,pceltFetched)
  667. #define ISyncMgrEnumItems_Skip(This,celt) \
  668. (This)->lpVtbl -> Skip(This,celt)
  669. #define ISyncMgrEnumItems_Reset(This) \
  670. (This)->lpVtbl -> Reset(This)
  671. #define ISyncMgrEnumItems_Clone(This,ppenum) \
  672. (This)->lpVtbl -> Clone(This,ppenum)
  673. #endif /* COBJMACROS */
  674. #endif /* C style interface */
  675. HRESULT STDMETHODCALLTYPE ISyncMgrEnumItems_Next_Proxy(
  676. ISyncMgrEnumItems * This,
  677. /* [in] */ ULONG celt,
  678. /* [length_is][size_is][out] */ LPSYNCMGRITEM rgelt,
  679. /* [out] */ ULONG *pceltFetched);
  680. void __RPC_STUB ISyncMgrEnumItems_Next_Stub(
  681. IRpcStubBuffer *This,
  682. IRpcChannelBuffer *_pRpcChannelBuffer,
  683. PRPC_MESSAGE _pRpcMessage,
  684. DWORD *_pdwStubPhase);
  685. HRESULT STDMETHODCALLTYPE ISyncMgrEnumItems_Skip_Proxy(
  686. ISyncMgrEnumItems * This,
  687. /* [in] */ ULONG celt);
  688. void __RPC_STUB ISyncMgrEnumItems_Skip_Stub(
  689. IRpcStubBuffer *This,
  690. IRpcChannelBuffer *_pRpcChannelBuffer,
  691. PRPC_MESSAGE _pRpcMessage,
  692. DWORD *_pdwStubPhase);
  693. HRESULT STDMETHODCALLTYPE ISyncMgrEnumItems_Reset_Proxy(
  694. ISyncMgrEnumItems * This);
  695. void __RPC_STUB ISyncMgrEnumItems_Reset_Stub(
  696. IRpcStubBuffer *This,
  697. IRpcChannelBuffer *_pRpcChannelBuffer,
  698. PRPC_MESSAGE _pRpcMessage,
  699. DWORD *_pdwStubPhase);
  700. HRESULT STDMETHODCALLTYPE ISyncMgrEnumItems_Clone_Proxy(
  701. ISyncMgrEnumItems * This,
  702. /* [out] */ ISyncMgrEnumItems **ppenum);
  703. void __RPC_STUB ISyncMgrEnumItems_Clone_Stub(
  704. IRpcStubBuffer *This,
  705. IRpcChannelBuffer *_pRpcChannelBuffer,
  706. PRPC_MESSAGE _pRpcMessage,
  707. DWORD *_pdwStubPhase);
  708. #endif /* __ISyncMgrEnumItems_INTERFACE_DEFINED__ */
  709. #ifndef __ISyncMgrSynchronizeInvoke_INTERFACE_DEFINED__
  710. #define __ISyncMgrSynchronizeInvoke_INTERFACE_DEFINED__
  711. /* interface ISyncMgrSynchronizeInvoke */
  712. /* [unique][uuid][object][local] */
  713. typedef /* [unique] */ ISyncMgrSynchronizeInvoke *LPSYNCMGRSYNCHRONIZEINVOKE;
  714. typedef
  715. enum _tagSYNCMGRINVOKEFLAGS
  716. { SYNCMGRINVOKE_STARTSYNC = 0x2,
  717. SYNCMGRINVOKE_MINIMIZED = 0x4
  718. } SYNCMGRINVOKEFLAGS;
  719. EXTERN_C const IID IID_ISyncMgrSynchronizeInvoke;
  720. #if defined(__cplusplus) && !defined(CINTERFACE)
  721. MIDL_INTERFACE("6295DF2C-35EE-11d1-8707-00C04FD93327")
  722. ISyncMgrSynchronizeInvoke : public IUnknown
  723. {
  724. public:
  725. virtual HRESULT STDMETHODCALLTYPE UpdateItems(
  726. /* [in] */ DWORD dwInvokeFlags,
  727. /* [in] */ REFCLSID rclsid,
  728. /* [in] */ DWORD cbCookie,
  729. /* [size_is][unique][in] */ const BYTE *lpCookie) = 0;
  730. virtual HRESULT STDMETHODCALLTYPE UpdateAll( void) = 0;
  731. };
  732. #else /* C style interface */
  733. typedef struct ISyncMgrSynchronizeInvokeVtbl
  734. {
  735. BEGIN_INTERFACE
  736. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  737. ISyncMgrSynchronizeInvoke * This,
  738. /* [in] */ REFIID riid,
  739. /* [iid_is][out] */ void **ppvObject);
  740. ULONG ( STDMETHODCALLTYPE *AddRef )(
  741. ISyncMgrSynchronizeInvoke * This);
  742. ULONG ( STDMETHODCALLTYPE *Release )(
  743. ISyncMgrSynchronizeInvoke * This);
  744. HRESULT ( STDMETHODCALLTYPE *UpdateItems )(
  745. ISyncMgrSynchronizeInvoke * This,
  746. /* [in] */ DWORD dwInvokeFlags,
  747. /* [in] */ REFCLSID rclsid,
  748. /* [in] */ DWORD cbCookie,
  749. /* [size_is][unique][in] */ const BYTE *lpCookie);
  750. HRESULT ( STDMETHODCALLTYPE *UpdateAll )(
  751. ISyncMgrSynchronizeInvoke * This);
  752. END_INTERFACE
  753. } ISyncMgrSynchronizeInvokeVtbl;
  754. interface ISyncMgrSynchronizeInvoke
  755. {
  756. CONST_VTBL struct ISyncMgrSynchronizeInvokeVtbl *lpVtbl;
  757. };
  758. #ifdef COBJMACROS
  759. #define ISyncMgrSynchronizeInvoke_QueryInterface(This,riid,ppvObject) \
  760. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  761. #define ISyncMgrSynchronizeInvoke_AddRef(This) \
  762. (This)->lpVtbl -> AddRef(This)
  763. #define ISyncMgrSynchronizeInvoke_Release(This) \
  764. (This)->lpVtbl -> Release(This)
  765. #define ISyncMgrSynchronizeInvoke_UpdateItems(This,dwInvokeFlags,rclsid,cbCookie,lpCookie) \
  766. (This)->lpVtbl -> UpdateItems(This,dwInvokeFlags,rclsid,cbCookie,lpCookie)
  767. #define ISyncMgrSynchronizeInvoke_UpdateAll(This) \
  768. (This)->lpVtbl -> UpdateAll(This)
  769. #endif /* COBJMACROS */
  770. #endif /* C style interface */
  771. HRESULT STDMETHODCALLTYPE ISyncMgrSynchronizeInvoke_UpdateItems_Proxy(
  772. ISyncMgrSynchronizeInvoke * This,
  773. /* [in] */ DWORD dwInvokeFlags,
  774. /* [in] */ REFCLSID rclsid,
  775. /* [in] */ DWORD cbCookie,
  776. /* [size_is][unique][in] */ const BYTE *lpCookie);
  777. void __RPC_STUB ISyncMgrSynchronizeInvoke_UpdateItems_Stub(
  778. IRpcStubBuffer *This,
  779. IRpcChannelBuffer *_pRpcChannelBuffer,
  780. PRPC_MESSAGE _pRpcMessage,
  781. DWORD *_pdwStubPhase);
  782. HRESULT STDMETHODCALLTYPE ISyncMgrSynchronizeInvoke_UpdateAll_Proxy(
  783. ISyncMgrSynchronizeInvoke * This);
  784. void __RPC_STUB ISyncMgrSynchronizeInvoke_UpdateAll_Stub(
  785. IRpcStubBuffer *This,
  786. IRpcChannelBuffer *_pRpcChannelBuffer,
  787. PRPC_MESSAGE _pRpcMessage,
  788. DWORD *_pdwStubPhase);
  789. #endif /* __ISyncMgrSynchronizeInvoke_INTERFACE_DEFINED__ */
  790. #ifndef __ISyncMgrRegister_INTERFACE_DEFINED__
  791. #define __ISyncMgrRegister_INTERFACE_DEFINED__
  792. /* interface ISyncMgrRegister */
  793. /* [unique][uuid][object][local] */
  794. typedef /* [unique] */ ISyncMgrRegister *LPSYNCMGRREGISTER;
  795. #define SYNCMGRREGISTERFLAGS_MASK 0x07
  796. typedef
  797. enum _tagSYNCMGRREGISTERFLAGS
  798. { SYNCMGRREGISTERFLAG_CONNECT = 0x1,
  799. SYNCMGRREGISTERFLAG_PENDINGDISCONNECT = 0x2,
  800. SYNCMGRREGISTERFLAG_IDLE = 0x4
  801. } SYNCMGRREGISTERFLAGS;
  802. EXTERN_C const IID IID_ISyncMgrRegister;
  803. #if defined(__cplusplus) && !defined(CINTERFACE)
  804. MIDL_INTERFACE("6295DF42-35EE-11d1-8707-00C04FD93327")
  805. ISyncMgrRegister : public IUnknown
  806. {
  807. public:
  808. virtual HRESULT STDMETHODCALLTYPE RegisterSyncMgrHandler(
  809. /* [in] */ REFCLSID rclsidHandler,
  810. /* [unique][in] */ LPCWSTR pwszDescription,
  811. /* [in] */ DWORD dwSyncMgrRegisterFlags) = 0;
  812. virtual HRESULT STDMETHODCALLTYPE UnregisterSyncMgrHandler(
  813. /* [in] */ REFCLSID rclsidHandler,
  814. /* [in] */ DWORD dwReserved) = 0;
  815. virtual HRESULT STDMETHODCALLTYPE GetHandlerRegistrationInfo(
  816. /* [in] */ REFCLSID rclsidHandler,
  817. /* [out][in] */ LPDWORD pdwSyncMgrRegisterFlags) = 0;
  818. };
  819. #else /* C style interface */
  820. typedef struct ISyncMgrRegisterVtbl
  821. {
  822. BEGIN_INTERFACE
  823. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  824. ISyncMgrRegister * This,
  825. /* [in] */ REFIID riid,
  826. /* [iid_is][out] */ void **ppvObject);
  827. ULONG ( STDMETHODCALLTYPE *AddRef )(
  828. ISyncMgrRegister * This);
  829. ULONG ( STDMETHODCALLTYPE *Release )(
  830. ISyncMgrRegister * This);
  831. HRESULT ( STDMETHODCALLTYPE *RegisterSyncMgrHandler )(
  832. ISyncMgrRegister * This,
  833. /* [in] */ REFCLSID rclsidHandler,
  834. /* [unique][in] */ LPCWSTR pwszDescription,
  835. /* [in] */ DWORD dwSyncMgrRegisterFlags);
  836. HRESULT ( STDMETHODCALLTYPE *UnregisterSyncMgrHandler )(
  837. ISyncMgrRegister * This,
  838. /* [in] */ REFCLSID rclsidHandler,
  839. /* [in] */ DWORD dwReserved);
  840. HRESULT ( STDMETHODCALLTYPE *GetHandlerRegistrationInfo )(
  841. ISyncMgrRegister * This,
  842. /* [in] */ REFCLSID rclsidHandler,
  843. /* [out][in] */ LPDWORD pdwSyncMgrRegisterFlags);
  844. END_INTERFACE
  845. } ISyncMgrRegisterVtbl;
  846. interface ISyncMgrRegister
  847. {
  848. CONST_VTBL struct ISyncMgrRegisterVtbl *lpVtbl;
  849. };
  850. #ifdef COBJMACROS
  851. #define ISyncMgrRegister_QueryInterface(This,riid,ppvObject) \
  852. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  853. #define ISyncMgrRegister_AddRef(This) \
  854. (This)->lpVtbl -> AddRef(This)
  855. #define ISyncMgrRegister_Release(This) \
  856. (This)->lpVtbl -> Release(This)
  857. #define ISyncMgrRegister_RegisterSyncMgrHandler(This,rclsidHandler,pwszDescription,dwSyncMgrRegisterFlags) \
  858. (This)->lpVtbl -> RegisterSyncMgrHandler(This,rclsidHandler,pwszDescription,dwSyncMgrRegisterFlags)
  859. #define ISyncMgrRegister_UnregisterSyncMgrHandler(This,rclsidHandler,dwReserved) \
  860. (This)->lpVtbl -> UnregisterSyncMgrHandler(This,rclsidHandler,dwReserved)
  861. #define ISyncMgrRegister_GetHandlerRegistrationInfo(This,rclsidHandler,pdwSyncMgrRegisterFlags) \
  862. (This)->lpVtbl -> GetHandlerRegistrationInfo(This,rclsidHandler,pdwSyncMgrRegisterFlags)
  863. #endif /* COBJMACROS */
  864. #endif /* C style interface */
  865. HRESULT STDMETHODCALLTYPE ISyncMgrRegister_RegisterSyncMgrHandler_Proxy(
  866. ISyncMgrRegister * This,
  867. /* [in] */ REFCLSID rclsidHandler,
  868. /* [unique][in] */ LPCWSTR pwszDescription,
  869. /* [in] */ DWORD dwSyncMgrRegisterFlags);
  870. void __RPC_STUB ISyncMgrRegister_RegisterSyncMgrHandler_Stub(
  871. IRpcStubBuffer *This,
  872. IRpcChannelBuffer *_pRpcChannelBuffer,
  873. PRPC_MESSAGE _pRpcMessage,
  874. DWORD *_pdwStubPhase);
  875. HRESULT STDMETHODCALLTYPE ISyncMgrRegister_UnregisterSyncMgrHandler_Proxy(
  876. ISyncMgrRegister * This,
  877. /* [in] */ REFCLSID rclsidHandler,
  878. /* [in] */ DWORD dwReserved);
  879. void __RPC_STUB ISyncMgrRegister_UnregisterSyncMgrHandler_Stub(
  880. IRpcStubBuffer *This,
  881. IRpcChannelBuffer *_pRpcChannelBuffer,
  882. PRPC_MESSAGE _pRpcMessage,
  883. DWORD *_pdwStubPhase);
  884. HRESULT STDMETHODCALLTYPE ISyncMgrRegister_GetHandlerRegistrationInfo_Proxy(
  885. ISyncMgrRegister * This,
  886. /* [in] */ REFCLSID rclsidHandler,
  887. /* [out][in] */ LPDWORD pdwSyncMgrRegisterFlags);
  888. void __RPC_STUB ISyncMgrRegister_GetHandlerRegistrationInfo_Stub(
  889. IRpcStubBuffer *This,
  890. IRpcChannelBuffer *_pRpcChannelBuffer,
  891. PRPC_MESSAGE _pRpcMessage,
  892. DWORD *_pdwStubPhase);
  893. #endif /* __ISyncMgrRegister_INTERFACE_DEFINED__ */
  894. /* interface __MIDL_itf_mobsync_0118 */
  895. /* [local] */
  896. // Declarations for Conflict resolution dialog
  897. // Flags
  898. #define RFCF_APPLY_ALL 0x0001
  899. // Parameter values for RFCCM_NEEDELEMENT (unimplemented)
  900. #define RFCD_NAME 0x0001
  901. #define RFCD_KEEPBOTHICON 0x0002
  902. #define RFCD_KEEPLOCALICON 0x0004
  903. #define RFCD_KEEPSERVERICON 0x0008
  904. #define RFCD_NETWORKMODIFIEDBY 0x0010
  905. #define RFCD_NETWORKMODIFIEDON 0x0020
  906. #define RFCD_LOCALMODIFIEDBY 0x0040
  907. #define RFCD_LOCALMODIFIEDON 0x0080
  908. #define RFCD_NEWNAME 0x0100
  909. #define RFCD_LOCATION 0x0200
  910. #define RFCD_ALL 0x03FF
  911. // Callback Messages
  912. #define RFCCM_VIEWLOCAL 0x0001
  913. #define RFCCM_VIEWNETWORK 0x0002
  914. #define RFCCM_NEEDELEMENT 0x0003
  915. // Return values
  916. #define RFC_CANCEL 0x00
  917. #define RFC_KEEPBOTH 0x01
  918. #define RFC_KEEPLOCAL 0x02
  919. #define RFC_KEEPNETWORK 0x03
  920. #define RFC_APPLY_TO_ALL 0x10
  921. typedef BOOL (WINAPI *PFNRFCDCALLBACK)(HWND hWnd, UINT uMsg, WPARAM wParam, LPARAM lParam);
  922. typedef struct tagRFCDLGPARAMW {
  923. DWORD dwFlags; // RFCF_*
  924. LPCWSTR pszFilename; // File name of the file conflicted
  925. LPCWSTR pszLocation; // Location of the file
  926. LPCWSTR pszNewName; // The new name to give the file
  927. LPCWSTR pszNetworkModifiedBy; // Name of person who changed the net doc
  928. LPCWSTR pszLocalModifiedBy; // Name of person who changed the local doc
  929. LPCWSTR pszNetworkModifiedOn; // When the net doc was changed
  930. LPCWSTR pszLocalModifiedOn; // When the local doc was changed
  931. HICON hIKeepBoth; // Icon
  932. HICON hIKeepLocal; //
  933. HICON hIKeepNetwork; //
  934. PFNRFCDCALLBACK pfnCallBack; // Callback
  935. LPARAM lCallerData; // Place where the caller can keep some context data
  936. } RFCDLGPARAMW;
  937. typedef struct tagRFCDLGPARAMA {
  938. DWORD dwFlags; // RFCF_*
  939. LPCSTR pszFilename; // File name of the file conflicted
  940. LPCSTR pszLocation; // Location of the file
  941. LPCSTR pszNewName; // The new name to give the file
  942. LPCSTR pszNetworkModifiedBy; // Name of person who changed the net doc
  943. LPCSTR pszLocalModifiedBy; // Name of person who changed the local doc
  944. LPCSTR pszNetworkModifiedOn; // When the net doc was changed
  945. LPCSTR pszLocalModifiedOn; // When the local doc was changed
  946. HICON hIKeepBoth; // Icon
  947. HICON hIKeepLocal; //
  948. HICON hIKeepNetwork; //
  949. PFNRFCDCALLBACK pfnCallBack; // Callback
  950. LPARAM lCallerData; // Place where the caller can keep some context data
  951. } RFCDLGPARAMA;
  952. int WINAPI SyncMgrResolveConflictW(HWND hWndParent, RFCDLGPARAMW *pdlgParam);
  953. int WINAPI SyncMgrResolveConflictA(HWND hWndParent, RFCDLGPARAMA *pdlgParam);
  954. #ifdef UNICODE
  955. #define SyncMgrResolveConflict SyncMgrResolveConflictW
  956. #define RFCDLGPARAM RFCDLGPARAMW
  957. #else
  958. #define SyncMgrResolveConflict SyncMgrResolveConflictA
  959. #define RFCDLGPARAM RFCDLGPARAMA
  960. #endif // !UNICODE
  961. extern RPC_IF_HANDLE __MIDL_itf_mobsync_0118_v0_0_c_ifspec;
  962. extern RPC_IF_HANDLE __MIDL_itf_mobsync_0118_v0_0_s_ifspec;
  963. /* Additional Prototypes for ALL interfaces */
  964. /* end of Additional Prototypes */
  965. #ifdef __cplusplus
  966. }
  967. #endif
  968. #endif