/////////////////////////////////////////////////////////////////////////////// // // Copyright (c) 2000 Microsoft Corporation // /////////////////////////////////////////////////////////////////////////////// // Imports // import "EventSys.idl"; import "vss.idl"; /////////////////////////////////////////////////////////////////////////////// // Forward declarations // interface IVssWriter; interface IVssWriterCallback; /////////////////////////////////////////////////////////////////////////////// // Declarations // [ object, uuid(9171F2F2-E6F8-445b-91C5-504BF41D1D07), helpstring("IVssWriter interface"), oleautomation, pointer_default(unique) ] interface IVssWriter : IUnknown { [helpstring("method RequestWriterInfo")] HRESULT RequestWriterInfo( [in] BSTR bstrSnapshotSetId, [in] BOOL bWriterMetadata, [in] BOOL bWriterState, [in] IDispatch* pWriterCallback ); [helpstring("method PrepareForBackup")] HRESULT PrepareForBackup( [in] BSTR bstrSnapshotSetId, [in] IDispatch* pWriterCallback ); [helpstring("method PrepareForSnapshot")] HRESULT PrepareForSnapshot( [in] BSTR bstrSnapshotSetId, [in] BSTR VolumeNamesList ); [helpstring("method Freeze")] HRESULT Freeze( [in] BSTR bstrSnapshotSetId, [in] INT nApplicationLevel ); [helpstring("method Thaw")] HRESULT Thaw( [in] BSTR bstrSnapshotSetId ); [helpstring("method PostSnapshot")] HRESULT PostSnapshot( [in] BSTR bstrSnapshotSetId, [in] IDispatch *pWriterCallback ); [helpstring("method BackupComplete")] HRESULT BackupComplete( [in] BSTR bstrSnapshotSetId, [in] IDispatch* pWriterCallback ); [helpstring("method Abort")] HRESULT Abort( [in] BSTR bstrSnapshotSetId ); [helpstring("method PreRestore")] HRESULT PreRestore( [in] IDispatch* pWriterCallback ); [helpstring("method PostRestore")] HRESULT PostRestore( [in] IDispatch* pWriterCallback ); }; [ object, dual, uuid(ED4A8B9D-3377-4884-A493-74897CA57E68), helpstring("IVssWriterCallback interface"), pointer_default(unique) ] interface IVssWriterCallback : IDispatch { [helpstring("method ExposeWriterMetadata")] HRESULT ExposeWriterMetadata( [in] BSTR WriterInstanceId, [in] BSTR WriterClassId, [in] BSTR bstrWriterName, [in] BSTR strWriterXmlMetadata ); [helpstring("method GetContent")] HRESULT GetContent( [in] BSTR WriterInstanceId, [out] BSTR* pbstrXMLDocContent ); [helpstring("method SetContent")] HRESULT SetContent( [in] BSTR WriterInstanceId, [in] BSTR bstrXMLDocContent ); [helpstring("method GetBackupState")] HRESULT GetBackupState( [out] BOOL *pbBootableSystemStateBackedUp, [out] BOOL *pbAreComponentsSelected, [out] VSS_BACKUP_TYPE *pBackupType, [out] BOOL *pbPartialFileSupport ); [helpstring("method ExposeCurrentState")] HRESULT ExposeCurrentState( [in] BSTR WriterInstanceId, [in] VSS_WRITER_STATE nCurrentState, [in] HRESULT hrWriterFailure ); }; //////////////////////////////////////////////////////////////////////////////// // VssEvent Type Library [ uuid(3DE641EF-0556-4d4a-98D5-7DBD8AD5D70F), version(1.0), helpstring("VssEvent 1.0 Type Library") ] library VssEventLib { importlib("stdole2.tlb"); [ uuid(FAF53CC4-BD73-4e36-83F1-2B23F46E513E), helpstring("VssEvent Class") ] coclass VssEvent { interface IVssWriter; }; };