IVssBackupComponents::PrepareForBackup method

The PrepareForBackup method will cause VSS to generate a PrepareForBackup event, signaling writers to prepare for an upcoming backup operation. This makes a requester's Backup Components Document available to writers.

Syntax

HRESULT PrepareForBackup(
  IVssAsync **ppAsync
);

Parameters

ppAsync

Doubly indirect pointer to an instance of the IVssAsync interface that is used to determine when the asynchronous operation is complete.

Return Value

The following are the valid return codes for this method.

Value Meaning
S_OK
Successfully returned a pointer to an instance of the IVssAsync interface. See IVssAsync::QueryStatus for the error codes returned in the pHrResult parameter.
E_INVALIDARG
ppAsync does not point to a valid pointer; that is, it is NULL.
E_OUTOFMEMORY
The caller is out of memory or other system resources.
VSS_E_BAD_STATE
The backup components object is not initialized, this method has been called during a restore operation, or this method has not been called within the correct sequence.
VSS_E_UNEXPECTED
Unexpected error. The error code is logged in the error log file. For more information, see Event and Error Handling Under VSS.

Windows Server 2008, Windows Vista, Windows Server 2003 and Windows XP:  This value is not supported until Windows Server 2008 R2 and Windows 7. E_UNEXPECTED is used instead.

Remarks

PrepareForBackup generates a PrepareForBackup event, which is handled by each instance of each writer through the CVssWriter::OnPrepareBackup method.

Before PrepareForBackup can be called, IVssBackupComponents::SetBackupState must be called.

The Backup Components Document can still be modified by writers in their PrepareForBackup event handler (CVssWriter::OnPrepareBackup), and afterward until the generation of a BackupComplete event.

The caller is responsible for releasing the IVssAsync interface.

Requirements

   
Minimum supported client Windows XP [desktop apps only]
Minimum supported server Windows Server 2003 [desktop apps only]
Target Platform Windows
Header vsbackup.h (include VsBackup.h, Vss.h, VsWriter.h)
Library VssApi.lib

See Also

IVssAsync

IVssBackupComponents

IVssBackupComponents::AddComponent

IVssBackupComponents::AddToSnapshotSet

IVssBackupComponents::StartSnapshotSet

IVssComponent