pub struct IVssBackupComponentsVtbl {
pub parent: IUnknownVtbl,
pub GetWriterComponentsCount: unsafe extern "system" fn(This: *mut IVssBackupComponents, pcComponents: *mut UINT) -> HRESULT,
pub GetWriterComponents: unsafe extern "system" fn(This: *mut IVssBackupComponents, iWriter: UINT, ppWriter: *mut *mut IVssWriterComponentsExt) -> HRESULT,
pub InitializeForBackup: unsafe extern "system" fn(This: *mut IVssBackupComponents, bstrXML: BSTR) -> HRESULT,
pub SetBackupState: unsafe extern "system" fn(This: *mut IVssBackupComponents, bSelectComponents: bool, bBackupBootableSystemState: bool, backupType: VSS_BACKUP_TYPE, bPartialFileSupport: bool) -> HRESULT,
pub InitializeForRestore: unsafe extern "system" fn(This: *mut IVssBackupComponents, bstrXML: BSTR) -> HRESULT,
pub SetRestoreState: unsafe extern "system" fn(This: *mut IVssBackupComponents, restoreType: VSS_RESTORE_TYPE) -> HRESULT,
pub GatherWriterMetadata: unsafe extern "system" fn(This: *mut IVssBackupComponents, pAsync: *mut *mut IVssAsync) -> HRESULT,
pub GetWriterMetadataCount: unsafe extern "system" fn(This: *mut IVssBackupComponents, pcWriters: *mut UINT) -> HRESULT,
pub GetWriterMetadata: unsafe extern "system" fn(This: *mut IVssBackupComponents, iWriter: UINT, pidInstance: *mut VSS_ID, ppMetadata: *mut *mut IVssExamineWriterMetadata) -> HRESULT,
pub FreeWriterMetadata: unsafe extern "system" fn(This: *mut IVssBackupComponents) -> HRESULT,
pub AddComponent: unsafe extern "system" fn(This: *mut IVssBackupComponents, instanceId: VSS_ID, writerId: VSS_ID, ct: VSS_COMPONENT_TYPE, wszLogicalPath: LPCWSTR, wszComponentName: LPWSTR) -> HRESULT,
pub PrepareForBackup: unsafe extern "system" fn(This: *mut IVssBackupComponents, ppAsync: *mut *mut IVssAsync) -> HRESULT,
pub AbortBackup: unsafe extern "system" fn(This: *mut IVssBackupComponents) -> HRESULT,
pub GatherWriterStatus: unsafe extern "system" fn(This: *mut IVssBackupComponents, ppAsync: *mut *mut IVssAsync) -> HRESULT,
pub GetWriterStatusCount: unsafe extern "system" fn(This: *mut IVssBackupComponents, pcWriters: *mut UINT) -> HRESULT,
pub FreeWriterStatus: unsafe extern "system" fn(This: *mut IVssBackupComponents) -> HRESULT,
pub GetWriterStatus: unsafe extern "system" fn(This: *mut IVssBackupComponents, iWriter: UINT, pidInstance: *mut VSS_ID, pidWriter: *mut VSS_ID, pbstrWriter: *mut BSTR, pnStatus: *mut VSS_WRITER_STATE, phResultFailure: *mut HRESULT) -> HRESULT,
pub SetBackupSucceeded: unsafe extern "system" fn(This: *mut IVssBackupComponents, instanceId: VSS_ID, writerId: VSS_ID, ct: VSS_COMPONENT_TYPE, wszLogicalPath: LPCWSTR, wszComponentName: LPWSTR, bSucceded: bool) -> HRESULT,
pub SetBackupOptions: unsafe extern "system" fn(This: *mut IVssBackupComponents, writerId: VSS_ID, ct: VSS_COMPONENT_TYPE, wszLogicalPath: LPCWSTR, wszComponentName: LPWSTR, wszBackupOptions: LPWSTR) -> HRESULT,
pub SetSelectedForRestore: unsafe extern "system" fn(This: *mut IVssBackupComponents, writerId: VSS_ID, ct: VSS_COMPONENT_TYPE, wszLogicalPath: LPCWSTR, wszComponentName: LPWSTR, bSelectedForRestore: bool) -> HRESULT,
pub SetRestoreOptions: unsafe extern "system" fn(This: *mut IVssBackupComponents, writerId: VSS_ID, ct: VSS_COMPONENT_TYPE, wszLogicalPath: LPCWSTR, wszComponentName: LPWSTR, wszRestoreOptions: LPWSTR) -> HRESULT,
pub SetAdditionalRestores: unsafe extern "system" fn(This: *mut IVssBackupComponents, writerId: VSS_ID, ct: VSS_COMPONENT_TYPE, wszLogicalPath: LPCWSTR, wszComponentName: LPWSTR, bAdditionalRestores: bool) -> HRESULT,
pub SetPreviousBackupStamp: unsafe extern "system" fn(This: *mut IVssBackupComponents, writerId: VSS_ID, ct: VSS_COMPONENT_TYPE, wszLogicalPath: LPCWSTR, wszComponentName: LPWSTR, wszPreviousBackupStamp: LPWSTR) -> HRESULT,
pub SaveAsXML: unsafe extern "system" fn(This: *mut IVssBackupComponents, pbstrXML: *mut *mut BSTR) -> HRESULT,
pub BackupComplete: unsafe extern "system" fn(This: *mut IVssBackupComponents, ppAsync: *mut *mut IVssAsync) -> HRESULT,
pub AddAlternativeLocationMapping: unsafe extern "system" fn(This: *mut IVssBackupComponents, writerId: VSS_ID, ct: VSS_COMPONENT_TYPE, wszLogicalPath: LPCWSTR, wszComponentName: LPWSTR, wszPath: LPCWSTR, wszFilespec: LPCWSTR, bRecursive: bool, wszDestination: LPWSTR) -> HRESULT,
pub AddRestoreSubcomponent: unsafe extern "system" fn(This: *mut IVssBackupComponents, writerId: VSS_ID, ct: VSS_COMPONENT_TYPE, wszLogicalPath: LPCWSTR, wszComponentName: LPWSTR, wszSubComponentLogicalPath: LPCWSTR, wszSubComponentName: LPCWSTR, bRepair: bool) -> HRESULT,
pub SetFileRestoreStatus: unsafe extern "system" fn(This: *mut IVssBackupComponents, writerId: VSS_ID, ct: VSS_COMPONENT_TYPE, wszLogicalPath: LPCWSTR, wszComponentName: LPWSTR, status: VSS_FILE_RESTORE_STATUS) -> HRESULT,
pub AddNewTarget: unsafe extern "system" fn(This: *mut IVssBackupComponents, writerId: VSS_ID, ct: VSS_COMPONENT_TYPE, wszLogicalPath: LPCWSTR, wszComponentName: LPWSTR, wszPath: LPCWSTR, wszFileName: LPCWSTR, bRecursive: bool, wszAlternatePath: LPWSTR) -> HRESULT,
pub SetRangesFilePath: unsafe extern "system" fn(This: *mut IVssBackupComponents, writerId: VSS_ID, ct: VSS_COMPONENT_TYPE, wszLogicalPath: LPCWSTR, wszComponentName: LPWSTR, iPartialFile: UINT, wszRangesFile: LPCWSTR) -> HRESULT,
pub PreRestore: unsafe extern "system" fn(This: *mut IVssBackupComponents, ppAsync: *mut *mut IVssAsync) -> HRESULT,
pub PostRestore: unsafe extern "system" fn(This: *mut IVssBackupComponents, ppAsync: *mut *mut IVssAsync) -> HRESULT,
pub SetContext: unsafe extern "system" fn(This: *mut IVssBackupComponents, lContext: LONG) -> HRESULT,
pub StartSnapshotSet: unsafe extern "system" fn(This: *mut IVssBackupComponents, pSnapshotSetId: *mut VSS_ID) -> HRESULT,
pub AddToSnapshotSet: unsafe extern "system" fn(This: *mut IVssBackupComponents, pwszVolumeName: VSS_PWSZ, ProviderId: VSS_ID, pidSnapshot: *mut VSS_ID) -> HRESULT,
pub DoSnapshotSet: unsafe extern "system" fn(This: *mut IVssBackupComponents, ppAsync: *mut *mut IVssAsync) -> HRESULT,
pub DeleteSnapshots: unsafe extern "system" fn(This: *mut IVssBackupComponents, SourceObjectId: VSS_ID, eSourceObjectType: VSS_OBJECT_TYPE, bForceDelete: BOOL, plDeletedSnapshots: *mut LONG, pNondeletedSnapshotID: *mut VSS_ID) -> HRESULT,
pub ImportSnapshots: unsafe extern "system" fn(This: *mut IVssBackupComponents, ppAsync: *mut *mut IVssAsync) -> HRESULT,
pub BreakSnapshotSet: unsafe extern "system" fn(This: *mut IVssBackupComponents, SnapshotSetId: VSS_ID) -> HRESULT,
pub GetSnapshotProperties: unsafe extern "system" fn(This: *mut IVssBackupComponents, SnapshotId: VSS_ID, pProp: VSS_SNAPSHOT_PROP) -> HRESULT,
pub Query: unsafe extern "system" fn(This: *mut IVssBackupComponents, QueriedObjectId: VSS_ID, eQueriedObjectType: VSS_OBJECT_TYPE, eReturnedObjectsType: VSS_OBJECT_TYPE, ppEnum: *mut *mut IVssEnumObject) -> HRESULT,
pub IsVolumeSupported: unsafe extern "system" fn(This: *mut IVssBackupComponents, ProviderId: VSS_ID, pwszVolumeName: VSS_PWSZ, pbSupportedByThisProvider: *mut BOOL) -> HRESULT,
pub DisableWriterClasses: unsafe extern "system" fn(This: *mut IVssBackupComponents, rgWriterClassId: *const VSS_ID, cClassId: UINT) -> HRESULT,
pub EnableWriterClasses: unsafe extern "system" fn(This: *mut IVssBackupComponents, rgWriterClassId: *const VSS_ID, cClassId: UINT) -> HRESULT,
pub DisableWriterInstances: unsafe extern "system" fn(This: *mut IVssBackupComponents, rgWriterInstanceId: *const VSS_ID, cInstanceId: UINT) -> HRESULT,
pub ExposeSnapshot: unsafe extern "system" fn(This: *mut IVssBackupComponents, SnapshotId: VSS_ID, wszPathFromRoot: VSS_PWSZ, lAttributes: LONG, wszExpose: VSS_PWSZ, pwszExposed: VSS_PWSZ) -> HRESULT,
pub RevertToSnapshot: unsafe extern "system" fn(This: *mut IVssBackupComponents, SnapshotId: VSS_ID, bForceDismount: BOOL) -> HRESULT,
pub QueryRevertStatus: unsafe extern "system" fn(This: *mut IVssBackupComponents, pwszVolume: VSS_PWSZ, ppAsync: *mut *mut IVssAsync) -> HRESULT,
}
Fields
parent: IUnknownVtbl
GetWriterComponentsCount: unsafe extern "system" fn(This: *mut IVssBackupComponents, pcComponents: *mut UINT) -> HRESULT
GetWriterComponents: unsafe extern "system" fn(This: *mut IVssBackupComponents, iWriter: UINT, ppWriter: *mut *mut IVssWriterComponentsExt) -> HRESULT
InitializeForBackup: unsafe extern "system" fn(This: *mut IVssBackupComponents, bstrXML: BSTR) -> HRESULT
SetBackupState: unsafe extern "system" fn(This: *mut IVssBackupComponents, bSelectComponents: bool, bBackupBootableSystemState: bool, backupType: VSS_BACKUP_TYPE, bPartialFileSupport: bool) -> HRESULT
InitializeForRestore: unsafe extern "system" fn(This: *mut IVssBackupComponents, bstrXML: BSTR) -> HRESULT
SetRestoreState: unsafe extern "system" fn(This: *mut IVssBackupComponents, restoreType: VSS_RESTORE_TYPE) -> HRESULT
GatherWriterMetadata: unsafe extern "system" fn(This: *mut IVssBackupComponents, pAsync: *mut *mut IVssAsync) -> HRESULT
GetWriterMetadataCount: unsafe extern "system" fn(This: *mut IVssBackupComponents, pcWriters: *mut UINT) -> HRESULT
GetWriterMetadata: unsafe extern "system" fn(This: *mut IVssBackupComponents, iWriter: UINT, pidInstance: *mut VSS_ID, ppMetadata: *mut *mut IVssExamineWriterMetadata) -> HRESULT
FreeWriterMetadata: unsafe extern "system" fn(This: *mut IVssBackupComponents) -> HRESULT
AddComponent: unsafe extern "system" fn(This: *mut IVssBackupComponents, instanceId: VSS_ID, writerId: VSS_ID, ct: VSS_COMPONENT_TYPE, wszLogicalPath: LPCWSTR, wszComponentName: LPWSTR) -> HRESULT
PrepareForBackup: unsafe extern "system" fn(This: *mut IVssBackupComponents, ppAsync: *mut *mut IVssAsync) -> HRESULT
AbortBackup: unsafe extern "system" fn(This: *mut IVssBackupComponents) -> HRESULT
GatherWriterStatus: unsafe extern "system" fn(This: *mut IVssBackupComponents, ppAsync: *mut *mut IVssAsync) -> HRESULT
GetWriterStatusCount: unsafe extern "system" fn(This: *mut IVssBackupComponents, pcWriters: *mut UINT) -> HRESULT
FreeWriterStatus: unsafe extern "system" fn(This: *mut IVssBackupComponents) -> HRESULT
GetWriterStatus: unsafe extern "system" fn(This: *mut IVssBackupComponents, iWriter: UINT, pidInstance: *mut VSS_ID, pidWriter: *mut VSS_ID, pbstrWriter: *mut BSTR, pnStatus: *mut VSS_WRITER_STATE, phResultFailure: *mut HRESULT) -> HRESULT
SetBackupSucceeded: unsafe extern "system" fn(This: *mut IVssBackupComponents, instanceId: VSS_ID, writerId: VSS_ID, ct: VSS_COMPONENT_TYPE, wszLogicalPath: LPCWSTR, wszComponentName: LPWSTR, bSucceded: bool) -> HRESULT
SetBackupOptions: unsafe extern "system" fn(This: *mut IVssBackupComponents, writerId: VSS_ID, ct: VSS_COMPONENT_TYPE, wszLogicalPath: LPCWSTR, wszComponentName: LPWSTR, wszBackupOptions: LPWSTR) -> HRESULT
SetSelectedForRestore: unsafe extern "system" fn(This: *mut IVssBackupComponents, writerId: VSS_ID, ct: VSS_COMPONENT_TYPE, wszLogicalPath: LPCWSTR, wszComponentName: LPWSTR, bSelectedForRestore: bool) -> HRESULT
SetRestoreOptions: unsafe extern "system" fn(This: *mut IVssBackupComponents, writerId: VSS_ID, ct: VSS_COMPONENT_TYPE, wszLogicalPath: LPCWSTR, wszComponentName: LPWSTR, wszRestoreOptions: LPWSTR) -> HRESULT
SetAdditionalRestores: unsafe extern "system" fn(This: *mut IVssBackupComponents, writerId: VSS_ID, ct: VSS_COMPONENT_TYPE, wszLogicalPath: LPCWSTR, wszComponentName: LPWSTR, bAdditionalRestores: bool) -> HRESULT
SetPreviousBackupStamp: unsafe extern "system" fn(This: *mut IVssBackupComponents, writerId: VSS_ID, ct: VSS_COMPONENT_TYPE, wszLogicalPath: LPCWSTR, wszComponentName: LPWSTR, wszPreviousBackupStamp: LPWSTR) -> HRESULT
SaveAsXML: unsafe extern "system" fn(This: *mut IVssBackupComponents, pbstrXML: *mut *mut BSTR) -> HRESULT
BackupComplete: unsafe extern "system" fn(This: *mut IVssBackupComponents, ppAsync: *mut *mut IVssAsync) -> HRESULT
AddAlternativeLocationMapping: unsafe extern "system" fn(This: *mut IVssBackupComponents, writerId: VSS_ID, ct: VSS_COMPONENT_TYPE, wszLogicalPath: LPCWSTR, wszComponentName: LPWSTR, wszPath: LPCWSTR, wszFilespec: LPCWSTR, bRecursive: bool, wszDestination: LPWSTR) -> HRESULT
AddRestoreSubcomponent: unsafe extern "system" fn(This: *mut IVssBackupComponents, writerId: VSS_ID, ct: VSS_COMPONENT_TYPE, wszLogicalPath: LPCWSTR, wszComponentName: LPWSTR, wszSubComponentLogicalPath: LPCWSTR, wszSubComponentName: LPCWSTR, bRepair: bool) -> HRESULT
SetFileRestoreStatus: unsafe extern "system" fn(This: *mut IVssBackupComponents, writerId: VSS_ID, ct: VSS_COMPONENT_TYPE, wszLogicalPath: LPCWSTR, wszComponentName: LPWSTR, status: VSS_FILE_RESTORE_STATUS) -> HRESULT
AddNewTarget: unsafe extern "system" fn(This: *mut IVssBackupComponents, writerId: VSS_ID, ct: VSS_COMPONENT_TYPE, wszLogicalPath: LPCWSTR, wszComponentName: LPWSTR, wszPath: LPCWSTR, wszFileName: LPCWSTR, bRecursive: bool, wszAlternatePath: LPWSTR) -> HRESULT
SetRangesFilePath: unsafe extern "system" fn(This: *mut IVssBackupComponents, writerId: VSS_ID, ct: VSS_COMPONENT_TYPE, wszLogicalPath: LPCWSTR, wszComponentName: LPWSTR, iPartialFile: UINT, wszRangesFile: LPCWSTR) -> HRESULT
PreRestore: unsafe extern "system" fn(This: *mut IVssBackupComponents, ppAsync: *mut *mut IVssAsync) -> HRESULT
PostRestore: unsafe extern "system" fn(This: *mut IVssBackupComponents, ppAsync: *mut *mut IVssAsync) -> HRESULT
SetContext: unsafe extern "system" fn(This: *mut IVssBackupComponents, lContext: LONG) -> HRESULT
StartSnapshotSet: unsafe extern "system" fn(This: *mut IVssBackupComponents, pSnapshotSetId: *mut VSS_ID) -> HRESULT
AddToSnapshotSet: unsafe extern "system" fn(This: *mut IVssBackupComponents, pwszVolumeName: VSS_PWSZ, ProviderId: VSS_ID, pidSnapshot: *mut VSS_ID) -> HRESULT
DoSnapshotSet: unsafe extern "system" fn(This: *mut IVssBackupComponents, ppAsync: *mut *mut IVssAsync) -> HRESULT
DeleteSnapshots: unsafe extern "system" fn(This: *mut IVssBackupComponents, SourceObjectId: VSS_ID, eSourceObjectType: VSS_OBJECT_TYPE, bForceDelete: BOOL, plDeletedSnapshots: *mut LONG, pNondeletedSnapshotID: *mut VSS_ID) -> HRESULT
ImportSnapshots: unsafe extern "system" fn(This: *mut IVssBackupComponents, ppAsync: *mut *mut IVssAsync) -> HRESULT
BreakSnapshotSet: unsafe extern "system" fn(This: *mut IVssBackupComponents, SnapshotSetId: VSS_ID) -> HRESULT
GetSnapshotProperties: unsafe extern "system" fn(This: *mut IVssBackupComponents, SnapshotId: VSS_ID, pProp: VSS_SNAPSHOT_PROP) -> HRESULT
Query: unsafe extern "system" fn(This: *mut IVssBackupComponents, QueriedObjectId: VSS_ID, eQueriedObjectType: VSS_OBJECT_TYPE, eReturnedObjectsType: VSS_OBJECT_TYPE, ppEnum: *mut *mut IVssEnumObject) -> HRESULT
IsVolumeSupported: unsafe extern "system" fn(This: *mut IVssBackupComponents, ProviderId: VSS_ID, pwszVolumeName: VSS_PWSZ, pbSupportedByThisProvider: *mut BOOL) -> HRESULT
DisableWriterClasses: unsafe extern "system" fn(This: *mut IVssBackupComponents, rgWriterClassId: *const VSS_ID, cClassId: UINT) -> HRESULT
EnableWriterClasses: unsafe extern "system" fn(This: *mut IVssBackupComponents, rgWriterClassId: *const VSS_ID, cClassId: UINT) -> HRESULT
DisableWriterInstances: unsafe extern "system" fn(This: *mut IVssBackupComponents, rgWriterInstanceId: *const VSS_ID, cInstanceId: UINT) -> HRESULT
ExposeSnapshot: unsafe extern "system" fn(This: *mut IVssBackupComponents, SnapshotId: VSS_ID, wszPathFromRoot: VSS_PWSZ, lAttributes: LONG, wszExpose: VSS_PWSZ, pwszExposed: VSS_PWSZ) -> HRESULT
RevertToSnapshot: unsafe extern "system" fn(This: *mut IVssBackupComponents, SnapshotId: VSS_ID, bForceDismount: BOOL) -> HRESULT
QueryRevertStatus: unsafe extern "system" fn(This: *mut IVssBackupComponents, pwszVolume: VSS_PWSZ, ppAsync: *mut *mut IVssAsync) -> HRESULT