Leaked source code of windows server 2003
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.

903 lines
29 KiB

  1. /* this ALWAYS GENERATED file contains the definitions for the interfaces */
  2. /* File created by MIDL compiler version 6.00.0361 */
  3. /* Compiler settings for vscoordint.idl:
  4. Oicf, W1, Zp8, env=Win32 (32b run)
  5. protocol : dce , ms_ext, c_ext, robust
  6. error checks: allocation ref bounds_check enum stub_data
  7. VC __declspec() decoration level:
  8. __declspec(uuid()), __declspec(selectany), __declspec(novtable)
  9. DECLSPEC_UUID(), MIDL_INTERFACE()
  10. */
  11. //@@MIDL_FILE_HEADING( )
  12. #pragma warning( disable: 4049 ) /* more than 64k source lines */
  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 __vscoordint_h__
  27. #define __vscoordint_h__
  28. #if defined(_MSC_VER) && (_MSC_VER >= 1020)
  29. #pragma once
  30. #endif
  31. /* Forward Declarations */
  32. #ifndef __IVssCoordinator_FWD_DEFINED__
  33. #define __IVssCoordinator_FWD_DEFINED__
  34. typedef interface IVssCoordinator IVssCoordinator;
  35. #endif /* __IVssCoordinator_FWD_DEFINED__ */
  36. #ifndef __IVssShim_FWD_DEFINED__
  37. #define __IVssShim_FWD_DEFINED__
  38. typedef interface IVssShim IVssShim;
  39. #endif /* __IVssShim_FWD_DEFINED__ */
  40. #ifndef __IVssAdmin_FWD_DEFINED__
  41. #define __IVssAdmin_FWD_DEFINED__
  42. typedef interface IVssAdmin IVssAdmin;
  43. #endif /* __IVssAdmin_FWD_DEFINED__ */
  44. #ifndef __VSSCoordinator_FWD_DEFINED__
  45. #define __VSSCoordinator_FWD_DEFINED__
  46. #ifdef __cplusplus
  47. typedef class VSSCoordinator VSSCoordinator;
  48. #else
  49. typedef struct VSSCoordinator VSSCoordinator;
  50. #endif /* __cplusplus */
  51. #endif /* __VSSCoordinator_FWD_DEFINED__ */
  52. /* header files for imported files */
  53. #include "oaidl.h"
  54. #include "ocidl.h"
  55. #include "vss.h"
  56. #ifdef __cplusplus
  57. extern "C"{
  58. #endif
  59. void * __RPC_USER MIDL_user_allocate(size_t);
  60. void __RPC_USER MIDL_user_free( void * );
  61. #ifndef __IVssCoordinator_INTERFACE_DEFINED__
  62. #define __IVssCoordinator_INTERFACE_DEFINED__
  63. /* interface IVssCoordinator */
  64. /* [unique][helpstring][uuid][object] */
  65. EXTERN_C const IID IID_IVssCoordinator;
  66. #if defined(__cplusplus) && !defined(CINTERFACE)
  67. MIDL_INTERFACE("da9f41d4-1a5d-41d0-a614-6dfd78df5d05")
  68. IVssCoordinator : public IUnknown
  69. {
  70. public:
  71. virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE SetContext(
  72. /* [in] */ LONG lContext) = 0;
  73. virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE StartSnapshotSet(
  74. /* [out] */ VSS_ID *pSnapshotSetId) = 0;
  75. virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE AddToSnapshotSet(
  76. /* [in] */ VSS_PWSZ pwszVolumeName,
  77. /* [in] */ VSS_ID ProviderId,
  78. /* [out] */ VSS_ID *pSnapshotId) = 0;
  79. virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE DoSnapshotSet(
  80. /* [in] */ IDispatch *pWriterCallback,
  81. /* [out] */ IVssAsync **ppAsync) = 0;
  82. virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE GetSnapshotProperties(
  83. /* [in] */ VSS_ID SnapshotId,
  84. /* [out] */ VSS_SNAPSHOT_PROP *pProp) = 0;
  85. virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE ExposeSnapshot(
  86. /* [in] */ VSS_ID SnapshotId,
  87. /* [in] */ VSS_PWSZ wszPathFromRoot,
  88. /* [in] */ LONG lAttributes,
  89. /* [in] */ VSS_PWSZ wszExpose,
  90. /* [out] */ VSS_PWSZ *pwszExposed) = 0;
  91. virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE ImportSnapshots(
  92. /* [in] */ BSTR bstrXMLSnapshotSet,
  93. /* [out] */ IVssAsync **ppAsync) = 0;
  94. virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE Query(
  95. /* [in] */ VSS_ID QueriedObjectId,
  96. /* [in] */ VSS_OBJECT_TYPE eQueriedObjectType,
  97. /* [in] */ VSS_OBJECT_TYPE eReturnedObjectsType,
  98. /* [out] */ IVssEnumObject **ppEnum) = 0;
  99. virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE DeleteSnapshots(
  100. /* [in] */ VSS_ID SourceObjectId,
  101. /* [in] */ VSS_OBJECT_TYPE eSourceObjectType,
  102. /* [in] */ BOOL bForceDelete,
  103. /* [out] */ LONG *plDeletedSnapshots,
  104. /* [out] */ VSS_ID *pNondeletedSnapshotID) = 0;
  105. virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE BreakSnapshotSet(
  106. /* [in] */ VSS_ID SnapshotSetId) = 0;
  107. virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE RevertToSnapshot(
  108. /* [in] */ VSS_ID SnapshotId,
  109. /* [in] */ BOOL bForceDismount) = 0;
  110. virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE QueryRevertStatus(
  111. /* [in] */ VSS_PWSZ pwszVolume,
  112. /* [out] */ IVssAsync **ppAsync) = 0;
  113. virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE IsVolumeSupported(
  114. /* [in] */ VSS_ID ProviderId,
  115. /* [in] */ VSS_PWSZ pwszVolumeName,
  116. /* [out] */ BOOL *pbSupportedByThisProvider) = 0;
  117. virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE IsVolumeSnapshotted(
  118. /* [in] */ VSS_ID ProviderId,
  119. /* [in] */ VSS_PWSZ pwszVolumeName,
  120. /* [out] */ BOOL *pbSnapshotsPresent,
  121. /* [out] */ LONG *plSnapshotCompatibility) = 0;
  122. virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE SetWriterInstances(
  123. /* [in] */ LONG lWriterInstanceIdCount,
  124. /* [size_is][unique][in] */ VSS_ID *rgWriterInstanceId) = 0;
  125. };
  126. #else /* C style interface */
  127. typedef struct IVssCoordinatorVtbl
  128. {
  129. BEGIN_INTERFACE
  130. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  131. IVssCoordinator * This,
  132. /* [in] */ REFIID riid,
  133. /* [iid_is][out] */ void **ppvObject);
  134. ULONG ( STDMETHODCALLTYPE *AddRef )(
  135. IVssCoordinator * This);
  136. ULONG ( STDMETHODCALLTYPE *Release )(
  137. IVssCoordinator * This);
  138. /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *SetContext )(
  139. IVssCoordinator * This,
  140. /* [in] */ LONG lContext);
  141. /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *StartSnapshotSet )(
  142. IVssCoordinator * This,
  143. /* [out] */ VSS_ID *pSnapshotSetId);
  144. /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *AddToSnapshotSet )(
  145. IVssCoordinator * This,
  146. /* [in] */ VSS_PWSZ pwszVolumeName,
  147. /* [in] */ VSS_ID ProviderId,
  148. /* [out] */ VSS_ID *pSnapshotId);
  149. /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *DoSnapshotSet )(
  150. IVssCoordinator * This,
  151. /* [in] */ IDispatch *pWriterCallback,
  152. /* [out] */ IVssAsync **ppAsync);
  153. /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *GetSnapshotProperties )(
  154. IVssCoordinator * This,
  155. /* [in] */ VSS_ID SnapshotId,
  156. /* [out] */ VSS_SNAPSHOT_PROP *pProp);
  157. /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *ExposeSnapshot )(
  158. IVssCoordinator * This,
  159. /* [in] */ VSS_ID SnapshotId,
  160. /* [in] */ VSS_PWSZ wszPathFromRoot,
  161. /* [in] */ LONG lAttributes,
  162. /* [in] */ VSS_PWSZ wszExpose,
  163. /* [out] */ VSS_PWSZ *pwszExposed);
  164. /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *ImportSnapshots )(
  165. IVssCoordinator * This,
  166. /* [in] */ BSTR bstrXMLSnapshotSet,
  167. /* [out] */ IVssAsync **ppAsync);
  168. /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *Query )(
  169. IVssCoordinator * This,
  170. /* [in] */ VSS_ID QueriedObjectId,
  171. /* [in] */ VSS_OBJECT_TYPE eQueriedObjectType,
  172. /* [in] */ VSS_OBJECT_TYPE eReturnedObjectsType,
  173. /* [out] */ IVssEnumObject **ppEnum);
  174. /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *DeleteSnapshots )(
  175. IVssCoordinator * This,
  176. /* [in] */ VSS_ID SourceObjectId,
  177. /* [in] */ VSS_OBJECT_TYPE eSourceObjectType,
  178. /* [in] */ BOOL bForceDelete,
  179. /* [out] */ LONG *plDeletedSnapshots,
  180. /* [out] */ VSS_ID *pNondeletedSnapshotID);
  181. /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *BreakSnapshotSet )(
  182. IVssCoordinator * This,
  183. /* [in] */ VSS_ID SnapshotSetId);
  184. /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *RevertToSnapshot )(
  185. IVssCoordinator * This,
  186. /* [in] */ VSS_ID SnapshotId,
  187. /* [in] */ BOOL bForceDismount);
  188. /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *QueryRevertStatus )(
  189. IVssCoordinator * This,
  190. /* [in] */ VSS_PWSZ pwszVolume,
  191. /* [out] */ IVssAsync **ppAsync);
  192. /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *IsVolumeSupported )(
  193. IVssCoordinator * This,
  194. /* [in] */ VSS_ID ProviderId,
  195. /* [in] */ VSS_PWSZ pwszVolumeName,
  196. /* [out] */ BOOL *pbSupportedByThisProvider);
  197. /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *IsVolumeSnapshotted )(
  198. IVssCoordinator * This,
  199. /* [in] */ VSS_ID ProviderId,
  200. /* [in] */ VSS_PWSZ pwszVolumeName,
  201. /* [out] */ BOOL *pbSnapshotsPresent,
  202. /* [out] */ LONG *plSnapshotCompatibility);
  203. /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *SetWriterInstances )(
  204. IVssCoordinator * This,
  205. /* [in] */ LONG lWriterInstanceIdCount,
  206. /* [size_is][unique][in] */ VSS_ID *rgWriterInstanceId);
  207. END_INTERFACE
  208. } IVssCoordinatorVtbl;
  209. interface IVssCoordinator
  210. {
  211. CONST_VTBL struct IVssCoordinatorVtbl *lpVtbl;
  212. };
  213. #ifdef COBJMACROS
  214. #define IVssCoordinator_QueryInterface(This,riid,ppvObject) \
  215. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  216. #define IVssCoordinator_AddRef(This) \
  217. (This)->lpVtbl -> AddRef(This)
  218. #define IVssCoordinator_Release(This) \
  219. (This)->lpVtbl -> Release(This)
  220. #define IVssCoordinator_SetContext(This,lContext) \
  221. (This)->lpVtbl -> SetContext(This,lContext)
  222. #define IVssCoordinator_StartSnapshotSet(This,pSnapshotSetId) \
  223. (This)->lpVtbl -> StartSnapshotSet(This,pSnapshotSetId)
  224. #define IVssCoordinator_AddToSnapshotSet(This,pwszVolumeName,ProviderId,pSnapshotId) \
  225. (This)->lpVtbl -> AddToSnapshotSet(This,pwszVolumeName,ProviderId,pSnapshotId)
  226. #define IVssCoordinator_DoSnapshotSet(This,pWriterCallback,ppAsync) \
  227. (This)->lpVtbl -> DoSnapshotSet(This,pWriterCallback,ppAsync)
  228. #define IVssCoordinator_GetSnapshotProperties(This,SnapshotId,pProp) \
  229. (This)->lpVtbl -> GetSnapshotProperties(This,SnapshotId,pProp)
  230. #define IVssCoordinator_ExposeSnapshot(This,SnapshotId,wszPathFromRoot,lAttributes,wszExpose,pwszExposed) \
  231. (This)->lpVtbl -> ExposeSnapshot(This,SnapshotId,wszPathFromRoot,lAttributes,wszExpose,pwszExposed)
  232. #define IVssCoordinator_ImportSnapshots(This,bstrXMLSnapshotSet,ppAsync) \
  233. (This)->lpVtbl -> ImportSnapshots(This,bstrXMLSnapshotSet,ppAsync)
  234. #define IVssCoordinator_Query(This,QueriedObjectId,eQueriedObjectType,eReturnedObjectsType,ppEnum) \
  235. (This)->lpVtbl -> Query(This,QueriedObjectId,eQueriedObjectType,eReturnedObjectsType,ppEnum)
  236. #define IVssCoordinator_DeleteSnapshots(This,SourceObjectId,eSourceObjectType,bForceDelete,plDeletedSnapshots,pNondeletedSnapshotID) \
  237. (This)->lpVtbl -> DeleteSnapshots(This,SourceObjectId,eSourceObjectType,bForceDelete,plDeletedSnapshots,pNondeletedSnapshotID)
  238. #define IVssCoordinator_BreakSnapshotSet(This,SnapshotSetId) \
  239. (This)->lpVtbl -> BreakSnapshotSet(This,SnapshotSetId)
  240. #define IVssCoordinator_RevertToSnapshot(This,SnapshotId,bForceDismount) \
  241. (This)->lpVtbl -> RevertToSnapshot(This,SnapshotId,bForceDismount)
  242. #define IVssCoordinator_QueryRevertStatus(This,pwszVolume,ppAsync) \
  243. (This)->lpVtbl -> QueryRevertStatus(This,pwszVolume,ppAsync)
  244. #define IVssCoordinator_IsVolumeSupported(This,ProviderId,pwszVolumeName,pbSupportedByThisProvider) \
  245. (This)->lpVtbl -> IsVolumeSupported(This,ProviderId,pwszVolumeName,pbSupportedByThisProvider)
  246. #define IVssCoordinator_IsVolumeSnapshotted(This,ProviderId,pwszVolumeName,pbSnapshotsPresent,plSnapshotCompatibility) \
  247. (This)->lpVtbl -> IsVolumeSnapshotted(This,ProviderId,pwszVolumeName,pbSnapshotsPresent,plSnapshotCompatibility)
  248. #define IVssCoordinator_SetWriterInstances(This,lWriterInstanceIdCount,rgWriterInstanceId) \
  249. (This)->lpVtbl -> SetWriterInstances(This,lWriterInstanceIdCount,rgWriterInstanceId)
  250. #endif /* COBJMACROS */
  251. #endif /* C style interface */
  252. /* [helpstring] */ HRESULT STDMETHODCALLTYPE IVssCoordinator_SetContext_Proxy(
  253. IVssCoordinator * This,
  254. /* [in] */ LONG lContext);
  255. void __RPC_STUB IVssCoordinator_SetContext_Stub(
  256. IRpcStubBuffer *This,
  257. IRpcChannelBuffer *_pRpcChannelBuffer,
  258. PRPC_MESSAGE _pRpcMessage,
  259. DWORD *_pdwStubPhase);
  260. /* [helpstring] */ HRESULT STDMETHODCALLTYPE IVssCoordinator_StartSnapshotSet_Proxy(
  261. IVssCoordinator * This,
  262. /* [out] */ VSS_ID *pSnapshotSetId);
  263. void __RPC_STUB IVssCoordinator_StartSnapshotSet_Stub(
  264. IRpcStubBuffer *This,
  265. IRpcChannelBuffer *_pRpcChannelBuffer,
  266. PRPC_MESSAGE _pRpcMessage,
  267. DWORD *_pdwStubPhase);
  268. /* [helpstring] */ HRESULT STDMETHODCALLTYPE IVssCoordinator_AddToSnapshotSet_Proxy(
  269. IVssCoordinator * This,
  270. /* [in] */ VSS_PWSZ pwszVolumeName,
  271. /* [in] */ VSS_ID ProviderId,
  272. /* [out] */ VSS_ID *pSnapshotId);
  273. void __RPC_STUB IVssCoordinator_AddToSnapshotSet_Stub(
  274. IRpcStubBuffer *This,
  275. IRpcChannelBuffer *_pRpcChannelBuffer,
  276. PRPC_MESSAGE _pRpcMessage,
  277. DWORD *_pdwStubPhase);
  278. /* [helpstring] */ HRESULT STDMETHODCALLTYPE IVssCoordinator_DoSnapshotSet_Proxy(
  279. IVssCoordinator * This,
  280. /* [in] */ IDispatch *pWriterCallback,
  281. /* [out] */ IVssAsync **ppAsync);
  282. void __RPC_STUB IVssCoordinator_DoSnapshotSet_Stub(
  283. IRpcStubBuffer *This,
  284. IRpcChannelBuffer *_pRpcChannelBuffer,
  285. PRPC_MESSAGE _pRpcMessage,
  286. DWORD *_pdwStubPhase);
  287. /* [helpstring] */ HRESULT STDMETHODCALLTYPE IVssCoordinator_GetSnapshotProperties_Proxy(
  288. IVssCoordinator * This,
  289. /* [in] */ VSS_ID SnapshotId,
  290. /* [out] */ VSS_SNAPSHOT_PROP *pProp);
  291. void __RPC_STUB IVssCoordinator_GetSnapshotProperties_Stub(
  292. IRpcStubBuffer *This,
  293. IRpcChannelBuffer *_pRpcChannelBuffer,
  294. PRPC_MESSAGE _pRpcMessage,
  295. DWORD *_pdwStubPhase);
  296. /* [helpstring] */ HRESULT STDMETHODCALLTYPE IVssCoordinator_ExposeSnapshot_Proxy(
  297. IVssCoordinator * This,
  298. /* [in] */ VSS_ID SnapshotId,
  299. /* [in] */ VSS_PWSZ wszPathFromRoot,
  300. /* [in] */ LONG lAttributes,
  301. /* [in] */ VSS_PWSZ wszExpose,
  302. /* [out] */ VSS_PWSZ *pwszExposed);
  303. void __RPC_STUB IVssCoordinator_ExposeSnapshot_Stub(
  304. IRpcStubBuffer *This,
  305. IRpcChannelBuffer *_pRpcChannelBuffer,
  306. PRPC_MESSAGE _pRpcMessage,
  307. DWORD *_pdwStubPhase);
  308. /* [helpstring] */ HRESULT STDMETHODCALLTYPE IVssCoordinator_ImportSnapshots_Proxy(
  309. IVssCoordinator * This,
  310. /* [in] */ BSTR bstrXMLSnapshotSet,
  311. /* [out] */ IVssAsync **ppAsync);
  312. void __RPC_STUB IVssCoordinator_ImportSnapshots_Stub(
  313. IRpcStubBuffer *This,
  314. IRpcChannelBuffer *_pRpcChannelBuffer,
  315. PRPC_MESSAGE _pRpcMessage,
  316. DWORD *_pdwStubPhase);
  317. /* [helpstring] */ HRESULT STDMETHODCALLTYPE IVssCoordinator_Query_Proxy(
  318. IVssCoordinator * This,
  319. /* [in] */ VSS_ID QueriedObjectId,
  320. /* [in] */ VSS_OBJECT_TYPE eQueriedObjectType,
  321. /* [in] */ VSS_OBJECT_TYPE eReturnedObjectsType,
  322. /* [out] */ IVssEnumObject **ppEnum);
  323. void __RPC_STUB IVssCoordinator_Query_Stub(
  324. IRpcStubBuffer *This,
  325. IRpcChannelBuffer *_pRpcChannelBuffer,
  326. PRPC_MESSAGE _pRpcMessage,
  327. DWORD *_pdwStubPhase);
  328. /* [helpstring] */ HRESULT STDMETHODCALLTYPE IVssCoordinator_DeleteSnapshots_Proxy(
  329. IVssCoordinator * This,
  330. /* [in] */ VSS_ID SourceObjectId,
  331. /* [in] */ VSS_OBJECT_TYPE eSourceObjectType,
  332. /* [in] */ BOOL bForceDelete,
  333. /* [out] */ LONG *plDeletedSnapshots,
  334. /* [out] */ VSS_ID *pNondeletedSnapshotID);
  335. void __RPC_STUB IVssCoordinator_DeleteSnapshots_Stub(
  336. IRpcStubBuffer *This,
  337. IRpcChannelBuffer *_pRpcChannelBuffer,
  338. PRPC_MESSAGE _pRpcMessage,
  339. DWORD *_pdwStubPhase);
  340. /* [helpstring] */ HRESULT STDMETHODCALLTYPE IVssCoordinator_BreakSnapshotSet_Proxy(
  341. IVssCoordinator * This,
  342. /* [in] */ VSS_ID SnapshotSetId);
  343. void __RPC_STUB IVssCoordinator_BreakSnapshotSet_Stub(
  344. IRpcStubBuffer *This,
  345. IRpcChannelBuffer *_pRpcChannelBuffer,
  346. PRPC_MESSAGE _pRpcMessage,
  347. DWORD *_pdwStubPhase);
  348. /* [helpstring] */ HRESULT STDMETHODCALLTYPE IVssCoordinator_RevertToSnapshot_Proxy(
  349. IVssCoordinator * This,
  350. /* [in] */ VSS_ID SnapshotId,
  351. /* [in] */ BOOL bForceDismount);
  352. void __RPC_STUB IVssCoordinator_RevertToSnapshot_Stub(
  353. IRpcStubBuffer *This,
  354. IRpcChannelBuffer *_pRpcChannelBuffer,
  355. PRPC_MESSAGE _pRpcMessage,
  356. DWORD *_pdwStubPhase);
  357. /* [helpstring] */ HRESULT STDMETHODCALLTYPE IVssCoordinator_QueryRevertStatus_Proxy(
  358. IVssCoordinator * This,
  359. /* [in] */ VSS_PWSZ pwszVolume,
  360. /* [out] */ IVssAsync **ppAsync);
  361. void __RPC_STUB IVssCoordinator_QueryRevertStatus_Stub(
  362. IRpcStubBuffer *This,
  363. IRpcChannelBuffer *_pRpcChannelBuffer,
  364. PRPC_MESSAGE _pRpcMessage,
  365. DWORD *_pdwStubPhase);
  366. /* [helpstring] */ HRESULT STDMETHODCALLTYPE IVssCoordinator_IsVolumeSupported_Proxy(
  367. IVssCoordinator * This,
  368. /* [in] */ VSS_ID ProviderId,
  369. /* [in] */ VSS_PWSZ pwszVolumeName,
  370. /* [out] */ BOOL *pbSupportedByThisProvider);
  371. void __RPC_STUB IVssCoordinator_IsVolumeSupported_Stub(
  372. IRpcStubBuffer *This,
  373. IRpcChannelBuffer *_pRpcChannelBuffer,
  374. PRPC_MESSAGE _pRpcMessage,
  375. DWORD *_pdwStubPhase);
  376. /* [helpstring] */ HRESULT STDMETHODCALLTYPE IVssCoordinator_IsVolumeSnapshotted_Proxy(
  377. IVssCoordinator * This,
  378. /* [in] */ VSS_ID ProviderId,
  379. /* [in] */ VSS_PWSZ pwszVolumeName,
  380. /* [out] */ BOOL *pbSnapshotsPresent,
  381. /* [out] */ LONG *plSnapshotCompatibility);
  382. void __RPC_STUB IVssCoordinator_IsVolumeSnapshotted_Stub(
  383. IRpcStubBuffer *This,
  384. IRpcChannelBuffer *_pRpcChannelBuffer,
  385. PRPC_MESSAGE _pRpcMessage,
  386. DWORD *_pdwStubPhase);
  387. /* [helpstring] */ HRESULT STDMETHODCALLTYPE IVssCoordinator_SetWriterInstances_Proxy(
  388. IVssCoordinator * This,
  389. /* [in] */ LONG lWriterInstanceIdCount,
  390. /* [size_is][unique][in] */ VSS_ID *rgWriterInstanceId);
  391. void __RPC_STUB IVssCoordinator_SetWriterInstances_Stub(
  392. IRpcStubBuffer *This,
  393. IRpcChannelBuffer *_pRpcChannelBuffer,
  394. PRPC_MESSAGE _pRpcMessage,
  395. DWORD *_pdwStubPhase);
  396. #endif /* __IVssCoordinator_INTERFACE_DEFINED__ */
  397. #ifndef __IVssShim_INTERFACE_DEFINED__
  398. #define __IVssShim_INTERFACE_DEFINED__
  399. /* interface IVssShim */
  400. /* [unique][helpstring][uuid][object] */
  401. EXTERN_C const IID IID_IVssShim;
  402. #if defined(__cplusplus) && !defined(CINTERFACE)
  403. MIDL_INTERFACE("D6222095-05C3-42f3-81D9-A4A0CEC05C26")
  404. IVssShim : public IUnknown
  405. {
  406. public:
  407. virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE SimulateSnapshotFreeze(
  408. /* [in] */ VSS_ID guidSnapshotSetId,
  409. /* [in] */ ULONG ulOptionFlags,
  410. /* [in] */ ULONG ulVolumeCount,
  411. /* [size_is][size_is][unique][in] */ VSS_PWSZ *ppwszVolumeNamesArray,
  412. /* [out] */ IVssAsync **ppAsync) = 0;
  413. virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE SimulateSnapshotThaw(
  414. /* [in] */ VSS_ID guidSnapshotSetId) = 0;
  415. virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE WaitForSubscribingCompletion( void) = 0;
  416. };
  417. #else /* C style interface */
  418. typedef struct IVssShimVtbl
  419. {
  420. BEGIN_INTERFACE
  421. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  422. IVssShim * This,
  423. /* [in] */ REFIID riid,
  424. /* [iid_is][out] */ void **ppvObject);
  425. ULONG ( STDMETHODCALLTYPE *AddRef )(
  426. IVssShim * This);
  427. ULONG ( STDMETHODCALLTYPE *Release )(
  428. IVssShim * This);
  429. /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *SimulateSnapshotFreeze )(
  430. IVssShim * This,
  431. /* [in] */ VSS_ID guidSnapshotSetId,
  432. /* [in] */ ULONG ulOptionFlags,
  433. /* [in] */ ULONG ulVolumeCount,
  434. /* [size_is][size_is][unique][in] */ VSS_PWSZ *ppwszVolumeNamesArray,
  435. /* [out] */ IVssAsync **ppAsync);
  436. /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *SimulateSnapshotThaw )(
  437. IVssShim * This,
  438. /* [in] */ VSS_ID guidSnapshotSetId);
  439. /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *WaitForSubscribingCompletion )(
  440. IVssShim * This);
  441. END_INTERFACE
  442. } IVssShimVtbl;
  443. interface IVssShim
  444. {
  445. CONST_VTBL struct IVssShimVtbl *lpVtbl;
  446. };
  447. #ifdef COBJMACROS
  448. #define IVssShim_QueryInterface(This,riid,ppvObject) \
  449. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  450. #define IVssShim_AddRef(This) \
  451. (This)->lpVtbl -> AddRef(This)
  452. #define IVssShim_Release(This) \
  453. (This)->lpVtbl -> Release(This)
  454. #define IVssShim_SimulateSnapshotFreeze(This,guidSnapshotSetId,ulOptionFlags,ulVolumeCount,ppwszVolumeNamesArray,ppAsync) \
  455. (This)->lpVtbl -> SimulateSnapshotFreeze(This,guidSnapshotSetId,ulOptionFlags,ulVolumeCount,ppwszVolumeNamesArray,ppAsync)
  456. #define IVssShim_SimulateSnapshotThaw(This,guidSnapshotSetId) \
  457. (This)->lpVtbl -> SimulateSnapshotThaw(This,guidSnapshotSetId)
  458. #define IVssShim_WaitForSubscribingCompletion(This) \
  459. (This)->lpVtbl -> WaitForSubscribingCompletion(This)
  460. #endif /* COBJMACROS */
  461. #endif /* C style interface */
  462. /* [helpstring] */ HRESULT STDMETHODCALLTYPE IVssShim_SimulateSnapshotFreeze_Proxy(
  463. IVssShim * This,
  464. /* [in] */ VSS_ID guidSnapshotSetId,
  465. /* [in] */ ULONG ulOptionFlags,
  466. /* [in] */ ULONG ulVolumeCount,
  467. /* [size_is][size_is][unique][in] */ VSS_PWSZ *ppwszVolumeNamesArray,
  468. /* [out] */ IVssAsync **ppAsync);
  469. void __RPC_STUB IVssShim_SimulateSnapshotFreeze_Stub(
  470. IRpcStubBuffer *This,
  471. IRpcChannelBuffer *_pRpcChannelBuffer,
  472. PRPC_MESSAGE _pRpcMessage,
  473. DWORD *_pdwStubPhase);
  474. /* [helpstring] */ HRESULT STDMETHODCALLTYPE IVssShim_SimulateSnapshotThaw_Proxy(
  475. IVssShim * This,
  476. /* [in] */ VSS_ID guidSnapshotSetId);
  477. void __RPC_STUB IVssShim_SimulateSnapshotThaw_Stub(
  478. IRpcStubBuffer *This,
  479. IRpcChannelBuffer *_pRpcChannelBuffer,
  480. PRPC_MESSAGE _pRpcMessage,
  481. DWORD *_pdwStubPhase);
  482. /* [helpstring] */ HRESULT STDMETHODCALLTYPE IVssShim_WaitForSubscribingCompletion_Proxy(
  483. IVssShim * This);
  484. void __RPC_STUB IVssShim_WaitForSubscribingCompletion_Stub(
  485. IRpcStubBuffer *This,
  486. IRpcChannelBuffer *_pRpcChannelBuffer,
  487. PRPC_MESSAGE _pRpcMessage,
  488. DWORD *_pdwStubPhase);
  489. #endif /* __IVssShim_INTERFACE_DEFINED__ */
  490. #ifndef __IVssAdmin_INTERFACE_DEFINED__
  491. #define __IVssAdmin_INTERFACE_DEFINED__
  492. /* interface IVssAdmin */
  493. /* [unique][helpstring][uuid][object] */
  494. EXTERN_C const IID IID_IVssAdmin;
  495. #if defined(__cplusplus) && !defined(CINTERFACE)
  496. MIDL_INTERFACE("77ED5996-2F63-11d3-8A39-00C04F72D8E3")
  497. IVssAdmin : public IUnknown
  498. {
  499. public:
  500. virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE RegisterProvider(
  501. /* [in] */ VSS_ID pProviderId,
  502. /* [in] */ CLSID ClassId,
  503. /* [in] */ VSS_PWSZ pwszProviderName,
  504. /* [in] */ VSS_PROVIDER_TYPE eProviderType,
  505. /* [in] */ VSS_PWSZ pwszProviderVersion,
  506. /* [in] */ VSS_ID ProviderVersionId) = 0;
  507. virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE UnregisterProvider(
  508. /* [in] */ VSS_ID ProviderId) = 0;
  509. virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE QueryProviders(
  510. /* [out] */ IVssEnumObject **ppEnum) = 0;
  511. virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE AbortAllSnapshotsInProgress( void) = 0;
  512. };
  513. #else /* C style interface */
  514. typedef struct IVssAdminVtbl
  515. {
  516. BEGIN_INTERFACE
  517. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  518. IVssAdmin * This,
  519. /* [in] */ REFIID riid,
  520. /* [iid_is][out] */ void **ppvObject);
  521. ULONG ( STDMETHODCALLTYPE *AddRef )(
  522. IVssAdmin * This);
  523. ULONG ( STDMETHODCALLTYPE *Release )(
  524. IVssAdmin * This);
  525. /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *RegisterProvider )(
  526. IVssAdmin * This,
  527. /* [in] */ VSS_ID pProviderId,
  528. /* [in] */ CLSID ClassId,
  529. /* [in] */ VSS_PWSZ pwszProviderName,
  530. /* [in] */ VSS_PROVIDER_TYPE eProviderType,
  531. /* [in] */ VSS_PWSZ pwszProviderVersion,
  532. /* [in] */ VSS_ID ProviderVersionId);
  533. /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *UnregisterProvider )(
  534. IVssAdmin * This,
  535. /* [in] */ VSS_ID ProviderId);
  536. /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *QueryProviders )(
  537. IVssAdmin * This,
  538. /* [out] */ IVssEnumObject **ppEnum);
  539. /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *AbortAllSnapshotsInProgress )(
  540. IVssAdmin * This);
  541. END_INTERFACE
  542. } IVssAdminVtbl;
  543. interface IVssAdmin
  544. {
  545. CONST_VTBL struct IVssAdminVtbl *lpVtbl;
  546. };
  547. #ifdef COBJMACROS
  548. #define IVssAdmin_QueryInterface(This,riid,ppvObject) \
  549. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  550. #define IVssAdmin_AddRef(This) \
  551. (This)->lpVtbl -> AddRef(This)
  552. #define IVssAdmin_Release(This) \
  553. (This)->lpVtbl -> Release(This)
  554. #define IVssAdmin_RegisterProvider(This,pProviderId,ClassId,pwszProviderName,eProviderType,pwszProviderVersion,ProviderVersionId) \
  555. (This)->lpVtbl -> RegisterProvider(This,pProviderId,ClassId,pwszProviderName,eProviderType,pwszProviderVersion,ProviderVersionId)
  556. #define IVssAdmin_UnregisterProvider(This,ProviderId) \
  557. (This)->lpVtbl -> UnregisterProvider(This,ProviderId)
  558. #define IVssAdmin_QueryProviders(This,ppEnum) \
  559. (This)->lpVtbl -> QueryProviders(This,ppEnum)
  560. #define IVssAdmin_AbortAllSnapshotsInProgress(This) \
  561. (This)->lpVtbl -> AbortAllSnapshotsInProgress(This)
  562. #endif /* COBJMACROS */
  563. #endif /* C style interface */
  564. /* [helpstring] */ HRESULT STDMETHODCALLTYPE IVssAdmin_RegisterProvider_Proxy(
  565. IVssAdmin * This,
  566. /* [in] */ VSS_ID pProviderId,
  567. /* [in] */ CLSID ClassId,
  568. /* [in] */ VSS_PWSZ pwszProviderName,
  569. /* [in] */ VSS_PROVIDER_TYPE eProviderType,
  570. /* [in] */ VSS_PWSZ pwszProviderVersion,
  571. /* [in] */ VSS_ID ProviderVersionId);
  572. void __RPC_STUB IVssAdmin_RegisterProvider_Stub(
  573. IRpcStubBuffer *This,
  574. IRpcChannelBuffer *_pRpcChannelBuffer,
  575. PRPC_MESSAGE _pRpcMessage,
  576. DWORD *_pdwStubPhase);
  577. /* [helpstring] */ HRESULT STDMETHODCALLTYPE IVssAdmin_UnregisterProvider_Proxy(
  578. IVssAdmin * This,
  579. /* [in] */ VSS_ID ProviderId);
  580. void __RPC_STUB IVssAdmin_UnregisterProvider_Stub(
  581. IRpcStubBuffer *This,
  582. IRpcChannelBuffer *_pRpcChannelBuffer,
  583. PRPC_MESSAGE _pRpcMessage,
  584. DWORD *_pdwStubPhase);
  585. /* [helpstring] */ HRESULT STDMETHODCALLTYPE IVssAdmin_QueryProviders_Proxy(
  586. IVssAdmin * This,
  587. /* [out] */ IVssEnumObject **ppEnum);
  588. void __RPC_STUB IVssAdmin_QueryProviders_Stub(
  589. IRpcStubBuffer *This,
  590. IRpcChannelBuffer *_pRpcChannelBuffer,
  591. PRPC_MESSAGE _pRpcMessage,
  592. DWORD *_pdwStubPhase);
  593. /* [helpstring] */ HRESULT STDMETHODCALLTYPE IVssAdmin_AbortAllSnapshotsInProgress_Proxy(
  594. IVssAdmin * This);
  595. void __RPC_STUB IVssAdmin_AbortAllSnapshotsInProgress_Stub(
  596. IRpcStubBuffer *This,
  597. IRpcChannelBuffer *_pRpcChannelBuffer,
  598. PRPC_MESSAGE _pRpcMessage,
  599. DWORD *_pdwStubPhase);
  600. #endif /* __IVssAdmin_INTERFACE_DEFINED__ */
  601. #ifndef __VSS_LIBRARY_DEFINED__
  602. #define __VSS_LIBRARY_DEFINED__
  603. /* library VSS */
  604. /* [helpstring][version][uuid] */
  605. EXTERN_C const IID LIBID_VSS;
  606. EXTERN_C const CLSID CLSID_VSSCoordinator;
  607. #ifdef __cplusplus
  608. class DECLSPEC_UUID("E579AB5F-1CC4-44b4-BED9-DE0991FF0623")
  609. VSSCoordinator;
  610. #endif
  611. #endif /* __VSS_LIBRARY_DEFINED__ */
  612. /* Additional Prototypes for ALL interfaces */
  613. unsigned long __RPC_USER BSTR_UserSize( unsigned long *, unsigned long , BSTR * );
  614. unsigned char * __RPC_USER BSTR_UserMarshal( unsigned long *, unsigned char *, BSTR * );
  615. unsigned char * __RPC_USER BSTR_UserUnmarshal(unsigned long *, unsigned char *, BSTR * );
  616. void __RPC_USER BSTR_UserFree( unsigned long *, BSTR * );
  617. /* end of Additional Prototypes */
  618. #ifdef __cplusplus
  619. }
  620. #endif
  621. #endif