Was this page helpful?
Your feedback about this content is important. Let us know what you think.
Additional feedback?
1500 characters remaining
Export (0) Print
Expand All

IVssBackupComponents::PreRestore method

The PreRestore method will cause VSS to generate a PreRestore event, signaling writers to prepare for an upcoming restore operation.


HRESULT PreRestore(
  [out] IVssAsync **ppAsync


ppAsync [out]

Doubly indirect pointer to an IVssAsync object containing status data for the signaled event.

Return value

The following are the valid return codes for this method.


Successfully returned a pointer to an instance of the IVssAsync interface. Refer to IVssAsync::QueryStatus for the error codes returned in the pHrResult parameter.


The ppAsync parameter does not point to a valid pointer; that is, it is NULL.


The caller is out of memory or other system resources.


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.


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.



The caller is responsible for releasing the IVssAsync interface pointer.

Special consideration should be given to EFI systems when the requester has selected the Automated System Recovery (ASR) writer for restore. If you are restoring to a disk that contains the EFI partition, and one of the following conditions exists, you must first clean the disk by calling the IVdsAdvancedDisk::Clean method:

  • You are restoring to an EFI system disk whose partitioning has changed since the last ASR backup.
  • You are restoring to a different physical drive than the one from which the backup was taken.

Failure to perform this disk-cleaning step may result in unexpected results during PreRestore.

For more information about the ASR writer, see In-Box VSS Writers.


Minimum supported client

Windows XP [desktop apps only]

Minimum supported server

Windows Server 2003 [desktop apps only]


VsBackup.h (include VsBackup.h, Vss.h, or VsWriter.h)



See also




Was this page helpful?
(1500 characters remaining)
Thank you for your feedback

Community Additions

© 2015 Microsoft