mobsync.h 30 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542
  1. /**
  2. * This file has no copyright assigned and is placed in the Public Domain.
  3. * This file is part of the mingw-w64 runtime package.
  4. * No warranty is given; refer to the file DISCLAIMER.PD within this package.
  5. */
  6. #ifndef __REQUIRED_RPCNDR_H_VERSION__
  7. #define __REQUIRED_RPCNDR_H_VERSION__ 475
  8. #endif
  9. #include <_mingw_unicode.h>
  10. #include "rpc.h"
  11. #include "rpcndr.h"
  12. #ifndef __RPCNDR_H_VERSION__
  13. #error This stub requires an updated version of <rpcndr.h>
  14. #endif
  15. #ifndef COM_NO_WINDOWS_H
  16. #include "windows.h"
  17. #include "ole2.h"
  18. #endif
  19. #ifndef __mobsync_h__
  20. #define __mobsync_h__
  21. #ifndef __ISyncMgrSynchronize_FWD_DEFINED__
  22. #define __ISyncMgrSynchronize_FWD_DEFINED__
  23. typedef struct ISyncMgrSynchronize ISyncMgrSynchronize;
  24. #endif
  25. #ifndef __ISyncMgrSynchronizeCallback_FWD_DEFINED__
  26. #define __ISyncMgrSynchronizeCallback_FWD_DEFINED__
  27. typedef struct ISyncMgrSynchronizeCallback ISyncMgrSynchronizeCallback;
  28. #endif
  29. #ifndef __ISyncMgrEnumItems_FWD_DEFINED__
  30. #define __ISyncMgrEnumItems_FWD_DEFINED__
  31. typedef struct ISyncMgrEnumItems ISyncMgrEnumItems;
  32. #endif
  33. #ifndef __ISyncMgrSynchronizeInvoke_FWD_DEFINED__
  34. #define __ISyncMgrSynchronizeInvoke_FWD_DEFINED__
  35. typedef struct ISyncMgrSynchronizeInvoke ISyncMgrSynchronizeInvoke;
  36. #endif
  37. #ifndef __ISyncMgrRegister_FWD_DEFINED__
  38. #define __ISyncMgrRegister_FWD_DEFINED__
  39. typedef struct ISyncMgrRegister ISyncMgrRegister;
  40. #endif
  41. #ifndef __SyncMgr_FWD_DEFINED__
  42. #define __SyncMgr_FWD_DEFINED__
  43. #ifdef __cplusplus
  44. typedef class SyncMgr SyncMgr;
  45. #else
  46. typedef struct SyncMgr SyncMgr;
  47. #endif
  48. #endif
  49. #include "objidl.h"
  50. #include "oleidl.h"
  51. #ifdef __cplusplus
  52. extern "C" {
  53. #endif
  54. #ifndef __MIDL_user_allocate_free_DEFINED__
  55. #define __MIDL_user_allocate_free_DEFINED__
  56. void *__RPC_API MIDL_user_allocate(size_t);
  57. void __RPC_API MIDL_user_free(void *);
  58. #endif
  59. typedef GUID SYNCMGRITEMID;
  60. typedef REFGUID REFSYNCMGRITEMID;
  61. typedef GUID SYNCMGRERRORID;
  62. typedef REFGUID REFSYNCMGRERRORID;
  63. DEFINE_GUID(CLSID_SyncMgr,0x6295df27,0x35ee,0x11d1,0x87,0x7,0x0,0xc0,0x4f,0xd9,0x33,0x27);
  64. DEFINE_GUID(IID_ISyncMgrSynchronize,0x6295df40,0x35ee,0x11d1,0x87,0x7,0x0,0xc0,0x4f,0xd9,0x33,0x27);
  65. DEFINE_GUID(IID_ISyncMgrSynchronizeCallback,0x6295df41,0x35ee,0x11d1,0x87,0x7,0x0,0xc0,0x4f,0xd9,0x33,0x27);
  66. DEFINE_GUID(IID_ISyncMgrRegister,0x6295df42,0x35ee,0x11d1,0x87,0x7,0x0,0xc0,0x4f,0xd9,0x33,0x27);
  67. DEFINE_GUID(IID_ISyncMgrEnumItems,0x6295df2a,0x35ee,0x11d1,0x87,0x7,0x0,0xc0,0x4f,0xd9,0x33,0x27);
  68. DEFINE_GUID(IID_ISyncMgrSynchronizeInvoke,0x6295df2c,0x35ee,0x11d1,0x87,0x7,0x0,0xc0,0x4f,0xd9,0x33,0x27);
  69. #define S_SYNCMGR_MISSINGITEMS MAKE_SCODE(SEVERITY_SUCCESS,FACILITY_ITF,0x0201)
  70. #define S_SYNCMGR_RETRYSYNC MAKE_SCODE(SEVERITY_SUCCESS,FACILITY_ITF,0x0202)
  71. #define S_SYNCMGR_CANCELITEM MAKE_SCODE(SEVERITY_SUCCESS,FACILITY_ITF,0x0203)
  72. #define S_SYNCMGR_CANCELALL MAKE_SCODE(SEVERITY_SUCCESS,FACILITY_ITF,0x0204)
  73. #define S_SYNCMGR_ITEMDELETED MAKE_SCODE(SEVERITY_SUCCESS,FACILITY_ITF,0x0210)
  74. #define S_SYNCMGR_ENUMITEMS MAKE_SCODE(SEVERITY_SUCCESS,FACILITY_ITF,0x0211)
  75. extern RPC_IF_HANDLE __MIDL_itf_mobsync_0000_v0_0_c_ifspec;
  76. extern RPC_IF_HANDLE __MIDL_itf_mobsync_0000_v0_0_s_ifspec;
  77. #ifndef __ISyncMgrSynchronize_INTERFACE_DEFINED__
  78. #define __ISyncMgrSynchronize_INTERFACE_DEFINED__
  79. typedef ISyncMgrSynchronize *LPSYNCMGRSYNCHRONIZE;
  80. typedef enum _tagSYNCMGRFLAG {
  81. SYNCMGRFLAG_CONNECT = 0x1,SYNCMGRFLAG_PENDINGDISCONNECT = 0x2,SYNCMGRFLAG_MANUAL = 0x3,SYNCMGRFLAG_IDLE = 0x4,SYNCMGRFLAG_INVOKE = 0x5,
  82. SYNCMGRFLAG_SCHEDULED = 0x6,SYNCMGRFLAG_EVENTMASK = 0xff,SYNCMGRFLAG_SETTINGS = 0x100,SYNCMGRFLAG_MAYBOTHERUSER = 0x200
  83. } SYNCMGRFLAG;
  84. #define MAX_SYNCMGRHANDLERNAME (32)
  85. #define SYNCMGRHANDLERFLAG_MASK 0x07
  86. typedef enum _tagSYNCMGRHANDLERFLAGS {
  87. SYNCMGRHANDLER_HASPROPERTIES = 0x1,SYNCMGRHANDLER_MAYESTABLISHCONNECTION = 0x2,SYNCMGRHANDLER_ALWAYSLISTHANDLER = 0x4
  88. } SYNCMGRHANDLERFLAGS;
  89. typedef struct _tagSYNCMGRHANDLERINFO {
  90. DWORD cbSize;
  91. HICON hIcon;
  92. DWORD SyncMgrHandlerFlags;
  93. WCHAR wszHandlerName[32 ];
  94. } SYNCMGRHANDLERINFO;
  95. typedef struct _tagSYNCMGRHANDLERINFO *LPSYNCMGRHANDLERINFO;
  96. #define SYNCMGRITEMSTATE_UNCHECKED 0x0000
  97. #define SYNCMGRITEMSTATE_CHECKED 0x0001
  98. typedef enum _tagSYNCMGRSTATUS {
  99. SYNCMGRSTATUS_STOPPED = 0,SYNCMGRSTATUS_SKIPPED = 0x1,SYNCMGRSTATUS_PENDING = 0x2,SYNCMGRSTATUS_UPDATING = 0x3,SYNCMGRSTATUS_SUCCEEDED = 0x4,
  100. SYNCMGRSTATUS_FAILED = 0x5,SYNCMGRSTATUS_PAUSED = 0x6,SYNCMGRSTATUS_RESUMING = 0x7,SYNCMGRSTATUS_DELETED = 0x100
  101. } SYNCMGRSTATUS;
  102. EXTERN_C const IID IID_ISyncMgrSynchronize;
  103. #if defined(__cplusplus) && !defined(CINTERFACE)
  104. struct ISyncMgrSynchronize : public IUnknown {
  105. public:
  106. virtual HRESULT WINAPI Initialize(DWORD dwReserved,DWORD dwSyncMgrFlags,DWORD cbCookie,const BYTE *lpCookie) = 0;
  107. virtual HRESULT WINAPI GetHandlerInfo(LPSYNCMGRHANDLERINFO *ppSyncMgrHandlerInfo) = 0;
  108. virtual HRESULT WINAPI EnumSyncMgrItems(ISyncMgrEnumItems **ppSyncMgrEnumItems) = 0;
  109. virtual HRESULT WINAPI GetItemObject(REFSYNCMGRITEMID ItemID,REFIID riid,void **ppv) = 0;
  110. virtual HRESULT WINAPI ShowProperties(HWND hWndParent,REFSYNCMGRITEMID ItemID) = 0;
  111. virtual HRESULT WINAPI SetProgressCallback(ISyncMgrSynchronizeCallback *lpCallBack) = 0;
  112. virtual HRESULT WINAPI PrepareForSync(ULONG cbNumItems,SYNCMGRITEMID *pItemIDs,HWND hWndParent,DWORD dwReserved) = 0;
  113. virtual HRESULT WINAPI Synchronize(HWND hWndParent) = 0;
  114. virtual HRESULT WINAPI SetItemStatus(REFSYNCMGRITEMID pItemID,DWORD dwSyncMgrStatus) = 0;
  115. virtual HRESULT WINAPI ShowError(HWND hWndParent,REFSYNCMGRERRORID ErrorID) = 0;
  116. };
  117. #else
  118. typedef struct ISyncMgrSynchronizeVtbl {
  119. BEGIN_INTERFACE
  120. HRESULT (WINAPI *QueryInterface)(ISyncMgrSynchronize *This,REFIID riid,void **ppvObject);
  121. ULONG (WINAPI *AddRef)(ISyncMgrSynchronize *This);
  122. ULONG (WINAPI *Release)(ISyncMgrSynchronize *This);
  123. HRESULT (WINAPI *Initialize)(ISyncMgrSynchronize *This,DWORD dwReserved,DWORD dwSyncMgrFlags,DWORD cbCookie,const BYTE *lpCookie);
  124. HRESULT (WINAPI *GetHandlerInfo)(ISyncMgrSynchronize *This,LPSYNCMGRHANDLERINFO *ppSyncMgrHandlerInfo);
  125. HRESULT (WINAPI *EnumSyncMgrItems)(ISyncMgrSynchronize *This,ISyncMgrEnumItems **ppSyncMgrEnumItems);
  126. HRESULT (WINAPI *GetItemObject)(ISyncMgrSynchronize *This,REFSYNCMGRITEMID ItemID,REFIID riid,void **ppv);
  127. HRESULT (WINAPI *ShowProperties)(ISyncMgrSynchronize *This,HWND hWndParent,REFSYNCMGRITEMID ItemID);
  128. HRESULT (WINAPI *SetProgressCallback)(ISyncMgrSynchronize *This,ISyncMgrSynchronizeCallback *lpCallBack);
  129. HRESULT (WINAPI *PrepareForSync)(ISyncMgrSynchronize *This,ULONG cbNumItems,SYNCMGRITEMID *pItemIDs,HWND hWndParent,DWORD dwReserved);
  130. HRESULT (WINAPI *Synchronize)(ISyncMgrSynchronize *This,HWND hWndParent);
  131. HRESULT (WINAPI *SetItemStatus)(ISyncMgrSynchronize *This,REFSYNCMGRITEMID pItemID,DWORD dwSyncMgrStatus);
  132. HRESULT (WINAPI *ShowError)(ISyncMgrSynchronize *This,HWND hWndParent,REFSYNCMGRERRORID ErrorID);
  133. END_INTERFACE
  134. } ISyncMgrSynchronizeVtbl;
  135. struct ISyncMgrSynchronize {
  136. CONST_VTBL struct ISyncMgrSynchronizeVtbl *lpVtbl;
  137. };
  138. #ifdef COBJMACROS
  139. #define ISyncMgrSynchronize_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
  140. #define ISyncMgrSynchronize_AddRef(This) (This)->lpVtbl->AddRef(This)
  141. #define ISyncMgrSynchronize_Release(This) (This)->lpVtbl->Release(This)
  142. #define ISyncMgrSynchronize_Initialize(This,dwReserved,dwSyncMgrFlags,cbCookie,lpCookie) (This)->lpVtbl->Initialize(This,dwReserved,dwSyncMgrFlags,cbCookie,lpCookie)
  143. #define ISyncMgrSynchronize_GetHandlerInfo(This,ppSyncMgrHandlerInfo) (This)->lpVtbl->GetHandlerInfo(This,ppSyncMgrHandlerInfo)
  144. #define ISyncMgrSynchronize_EnumSyncMgrItems(This,ppSyncMgrEnumItems) (This)->lpVtbl->EnumSyncMgrItems(This,ppSyncMgrEnumItems)
  145. #define ISyncMgrSynchronize_GetItemObject(This,ItemID,riid,ppv) (This)->lpVtbl->GetItemObject(This,ItemID,riid,ppv)
  146. #define ISyncMgrSynchronize_ShowProperties(This,hWndParent,ItemID) (This)->lpVtbl->ShowProperties(This,hWndParent,ItemID)
  147. #define ISyncMgrSynchronize_SetProgressCallback(This,lpCallBack) (This)->lpVtbl->SetProgressCallback(This,lpCallBack)
  148. #define ISyncMgrSynchronize_PrepareForSync(This,cbNumItems,pItemIDs,hWndParent,dwReserved) (This)->lpVtbl->PrepareForSync(This,cbNumItems,pItemIDs,hWndParent,dwReserved)
  149. #define ISyncMgrSynchronize_Synchronize(This,hWndParent) (This)->lpVtbl->Synchronize(This,hWndParent)
  150. #define ISyncMgrSynchronize_SetItemStatus(This,pItemID,dwSyncMgrStatus) (This)->lpVtbl->SetItemStatus(This,pItemID,dwSyncMgrStatus)
  151. #define ISyncMgrSynchronize_ShowError(This,hWndParent,ErrorID) (This)->lpVtbl->ShowError(This,hWndParent,ErrorID)
  152. #endif
  153. #endif
  154. HRESULT WINAPI ISyncMgrSynchronize_Initialize_Proxy(ISyncMgrSynchronize *This,DWORD dwReserved,DWORD dwSyncMgrFlags,DWORD cbCookie,const BYTE *lpCookie);
  155. void __RPC_STUB ISyncMgrSynchronize_Initialize_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  156. HRESULT WINAPI ISyncMgrSynchronize_GetHandlerInfo_Proxy(ISyncMgrSynchronize *This,LPSYNCMGRHANDLERINFO *ppSyncMgrHandlerInfo);
  157. void __RPC_STUB ISyncMgrSynchronize_GetHandlerInfo_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  158. HRESULT WINAPI ISyncMgrSynchronize_EnumSyncMgrItems_Proxy(ISyncMgrSynchronize *This,ISyncMgrEnumItems **ppSyncMgrEnumItems);
  159. void __RPC_STUB ISyncMgrSynchronize_EnumSyncMgrItems_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  160. HRESULT WINAPI ISyncMgrSynchronize_GetItemObject_Proxy(ISyncMgrSynchronize *This,REFSYNCMGRITEMID ItemID,REFIID riid,void **ppv);
  161. void __RPC_STUB ISyncMgrSynchronize_GetItemObject_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  162. HRESULT WINAPI ISyncMgrSynchronize_ShowProperties_Proxy(ISyncMgrSynchronize *This,HWND hWndParent,REFSYNCMGRITEMID ItemID);
  163. void __RPC_STUB ISyncMgrSynchronize_ShowProperties_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  164. HRESULT WINAPI ISyncMgrSynchronize_SetProgressCallback_Proxy(ISyncMgrSynchronize *This,ISyncMgrSynchronizeCallback *lpCallBack);
  165. void __RPC_STUB ISyncMgrSynchronize_SetProgressCallback_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  166. HRESULT WINAPI ISyncMgrSynchronize_PrepareForSync_Proxy(ISyncMgrSynchronize *This,ULONG cbNumItems,SYNCMGRITEMID *pItemIDs,HWND hWndParent,DWORD dwReserved);
  167. void __RPC_STUB ISyncMgrSynchronize_PrepareForSync_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  168. HRESULT WINAPI ISyncMgrSynchronize_Synchronize_Proxy(ISyncMgrSynchronize *This,HWND hWndParent);
  169. void __RPC_STUB ISyncMgrSynchronize_Synchronize_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  170. HRESULT WINAPI ISyncMgrSynchronize_SetItemStatus_Proxy(ISyncMgrSynchronize *This,REFSYNCMGRITEMID pItemID,DWORD dwSyncMgrStatus);
  171. void __RPC_STUB ISyncMgrSynchronize_SetItemStatus_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  172. HRESULT WINAPI ISyncMgrSynchronize_ShowError_Proxy(ISyncMgrSynchronize *This,HWND hWndParent,REFSYNCMGRERRORID ErrorID);
  173. void __RPC_STUB ISyncMgrSynchronize_ShowError_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  174. #endif
  175. #ifndef __ISyncMgrSynchronizeCallback_INTERFACE_DEFINED__
  176. #define __ISyncMgrSynchronizeCallback_INTERFACE_DEFINED__
  177. typedef ISyncMgrSynchronizeCallback *LPSYNCMGRSYNCHRONIZECALLBACK;
  178. #define SYNCMGRPROGRESSITEM_STATUSTEXT 0x0001
  179. #define SYNCMGRPROGRESSITEM_STATUSTYPE 0x0002
  180. #define SYNCMGRPROGRESSITEM_PROGVALUE 0x0004
  181. #define SYNCMGRPROGRESSITEM_MAXVALUE 0x0008
  182. typedef struct _tagSYNCMGRPROGRESSITEM {
  183. DWORD cbSize;
  184. UINT mask;
  185. LPCWSTR lpcStatusText;
  186. DWORD dwStatusType;
  187. INT iProgValue;
  188. INT iMaxValue;
  189. } SYNCMGRPROGRESSITEM;
  190. typedef struct _tagSYNCMGRPROGRESSITEM *LPSYNCMGRPROGRESSITEM;
  191. typedef enum _tagSYNCMGRLOGLEVEL {
  192. SYNCMGRLOGLEVEL_INFORMATION = 0x1,SYNCMGRLOGLEVEL_WARNING = 0x2,SYNCMGRLOGLEVEL_ERROR = 0x3
  193. } SYNCMGRLOGLEVEL;
  194. #define SYNCMGRLOGERROR_ERRORFLAGS 0x0001
  195. #define SYNCMGRLOGERROR_ERRORID 0x0002
  196. #define SYNCMGRLOGERROR_ITEMID 0x0004
  197. typedef enum _tagSYNCMGRERRORFLAGS {
  198. SYNCMGRERRORFLAG_ENABLEJUMPTEXT = 0x1
  199. } SYNCMGRERRORFLAGS;
  200. typedef struct _tagSYNCMGRLOGERRORINFO {
  201. DWORD cbSize;
  202. DWORD mask;
  203. DWORD dwSyncMgrErrorFlags;
  204. SYNCMGRERRORID ErrorID;
  205. SYNCMGRITEMID ItemID;
  206. } SYNCMGRLOGERRORINFO;
  207. typedef struct _tagSYNCMGRLOGERRORINFO *LPSYNCMGRLOGERRORINFO;
  208. EXTERN_C const IID IID_ISyncMgrSynchronizeCallback;
  209. #if defined(__cplusplus) && !defined(CINTERFACE)
  210. struct ISyncMgrSynchronizeCallback : public IUnknown {
  211. public:
  212. virtual HRESULT WINAPI ShowPropertiesCompleted(HRESULT hr) = 0;
  213. virtual HRESULT WINAPI PrepareForSyncCompleted(HRESULT hr) = 0;
  214. virtual HRESULT WINAPI SynchronizeCompleted(HRESULT hr) = 0;
  215. virtual HRESULT WINAPI ShowErrorCompleted(HRESULT hr,ULONG cbNumItems,SYNCMGRITEMID *pItemIDs) = 0;
  216. virtual HRESULT WINAPI EnableModeless(WINBOOL fEnable) = 0;
  217. virtual HRESULT WINAPI Progress(REFSYNCMGRITEMID pItemID,LPSYNCMGRPROGRESSITEM lpSyncProgressItem) = 0;
  218. virtual HRESULT WINAPI LogError(DWORD dwErrorLevel,LPCWSTR lpcErrorText,LPSYNCMGRLOGERRORINFO lpSyncLogError) = 0;
  219. virtual HRESULT WINAPI DeleteLogError(REFSYNCMGRERRORID ErrorID,DWORD dwReserved) = 0;
  220. virtual HRESULT WINAPI EstablishConnection(LPCWSTR lpwszConnection,DWORD dwReserved) = 0;
  221. };
  222. #else
  223. typedef struct ISyncMgrSynchronizeCallbackVtbl {
  224. BEGIN_INTERFACE
  225. HRESULT (WINAPI *QueryInterface)(ISyncMgrSynchronizeCallback *This,REFIID riid,void **ppvObject);
  226. ULONG (WINAPI *AddRef)(ISyncMgrSynchronizeCallback *This);
  227. ULONG (WINAPI *Release)(ISyncMgrSynchronizeCallback *This);
  228. HRESULT (WINAPI *ShowPropertiesCompleted)(ISyncMgrSynchronizeCallback *This,HRESULT hr);
  229. HRESULT (WINAPI *PrepareForSyncCompleted)(ISyncMgrSynchronizeCallback *This,HRESULT hr);
  230. HRESULT (WINAPI *SynchronizeCompleted)(ISyncMgrSynchronizeCallback *This,HRESULT hr);
  231. HRESULT (WINAPI *ShowErrorCompleted)(ISyncMgrSynchronizeCallback *This,HRESULT hr,ULONG cbNumItems,SYNCMGRITEMID *pItemIDs);
  232. HRESULT (WINAPI *EnableModeless)(ISyncMgrSynchronizeCallback *This,WINBOOL fEnable);
  233. HRESULT (WINAPI *Progress)(ISyncMgrSynchronizeCallback *This,REFSYNCMGRITEMID pItemID,LPSYNCMGRPROGRESSITEM lpSyncProgressItem);
  234. HRESULT (WINAPI *LogError)(ISyncMgrSynchronizeCallback *This,DWORD dwErrorLevel,LPCWSTR lpcErrorText,LPSYNCMGRLOGERRORINFO lpSyncLogError);
  235. HRESULT (WINAPI *DeleteLogError)(ISyncMgrSynchronizeCallback *This,REFSYNCMGRERRORID ErrorID,DWORD dwReserved);
  236. HRESULT (WINAPI *EstablishConnection)(ISyncMgrSynchronizeCallback *This,LPCWSTR lpwszConnection,DWORD dwReserved);
  237. END_INTERFACE
  238. } ISyncMgrSynchronizeCallbackVtbl;
  239. struct ISyncMgrSynchronizeCallback {
  240. CONST_VTBL struct ISyncMgrSynchronizeCallbackVtbl *lpVtbl;
  241. };
  242. #ifdef COBJMACROS
  243. #define ISyncMgrSynchronizeCallback_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
  244. #define ISyncMgrSynchronizeCallback_AddRef(This) (This)->lpVtbl->AddRef(This)
  245. #define ISyncMgrSynchronizeCallback_Release(This) (This)->lpVtbl->Release(This)
  246. #define ISyncMgrSynchronizeCallback_ShowPropertiesCompleted(This,hr) (This)->lpVtbl->ShowPropertiesCompleted(This,hr)
  247. #define ISyncMgrSynchronizeCallback_PrepareForSyncCompleted(This,hr) (This)->lpVtbl->PrepareForSyncCompleted(This,hr)
  248. #define ISyncMgrSynchronizeCallback_SynchronizeCompleted(This,hr) (This)->lpVtbl->SynchronizeCompleted(This,hr)
  249. #define ISyncMgrSynchronizeCallback_ShowErrorCompleted(This,hr,cbNumItems,pItemIDs) (This)->lpVtbl->ShowErrorCompleted(This,hr,cbNumItems,pItemIDs)
  250. #define ISyncMgrSynchronizeCallback_EnableModeless(This,fEnable) (This)->lpVtbl->EnableModeless(This,fEnable)
  251. #define ISyncMgrSynchronizeCallback_Progress(This,pItemID,lpSyncProgressItem) (This)->lpVtbl->Progress(This,pItemID,lpSyncProgressItem)
  252. #define ISyncMgrSynchronizeCallback_LogError(This,dwErrorLevel,lpcErrorText,lpSyncLogError) (This)->lpVtbl->LogError(This,dwErrorLevel,lpcErrorText,lpSyncLogError)
  253. #define ISyncMgrSynchronizeCallback_DeleteLogError(This,ErrorID,dwReserved) (This)->lpVtbl->DeleteLogError(This,ErrorID,dwReserved)
  254. #define ISyncMgrSynchronizeCallback_EstablishConnection(This,lpwszConnection,dwReserved) (This)->lpVtbl->EstablishConnection(This,lpwszConnection,dwReserved)
  255. #endif
  256. #endif
  257. HRESULT WINAPI ISyncMgrSynchronizeCallback_ShowPropertiesCompleted_Proxy(ISyncMgrSynchronizeCallback *This,HRESULT hr);
  258. void __RPC_STUB ISyncMgrSynchronizeCallback_ShowPropertiesCompleted_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  259. HRESULT WINAPI ISyncMgrSynchronizeCallback_PrepareForSyncCompleted_Proxy(ISyncMgrSynchronizeCallback *This,HRESULT hr);
  260. void __RPC_STUB ISyncMgrSynchronizeCallback_PrepareForSyncCompleted_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  261. HRESULT WINAPI ISyncMgrSynchronizeCallback_SynchronizeCompleted_Proxy(ISyncMgrSynchronizeCallback *This,HRESULT hr);
  262. void __RPC_STUB ISyncMgrSynchronizeCallback_SynchronizeCompleted_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  263. HRESULT WINAPI ISyncMgrSynchronizeCallback_ShowErrorCompleted_Proxy(ISyncMgrSynchronizeCallback *This,HRESULT hr,ULONG cbNumItems,SYNCMGRITEMID *pItemIDs);
  264. void __RPC_STUB ISyncMgrSynchronizeCallback_ShowErrorCompleted_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  265. HRESULT WINAPI ISyncMgrSynchronizeCallback_EnableModeless_Proxy(ISyncMgrSynchronizeCallback *This,WINBOOL fEnable);
  266. void __RPC_STUB ISyncMgrSynchronizeCallback_EnableModeless_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  267. HRESULT WINAPI ISyncMgrSynchronizeCallback_Progress_Proxy(ISyncMgrSynchronizeCallback *This,REFSYNCMGRITEMID pItemID,LPSYNCMGRPROGRESSITEM lpSyncProgressItem);
  268. void __RPC_STUB ISyncMgrSynchronizeCallback_Progress_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  269. HRESULT WINAPI ISyncMgrSynchronizeCallback_LogError_Proxy(ISyncMgrSynchronizeCallback *This,DWORD dwErrorLevel,LPCWSTR lpcErrorText,LPSYNCMGRLOGERRORINFO lpSyncLogError);
  270. void __RPC_STUB ISyncMgrSynchronizeCallback_LogError_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  271. HRESULT WINAPI ISyncMgrSynchronizeCallback_DeleteLogError_Proxy(ISyncMgrSynchronizeCallback *This,REFSYNCMGRERRORID ErrorID,DWORD dwReserved);
  272. void __RPC_STUB ISyncMgrSynchronizeCallback_DeleteLogError_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  273. HRESULT WINAPI ISyncMgrSynchronizeCallback_EstablishConnection_Proxy(ISyncMgrSynchronizeCallback *This,LPCWSTR lpwszConnection,DWORD dwReserved);
  274. void __RPC_STUB ISyncMgrSynchronizeCallback_EstablishConnection_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  275. #endif
  276. #ifndef __ISyncMgrEnumItems_INTERFACE_DEFINED__
  277. #define __ISyncMgrEnumItems_INTERFACE_DEFINED__
  278. typedef ISyncMgrEnumItems *LPSYNCMGRENUMITEMS;
  279. #define SYNCMGRITEM_ITEMFLAGMASK 0x1F
  280. #define MAX_SYNCMGRITEMNAME (128)
  281. typedef enum _tagSYNCMGRITEMFLAGS {
  282. SYNCMGRITEM_HASPROPERTIES = 0x1,SYNCMGRITEM_TEMPORARY = 0x2,SYNCMGRITEM_ROAMINGUSER = 0x4,SYNCMGRITEM_LASTUPDATETIME = 0x8,
  283. SYNCMGRITEM_MAYDELETEITEM = 0x10
  284. } SYNCMGRITEMFLAGS;
  285. typedef struct _tagSYNCMGRITEM {
  286. DWORD cbSize;
  287. DWORD dwFlags;
  288. SYNCMGRITEMID ItemID;
  289. DWORD dwItemState;
  290. HICON hIcon;
  291. WCHAR wszItemName[128 ];
  292. FILETIME ftLastUpdate;
  293. } SYNCMGRITEM;
  294. typedef struct _tagSYNCMGRITEM *LPSYNCMGRITEM;
  295. EXTERN_C const IID IID_ISyncMgrEnumItems;
  296. #if defined(__cplusplus) && !defined(CINTERFACE)
  297. struct ISyncMgrEnumItems : public IUnknown {
  298. public:
  299. virtual HRESULT WINAPI Next(ULONG celt,LPSYNCMGRITEM rgelt,ULONG *pceltFetched) = 0;
  300. virtual HRESULT WINAPI Skip(ULONG celt) = 0;
  301. virtual HRESULT WINAPI Reset(void) = 0;
  302. virtual HRESULT WINAPI Clone(ISyncMgrEnumItems **ppenum) = 0;
  303. };
  304. #else
  305. typedef struct ISyncMgrEnumItemsVtbl {
  306. BEGIN_INTERFACE
  307. HRESULT (WINAPI *QueryInterface)(ISyncMgrEnumItems *This,REFIID riid,void **ppvObject);
  308. ULONG (WINAPI *AddRef)(ISyncMgrEnumItems *This);
  309. ULONG (WINAPI *Release)(ISyncMgrEnumItems *This);
  310. HRESULT (WINAPI *Next)(ISyncMgrEnumItems *This,ULONG celt,LPSYNCMGRITEM rgelt,ULONG *pceltFetched);
  311. HRESULT (WINAPI *Skip)(ISyncMgrEnumItems *This,ULONG celt);
  312. HRESULT (WINAPI *Reset)(ISyncMgrEnumItems *This);
  313. HRESULT (WINAPI *Clone)(ISyncMgrEnumItems *This,ISyncMgrEnumItems **ppenum);
  314. END_INTERFACE
  315. } ISyncMgrEnumItemsVtbl;
  316. struct ISyncMgrEnumItems {
  317. CONST_VTBL struct ISyncMgrEnumItemsVtbl *lpVtbl;
  318. };
  319. #ifdef COBJMACROS
  320. #define ISyncMgrEnumItems_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
  321. #define ISyncMgrEnumItems_AddRef(This) (This)->lpVtbl->AddRef(This)
  322. #define ISyncMgrEnumItems_Release(This) (This)->lpVtbl->Release(This)
  323. #define ISyncMgrEnumItems_Next(This,celt,rgelt,pceltFetched) (This)->lpVtbl->Next(This,celt,rgelt,pceltFetched)
  324. #define ISyncMgrEnumItems_Skip(This,celt) (This)->lpVtbl->Skip(This,celt)
  325. #define ISyncMgrEnumItems_Reset(This) (This)->lpVtbl->Reset(This)
  326. #define ISyncMgrEnumItems_Clone(This,ppenum) (This)->lpVtbl->Clone(This,ppenum)
  327. #endif
  328. #endif
  329. HRESULT WINAPI ISyncMgrEnumItems_Next_Proxy(ISyncMgrEnumItems *This,ULONG celt,LPSYNCMGRITEM rgelt,ULONG *pceltFetched);
  330. void __RPC_STUB ISyncMgrEnumItems_Next_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  331. HRESULT WINAPI ISyncMgrEnumItems_Skip_Proxy(ISyncMgrEnumItems *This,ULONG celt);
  332. void __RPC_STUB ISyncMgrEnumItems_Skip_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  333. HRESULT WINAPI ISyncMgrEnumItems_Reset_Proxy(ISyncMgrEnumItems *This);
  334. void __RPC_STUB ISyncMgrEnumItems_Reset_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  335. HRESULT WINAPI ISyncMgrEnumItems_Clone_Proxy(ISyncMgrEnumItems *This,ISyncMgrEnumItems **ppenum);
  336. void __RPC_STUB ISyncMgrEnumItems_Clone_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  337. #endif
  338. #ifndef __ISyncMgrSynchronizeInvoke_INTERFACE_DEFINED__
  339. #define __ISyncMgrSynchronizeInvoke_INTERFACE_DEFINED__
  340. typedef ISyncMgrSynchronizeInvoke *LPSYNCMGRSYNCHRONIZEINVOKE;
  341. typedef enum _tagSYNCMGRINVOKEFLAGS {
  342. SYNCMGRINVOKE_STARTSYNC = 0x2,SYNCMGRINVOKE_MINIMIZED = 0x4
  343. } SYNCMGRINVOKEFLAGS;
  344. EXTERN_C const IID IID_ISyncMgrSynchronizeInvoke;
  345. #if defined(__cplusplus) && !defined(CINTERFACE)
  346. struct ISyncMgrSynchronizeInvoke : public IUnknown {
  347. public:
  348. virtual HRESULT WINAPI UpdateItems(DWORD dwInvokeFlags,REFCLSID rclsid,DWORD cbCookie,const BYTE *lpCookie) = 0;
  349. virtual HRESULT WINAPI UpdateAll(void) = 0;
  350. };
  351. #else
  352. typedef struct ISyncMgrSynchronizeInvokeVtbl {
  353. BEGIN_INTERFACE
  354. HRESULT (WINAPI *QueryInterface)(ISyncMgrSynchronizeInvoke *This,REFIID riid,void **ppvObject);
  355. ULONG (WINAPI *AddRef)(ISyncMgrSynchronizeInvoke *This);
  356. ULONG (WINAPI *Release)(ISyncMgrSynchronizeInvoke *This);
  357. HRESULT (WINAPI *UpdateItems)(ISyncMgrSynchronizeInvoke *This,DWORD dwInvokeFlags,REFCLSID rclsid,DWORD cbCookie,const BYTE *lpCookie);
  358. HRESULT (WINAPI *UpdateAll)(ISyncMgrSynchronizeInvoke *This);
  359. END_INTERFACE
  360. } ISyncMgrSynchronizeInvokeVtbl;
  361. struct ISyncMgrSynchronizeInvoke {
  362. CONST_VTBL struct ISyncMgrSynchronizeInvokeVtbl *lpVtbl;
  363. };
  364. #ifdef COBJMACROS
  365. #define ISyncMgrSynchronizeInvoke_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
  366. #define ISyncMgrSynchronizeInvoke_AddRef(This) (This)->lpVtbl->AddRef(This)
  367. #define ISyncMgrSynchronizeInvoke_Release(This) (This)->lpVtbl->Release(This)
  368. #define ISyncMgrSynchronizeInvoke_UpdateItems(This,dwInvokeFlags,rclsid,cbCookie,lpCookie) (This)->lpVtbl->UpdateItems(This,dwInvokeFlags,rclsid,cbCookie,lpCookie)
  369. #define ISyncMgrSynchronizeInvoke_UpdateAll(This) (This)->lpVtbl->UpdateAll(This)
  370. #endif
  371. #endif
  372. HRESULT WINAPI ISyncMgrSynchronizeInvoke_UpdateItems_Proxy(ISyncMgrSynchronizeInvoke *This,DWORD dwInvokeFlags,REFCLSID rclsid,DWORD cbCookie,const BYTE *lpCookie);
  373. void __RPC_STUB ISyncMgrSynchronizeInvoke_UpdateItems_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  374. HRESULT WINAPI ISyncMgrSynchronizeInvoke_UpdateAll_Proxy(ISyncMgrSynchronizeInvoke *This);
  375. void __RPC_STUB ISyncMgrSynchronizeInvoke_UpdateAll_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  376. #endif
  377. #ifndef __ISyncMgrRegister_INTERFACE_DEFINED__
  378. #define __ISyncMgrRegister_INTERFACE_DEFINED__
  379. typedef ISyncMgrRegister *LPSYNCMGRREGISTER;
  380. #define SYNCMGRREGISTERFLAGS_MASK 0x07
  381. typedef enum _tagSYNCMGRREGISTERFLAGS {
  382. SYNCMGRREGISTERFLAG_CONNECT = 0x1,SYNCMGRREGISTERFLAG_PENDINGDISCONNECT = 0x2,SYNCMGRREGISTERFLAG_IDLE = 0x4
  383. } SYNCMGRREGISTERFLAGS;
  384. EXTERN_C const IID IID_ISyncMgrRegister;
  385. #if defined(__cplusplus) && !defined(CINTERFACE)
  386. struct ISyncMgrRegister : public IUnknown {
  387. public:
  388. virtual HRESULT WINAPI RegisterSyncMgrHandler(REFCLSID rclsidHandler,LPCWSTR pwszDescription,DWORD dwSyncMgrRegisterFlags) = 0;
  389. virtual HRESULT WINAPI UnregisterSyncMgrHandler(REFCLSID rclsidHandler,DWORD dwReserved) = 0;
  390. virtual HRESULT WINAPI GetHandlerRegistrationInfo(REFCLSID rclsidHandler,LPDWORD pdwSyncMgrRegisterFlags) = 0;
  391. };
  392. #else
  393. typedef struct ISyncMgrRegisterVtbl {
  394. BEGIN_INTERFACE
  395. HRESULT (WINAPI *QueryInterface)(ISyncMgrRegister *This,REFIID riid,void **ppvObject);
  396. ULONG (WINAPI *AddRef)(ISyncMgrRegister *This);
  397. ULONG (WINAPI *Release)(ISyncMgrRegister *This);
  398. HRESULT (WINAPI *RegisterSyncMgrHandler)(ISyncMgrRegister *This,REFCLSID rclsidHandler,LPCWSTR pwszDescription,DWORD dwSyncMgrRegisterFlags);
  399. HRESULT (WINAPI *UnregisterSyncMgrHandler)(ISyncMgrRegister *This,REFCLSID rclsidHandler,DWORD dwReserved);
  400. HRESULT (WINAPI *GetHandlerRegistrationInfo)(ISyncMgrRegister *This,REFCLSID rclsidHandler,LPDWORD pdwSyncMgrRegisterFlags);
  401. END_INTERFACE
  402. } ISyncMgrRegisterVtbl;
  403. struct ISyncMgrRegister {
  404. CONST_VTBL struct ISyncMgrRegisterVtbl *lpVtbl;
  405. };
  406. #ifdef COBJMACROS
  407. #define ISyncMgrRegister_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
  408. #define ISyncMgrRegister_AddRef(This) (This)->lpVtbl->AddRef(This)
  409. #define ISyncMgrRegister_Release(This) (This)->lpVtbl->Release(This)
  410. #define ISyncMgrRegister_RegisterSyncMgrHandler(This,rclsidHandler,pwszDescription,dwSyncMgrRegisterFlags) (This)->lpVtbl->RegisterSyncMgrHandler(This,rclsidHandler,pwszDescription,dwSyncMgrRegisterFlags)
  411. #define ISyncMgrRegister_UnregisterSyncMgrHandler(This,rclsidHandler,dwReserved) (This)->lpVtbl->UnregisterSyncMgrHandler(This,rclsidHandler,dwReserved)
  412. #define ISyncMgrRegister_GetHandlerRegistrationInfo(This,rclsidHandler,pdwSyncMgrRegisterFlags) (This)->lpVtbl->GetHandlerRegistrationInfo(This,rclsidHandler,pdwSyncMgrRegisterFlags)
  413. #endif
  414. #endif
  415. HRESULT WINAPI ISyncMgrRegister_RegisterSyncMgrHandler_Proxy(ISyncMgrRegister *This,REFCLSID rclsidHandler,LPCWSTR pwszDescription,DWORD dwSyncMgrRegisterFlags);
  416. void __RPC_STUB ISyncMgrRegister_RegisterSyncMgrHandler_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  417. HRESULT WINAPI ISyncMgrRegister_UnregisterSyncMgrHandler_Proxy(ISyncMgrRegister *This,REFCLSID rclsidHandler,DWORD dwReserved);
  418. void __RPC_STUB ISyncMgrRegister_UnregisterSyncMgrHandler_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  419. HRESULT WINAPI ISyncMgrRegister_GetHandlerRegistrationInfo_Proxy(ISyncMgrRegister *This,REFCLSID rclsidHandler,LPDWORD pdwSyncMgrRegisterFlags);
  420. void __RPC_STUB ISyncMgrRegister_GetHandlerRegistrationInfo_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  421. #endif
  422. #define RFCF_APPLY_ALL 0x0001
  423. #define RFCD_NAME 0x0001
  424. #define RFCD_KEEPBOTHICON 0x0002
  425. #define RFCD_KEEPLOCALICON 0x0004
  426. #define RFCD_KEEPSERVERICON 0x0008
  427. #define RFCD_NETWORKMODIFIEDBY 0x0010
  428. #define RFCD_NETWORKMODIFIEDON 0x0020
  429. #define RFCD_LOCALMODIFIEDBY 0x0040
  430. #define RFCD_LOCALMODIFIEDON 0x0080
  431. #define RFCD_NEWNAME 0x0100
  432. #define RFCD_LOCATION 0x0200
  433. #define RFCD_ALL 0x03FF
  434. #define RFCCM_VIEWLOCAL 0x0001
  435. #define RFCCM_VIEWNETWORK 0x0002
  436. #define RFCCM_NEEDELEMENT 0x0003
  437. #define RFC_CANCEL 0x00
  438. #define RFC_KEEPBOTH 0x01
  439. #define RFC_KEEPLOCAL 0x02
  440. #define RFC_KEEPNETWORK 0x03
  441. #define RFC_APPLY_TO_ALL 0x10
  442. typedef WINBOOL (WINAPI *PFNRFCDCALLBACK)(HWND hWnd,UINT uMsg,WPARAM wParam,LPARAM lParam);
  443. typedef struct tagRFCDLGPARAMW {
  444. DWORD dwFlags;
  445. LPCWSTR pszFilename;
  446. LPCWSTR pszLocation;
  447. LPCWSTR pszNewName;
  448. LPCWSTR pszNetworkModifiedBy;
  449. LPCWSTR pszLocalModifiedBy;
  450. LPCWSTR pszNetworkModifiedOn;
  451. LPCWSTR pszLocalModifiedOn;
  452. HICON hIKeepBoth;
  453. HICON hIKeepLocal;
  454. HICON hIKeepNetwork;
  455. PFNRFCDCALLBACK pfnCallBack;
  456. LPARAM lCallerData;
  457. } RFCDLGPARAMW;
  458. typedef struct tagRFCDLGPARAMA {
  459. DWORD dwFlags;
  460. LPCSTR pszFilename;
  461. LPCSTR pszLocation;
  462. LPCSTR pszNewName;
  463. LPCSTR pszNetworkModifiedBy;
  464. LPCSTR pszLocalModifiedBy;
  465. LPCSTR pszNetworkModifiedOn;
  466. LPCSTR pszLocalModifiedOn;
  467. HICON hIKeepBoth;
  468. HICON hIKeepLocal;
  469. HICON hIKeepNetwork;
  470. PFNRFCDCALLBACK pfnCallBack;
  471. LPARAM lCallerData;
  472. } RFCDLGPARAMA;
  473. int WINAPI SyncMgrResolveConflictW(HWND hWndParent,RFCDLGPARAMW *pdlgParam);
  474. int WINAPI SyncMgrResolveConflictA(HWND hWndParent,RFCDLGPARAMA *pdlgParam);
  475. #define SyncMgrResolveConflict __MINGW_NAME_AW(SyncMgrResolveConflict)
  476. #define RFCDLGPARAM __MINGW_NAME_AW(RFCDLGPARAM)
  477. extern RPC_IF_HANDLE __MIDL_itf_mobsync_0122_v0_0_c_ifspec;
  478. extern RPC_IF_HANDLE __MIDL_itf_mobsync_0122_v0_0_s_ifspec;
  479. #ifdef __cplusplus
  480. }
  481. #endif
  482. #endif