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