/////////////////////////////////////////////////////////////////////////////// // // Copyright (c) 2000 Microsoft Corporation // /////////////////////////////////////////////////////////////////////////////// // Imports // import "oaidl.idl"; import "ocidl.idl"; import "vss.idl"; [ object, uuid(77ED5996-2F63-11d3-8A39-00C04F72D8E3), helpstring("IVssAdmin interface"), pointer_default(unique) ] interface IVssAdmin : IUnknown { [helpstring("method RegisterProvider")] HRESULT RegisterProvider( [in] VSS_ID pProviderId, [in] CLSID ClassId, [in] VSS_PWSZ pwszProviderName, [in] VSS_PROVIDER_TYPE eProviderType, [in] VSS_PWSZ pwszProviderVersion, [in] VSS_ID ProviderVersionId ); [helpstring("method UnregisterProvider")] HRESULT UnregisterProvider( [in] VSS_ID ProviderId ); [helpstring("method QueryProviders")] HRESULT QueryProviders( [out] IVssEnumObject**ppEnum ); [helpstring("method AbortAllSnapshotsInProgress")] HRESULT AbortAllSnapshotsInProgress( ); }; [ object, uuid(7858A9F8-B1FA-41a6-964F-B9B36B8CD8D8), helpstring("IVssAdminEx interface"), pointer_default(unique) ] interface IVssAdminEx : IVssAdmin { // Inform caller of features that provider supports [helpstring("method GetProviderCapability")] HRESULT GetProviderCapability( [in] VSS_ID pProviderId, [out] ULONGLONG * pllOriginalCapabilityMask ); // Retrieve persistent context of given provider [helpstring("method GetProviderContext")] HRESULT GetProviderContext( [in] VSS_ID ProviderId, [out] LONG * plContext ); // Set persistent context of specified provider // The setting is persisted in registry by VSS // It is automatically applied to the snapshot context // Requestors should NOT call this method [helpstring("method SetProviderContext")] HRESULT SetProviderContext( [in] VSS_ID ProviderId, [in] LONG lContext ); }; //////////////////////////////////////////////////////// // VSS Admin Type Library [ uuid(9148a774-0304-4243-b269-a339aa96d264), version(1.0), helpstring("Volume Shadow Copy Admin 1.0 Type Library") ] library VSSAdmin { importlib("stdole2.tlb"); [ uuid(E579AB5F-1CC4-44b4-BED9-DE0991FF0623), helpstring("VSSCoordinator Class") ] coclass VSSCoordinator { [default] interface IVssAdmin; interface IVssAdminEx; } }