vsadmin.h 12 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350
  1. /*** Autogenerated by WIDL 7.7 from include/vsadmin.idl - Do not edit ***/
  2. #ifdef _WIN32
  3. #ifndef __REQUIRED_RPCNDR_H_VERSION__
  4. #define __REQUIRED_RPCNDR_H_VERSION__ 475
  5. #endif
  6. #include <rpc.h>
  7. #include <rpcndr.h>
  8. #endif
  9. #ifndef COM_NO_WINDOWS_H
  10. #include <windows.h>
  11. #include <ole2.h>
  12. #endif
  13. #ifndef __vsadmin_h__
  14. #define __vsadmin_h__
  15. /* Forward declarations */
  16. #ifndef __IVssAdmin_FWD_DEFINED__
  17. #define __IVssAdmin_FWD_DEFINED__
  18. typedef interface IVssAdmin IVssAdmin;
  19. #ifdef __cplusplus
  20. interface IVssAdmin;
  21. #endif /* __cplusplus */
  22. #endif
  23. #ifndef __IVssAdminEx_FWD_DEFINED__
  24. #define __IVssAdminEx_FWD_DEFINED__
  25. typedef interface IVssAdminEx IVssAdminEx;
  26. #ifdef __cplusplus
  27. interface IVssAdminEx;
  28. #endif /* __cplusplus */
  29. #endif
  30. #ifndef __VSSCoordinator_FWD_DEFINED__
  31. #define __VSSCoordinator_FWD_DEFINED__
  32. #ifdef __cplusplus
  33. typedef class VSSCoordinator VSSCoordinator;
  34. #else
  35. typedef struct VSSCoordinator VSSCoordinator;
  36. #endif /* defined __cplusplus */
  37. #endif /* defined __VSSCoordinator_FWD_DEFINED__ */
  38. /* Headers for imported files */
  39. #include <oaidl.h>
  40. #include <ocidl.h>
  41. #include <vss.h>
  42. #ifdef __cplusplus
  43. extern "C" {
  44. #endif
  45. #include <winapifamily.h>
  46. #if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP)
  47. /*****************************************************************************
  48. * IVssAdmin interface
  49. */
  50. #ifndef __IVssAdmin_INTERFACE_DEFINED__
  51. #define __IVssAdmin_INTERFACE_DEFINED__
  52. DEFINE_GUID(IID_IVssAdmin, 0x77ed5996, 0x2f63, 0x11d3, 0x8a,0x39, 0x00,0xc0,0x4f,0x72,0xd8,0xe3);
  53. #if defined(__cplusplus) && !defined(CINTERFACE)
  54. MIDL_INTERFACE("77ed5996-2f63-11d3-8a39-00c04f72d8e3")
  55. IVssAdmin : public IUnknown
  56. {
  57. virtual HRESULT STDMETHODCALLTYPE RegisterProvider(
  58. VSS_ID pProviderId,
  59. CLSID ClassId,
  60. VSS_PWSZ pwszProviderName,
  61. VSS_PROVIDER_TYPE eProviderType,
  62. VSS_PWSZ pwszProviderVersion,
  63. VSS_ID ProviderVersionId) = 0;
  64. virtual HRESULT STDMETHODCALLTYPE UnregisterProvider(
  65. VSS_ID ProviderId) = 0;
  66. virtual HRESULT STDMETHODCALLTYPE QueryProviders(
  67. IVssEnumObject **ppEnum) = 0;
  68. virtual HRESULT STDMETHODCALLTYPE AbortAllSnapshotsInProgress(
  69. ) = 0;
  70. };
  71. #ifdef __CRT_UUID_DECL
  72. __CRT_UUID_DECL(IVssAdmin, 0x77ed5996, 0x2f63, 0x11d3, 0x8a,0x39, 0x00,0xc0,0x4f,0x72,0xd8,0xe3)
  73. #endif
  74. #else
  75. typedef struct IVssAdminVtbl {
  76. BEGIN_INTERFACE
  77. /*** IUnknown methods ***/
  78. HRESULT (STDMETHODCALLTYPE *QueryInterface)(
  79. IVssAdmin *This,
  80. REFIID riid,
  81. void **ppvObject);
  82. ULONG (STDMETHODCALLTYPE *AddRef)(
  83. IVssAdmin *This);
  84. ULONG (STDMETHODCALLTYPE *Release)(
  85. IVssAdmin *This);
  86. /*** IVssAdmin methods ***/
  87. HRESULT (STDMETHODCALLTYPE *RegisterProvider)(
  88. IVssAdmin *This,
  89. VSS_ID pProviderId,
  90. CLSID ClassId,
  91. VSS_PWSZ pwszProviderName,
  92. VSS_PROVIDER_TYPE eProviderType,
  93. VSS_PWSZ pwszProviderVersion,
  94. VSS_ID ProviderVersionId);
  95. HRESULT (STDMETHODCALLTYPE *UnregisterProvider)(
  96. IVssAdmin *This,
  97. VSS_ID ProviderId);
  98. HRESULT (STDMETHODCALLTYPE *QueryProviders)(
  99. IVssAdmin *This,
  100. IVssEnumObject **ppEnum);
  101. HRESULT (STDMETHODCALLTYPE *AbortAllSnapshotsInProgress)(
  102. IVssAdmin *This);
  103. END_INTERFACE
  104. } IVssAdminVtbl;
  105. interface IVssAdmin {
  106. CONST_VTBL IVssAdminVtbl* lpVtbl;
  107. };
  108. #ifdef COBJMACROS
  109. #ifndef WIDL_C_INLINE_WRAPPERS
  110. /*** IUnknown methods ***/
  111. #define IVssAdmin_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
  112. #define IVssAdmin_AddRef(This) (This)->lpVtbl->AddRef(This)
  113. #define IVssAdmin_Release(This) (This)->lpVtbl->Release(This)
  114. /*** IVssAdmin methods ***/
  115. #define IVssAdmin_RegisterProvider(This,pProviderId,ClassId,pwszProviderName,eProviderType,pwszProviderVersion,ProviderVersionId) (This)->lpVtbl->RegisterProvider(This,pProviderId,ClassId,pwszProviderName,eProviderType,pwszProviderVersion,ProviderVersionId)
  116. #define IVssAdmin_UnregisterProvider(This,ProviderId) (This)->lpVtbl->UnregisterProvider(This,ProviderId)
  117. #define IVssAdmin_QueryProviders(This,ppEnum) (This)->lpVtbl->QueryProviders(This,ppEnum)
  118. #define IVssAdmin_AbortAllSnapshotsInProgress(This) (This)->lpVtbl->AbortAllSnapshotsInProgress(This)
  119. #else
  120. /*** IUnknown methods ***/
  121. static FORCEINLINE HRESULT IVssAdmin_QueryInterface(IVssAdmin* This,REFIID riid,void **ppvObject) {
  122. return This->lpVtbl->QueryInterface(This,riid,ppvObject);
  123. }
  124. static FORCEINLINE ULONG IVssAdmin_AddRef(IVssAdmin* This) {
  125. return This->lpVtbl->AddRef(This);
  126. }
  127. static FORCEINLINE ULONG IVssAdmin_Release(IVssAdmin* This) {
  128. return This->lpVtbl->Release(This);
  129. }
  130. /*** IVssAdmin methods ***/
  131. static FORCEINLINE HRESULT IVssAdmin_RegisterProvider(IVssAdmin* This,VSS_ID pProviderId,CLSID ClassId,VSS_PWSZ pwszProviderName,VSS_PROVIDER_TYPE eProviderType,VSS_PWSZ pwszProviderVersion,VSS_ID ProviderVersionId) {
  132. return This->lpVtbl->RegisterProvider(This,pProviderId,ClassId,pwszProviderName,eProviderType,pwszProviderVersion,ProviderVersionId);
  133. }
  134. static FORCEINLINE HRESULT IVssAdmin_UnregisterProvider(IVssAdmin* This,VSS_ID ProviderId) {
  135. return This->lpVtbl->UnregisterProvider(This,ProviderId);
  136. }
  137. static FORCEINLINE HRESULT IVssAdmin_QueryProviders(IVssAdmin* This,IVssEnumObject **ppEnum) {
  138. return This->lpVtbl->QueryProviders(This,ppEnum);
  139. }
  140. static FORCEINLINE HRESULT IVssAdmin_AbortAllSnapshotsInProgress(IVssAdmin* This) {
  141. return This->lpVtbl->AbortAllSnapshotsInProgress(This);
  142. }
  143. #endif
  144. #endif
  145. #endif
  146. #endif /* __IVssAdmin_INTERFACE_DEFINED__ */
  147. /*****************************************************************************
  148. * IVssAdminEx interface
  149. */
  150. #ifndef __IVssAdminEx_INTERFACE_DEFINED__
  151. #define __IVssAdminEx_INTERFACE_DEFINED__
  152. DEFINE_GUID(IID_IVssAdminEx, 0x7858a9f8, 0xb1fa, 0x41a6, 0x96,0x4f, 0xb9,0xb3,0x6b,0x8c,0xd8,0xd8);
  153. #if defined(__cplusplus) && !defined(CINTERFACE)
  154. MIDL_INTERFACE("7858a9f8-b1fa-41a6-964f-b9b36b8cd8d8")
  155. IVssAdminEx : public IVssAdmin
  156. {
  157. virtual HRESULT STDMETHODCALLTYPE GetProviderCapability(
  158. VSS_ID pProviderId,
  159. ULONGLONG *pllOriginalCapabilityMask) = 0;
  160. virtual HRESULT STDMETHODCALLTYPE GetProviderContext(
  161. VSS_ID ProviderId,
  162. LONG *plContext) = 0;
  163. virtual HRESULT STDMETHODCALLTYPE SetProviderContext(
  164. VSS_ID ProviderId,
  165. LONG lContext) = 0;
  166. };
  167. #ifdef __CRT_UUID_DECL
  168. __CRT_UUID_DECL(IVssAdminEx, 0x7858a9f8, 0xb1fa, 0x41a6, 0x96,0x4f, 0xb9,0xb3,0x6b,0x8c,0xd8,0xd8)
  169. #endif
  170. #else
  171. typedef struct IVssAdminExVtbl {
  172. BEGIN_INTERFACE
  173. /*** IUnknown methods ***/
  174. HRESULT (STDMETHODCALLTYPE *QueryInterface)(
  175. IVssAdminEx *This,
  176. REFIID riid,
  177. void **ppvObject);
  178. ULONG (STDMETHODCALLTYPE *AddRef)(
  179. IVssAdminEx *This);
  180. ULONG (STDMETHODCALLTYPE *Release)(
  181. IVssAdminEx *This);
  182. /*** IVssAdmin methods ***/
  183. HRESULT (STDMETHODCALLTYPE *RegisterProvider)(
  184. IVssAdminEx *This,
  185. VSS_ID pProviderId,
  186. CLSID ClassId,
  187. VSS_PWSZ pwszProviderName,
  188. VSS_PROVIDER_TYPE eProviderType,
  189. VSS_PWSZ pwszProviderVersion,
  190. VSS_ID ProviderVersionId);
  191. HRESULT (STDMETHODCALLTYPE *UnregisterProvider)(
  192. IVssAdminEx *This,
  193. VSS_ID ProviderId);
  194. HRESULT (STDMETHODCALLTYPE *QueryProviders)(
  195. IVssAdminEx *This,
  196. IVssEnumObject **ppEnum);
  197. HRESULT (STDMETHODCALLTYPE *AbortAllSnapshotsInProgress)(
  198. IVssAdminEx *This);
  199. /*** IVssAdminEx methods ***/
  200. HRESULT (STDMETHODCALLTYPE *GetProviderCapability)(
  201. IVssAdminEx *This,
  202. VSS_ID pProviderId,
  203. ULONGLONG *pllOriginalCapabilityMask);
  204. HRESULT (STDMETHODCALLTYPE *GetProviderContext)(
  205. IVssAdminEx *This,
  206. VSS_ID ProviderId,
  207. LONG *plContext);
  208. HRESULT (STDMETHODCALLTYPE *SetProviderContext)(
  209. IVssAdminEx *This,
  210. VSS_ID ProviderId,
  211. LONG lContext);
  212. END_INTERFACE
  213. } IVssAdminExVtbl;
  214. interface IVssAdminEx {
  215. CONST_VTBL IVssAdminExVtbl* lpVtbl;
  216. };
  217. #ifdef COBJMACROS
  218. #ifndef WIDL_C_INLINE_WRAPPERS
  219. /*** IUnknown methods ***/
  220. #define IVssAdminEx_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
  221. #define IVssAdminEx_AddRef(This) (This)->lpVtbl->AddRef(This)
  222. #define IVssAdminEx_Release(This) (This)->lpVtbl->Release(This)
  223. /*** IVssAdmin methods ***/
  224. #define IVssAdminEx_RegisterProvider(This,pProviderId,ClassId,pwszProviderName,eProviderType,pwszProviderVersion,ProviderVersionId) (This)->lpVtbl->RegisterProvider(This,pProviderId,ClassId,pwszProviderName,eProviderType,pwszProviderVersion,ProviderVersionId)
  225. #define IVssAdminEx_UnregisterProvider(This,ProviderId) (This)->lpVtbl->UnregisterProvider(This,ProviderId)
  226. #define IVssAdminEx_QueryProviders(This,ppEnum) (This)->lpVtbl->QueryProviders(This,ppEnum)
  227. #define IVssAdminEx_AbortAllSnapshotsInProgress(This) (This)->lpVtbl->AbortAllSnapshotsInProgress(This)
  228. /*** IVssAdminEx methods ***/
  229. #define IVssAdminEx_GetProviderCapability(This,pProviderId,pllOriginalCapabilityMask) (This)->lpVtbl->GetProviderCapability(This,pProviderId,pllOriginalCapabilityMask)
  230. #define IVssAdminEx_GetProviderContext(This,ProviderId,plContext) (This)->lpVtbl->GetProviderContext(This,ProviderId,plContext)
  231. #define IVssAdminEx_SetProviderContext(This,ProviderId,lContext) (This)->lpVtbl->SetProviderContext(This,ProviderId,lContext)
  232. #else
  233. /*** IUnknown methods ***/
  234. static FORCEINLINE HRESULT IVssAdminEx_QueryInterface(IVssAdminEx* This,REFIID riid,void **ppvObject) {
  235. return This->lpVtbl->QueryInterface(This,riid,ppvObject);
  236. }
  237. static FORCEINLINE ULONG IVssAdminEx_AddRef(IVssAdminEx* This) {
  238. return This->lpVtbl->AddRef(This);
  239. }
  240. static FORCEINLINE ULONG IVssAdminEx_Release(IVssAdminEx* This) {
  241. return This->lpVtbl->Release(This);
  242. }
  243. /*** IVssAdmin methods ***/
  244. static FORCEINLINE HRESULT IVssAdminEx_RegisterProvider(IVssAdminEx* This,VSS_ID pProviderId,CLSID ClassId,VSS_PWSZ pwszProviderName,VSS_PROVIDER_TYPE eProviderType,VSS_PWSZ pwszProviderVersion,VSS_ID ProviderVersionId) {
  245. return This->lpVtbl->RegisterProvider(This,pProviderId,ClassId,pwszProviderName,eProviderType,pwszProviderVersion,ProviderVersionId);
  246. }
  247. static FORCEINLINE HRESULT IVssAdminEx_UnregisterProvider(IVssAdminEx* This,VSS_ID ProviderId) {
  248. return This->lpVtbl->UnregisterProvider(This,ProviderId);
  249. }
  250. static FORCEINLINE HRESULT IVssAdminEx_QueryProviders(IVssAdminEx* This,IVssEnumObject **ppEnum) {
  251. return This->lpVtbl->QueryProviders(This,ppEnum);
  252. }
  253. static FORCEINLINE HRESULT IVssAdminEx_AbortAllSnapshotsInProgress(IVssAdminEx* This) {
  254. return This->lpVtbl->AbortAllSnapshotsInProgress(This);
  255. }
  256. /*** IVssAdminEx methods ***/
  257. static FORCEINLINE HRESULT IVssAdminEx_GetProviderCapability(IVssAdminEx* This,VSS_ID pProviderId,ULONGLONG *pllOriginalCapabilityMask) {
  258. return This->lpVtbl->GetProviderCapability(This,pProviderId,pllOriginalCapabilityMask);
  259. }
  260. static FORCEINLINE HRESULT IVssAdminEx_GetProviderContext(IVssAdminEx* This,VSS_ID ProviderId,LONG *plContext) {
  261. return This->lpVtbl->GetProviderContext(This,ProviderId,plContext);
  262. }
  263. static FORCEINLINE HRESULT IVssAdminEx_SetProviderContext(IVssAdminEx* This,VSS_ID ProviderId,LONG lContext) {
  264. return This->lpVtbl->SetProviderContext(This,ProviderId,lContext);
  265. }
  266. #endif
  267. #endif
  268. #endif
  269. #endif /* __IVssAdminEx_INTERFACE_DEFINED__ */
  270. #ifndef __VSSAdmin_LIBRARY_DEFINED__
  271. #define __VSSAdmin_LIBRARY_DEFINED__
  272. DEFINE_GUID(LIBID_VSSAdmin, 0x9148a774, 0x0304, 0x4243, 0xb2,0x69, 0xa3,0x39,0xaa,0x96,0xd2,0x64);
  273. /*****************************************************************************
  274. * VSSCoordinator coclass
  275. */
  276. DEFINE_GUID(CLSID_VSSCoordinator, 0xe579ab5f, 0x1cc4, 0x44b4, 0xbe,0xd9, 0xde,0x09,0x91,0xff,0x06,0x23);
  277. #ifdef __cplusplus
  278. class DECLSPEC_UUID("e579ab5f-1cc4-44b4-bed9-de0991ff0623") VSSCoordinator;
  279. #ifdef __CRT_UUID_DECL
  280. __CRT_UUID_DECL(VSSCoordinator, 0xe579ab5f, 0x1cc4, 0x44b4, 0xbe,0xd9, 0xde,0x09,0x91,0xff,0x06,0x23)
  281. #endif
  282. #endif
  283. #endif /* __VSSAdmin_LIBRARY_DEFINED__ */
  284. #endif /* WINAPI_PARTITION_DESKTOP */
  285. /* Begin additional prototypes for all interfaces */
  286. /* End additional prototypes */
  287. #ifdef __cplusplus
  288. }
  289. #endif
  290. #endif /* __vsadmin_h__ */