AlphaVSS.Common A class that allows a requester to examine the metadata of a specific writer instance. This metadata may come from a currently executing (live) writer, or it may have been stored as an XML document. A interface to a live writer's metadata is obtained by a call to . The method loads an XML document that contains a writer's metadata document into a instance. String that contains an XML document that represents a writer's metadata document. if the XML document was successfully loaded, or if the XML document could not be loaded. The method saves the Writer Metadata Document that contains a writer's state information to a specified string. This string can be saved as part of a backup operation. The Writer Metadata Document that contains a writer's state information. The is examined by a requester to determine from the Writer Metadata Document the types of backup operations that a given writer can participate in. The alternate location mappings of the file sets. A read-only list containing the alternate location mappings of the file sets. Information about how a writer wants its data to be restored. Obtains the Writer Metadata Documents the components supported by this writer. the Writer Metadata Documents the components supported by this writer. Information about files that have been explicitly excluded from backup. a read-only list containing information about files that have been explicitly excluded from backup. The instance identifier of the writer The instance id. The class ID of the writer A string specifying the name of the writer A enumeration value indicating how the data managed by the writer is used on the host system. A enumeration value indicating the type of data managed by the writer. Gets the writer instance name. Windows XP and Windows 2003: This property is not supported until Windows 2003 SP1 and will always return on those systems. A string specifying the writer instance name. Gets the version information for a writer application. The version information for a writer application. Only the and properties of the instance are used by VSS. Windows XP and Windows 2003: This property is not supported until Windows Vista, and will always return version 0.0.0.0 Obtains information about file sets that have been explicitly excluded from a given shadow copy. The property is intended to report information about file sets excluded from a shadow copy. Requesters should not exclude files from backup based on the information returned by this method. Windows XP and Windows 2003: This property is not supported until Windows Vista and will always return an empty list. The exclude from snapshot files. Exception thrown to indicate that an unexpected error occurred during communication with writers. The error code is logged in the error log file. Base class for exceptions indicating an error occuring during a VSS operation. Initializes a new instance of the class. Initializes a new instance of the class with the specified error message. The error message. Initializes a new instance of the class with the specified error message and a reference to the inner exception that is the cause of this exception. The error message. The inner exception. Initializes a new instance of the class with serialized data. The that holds the serialized object data about the exception being thrown. The that contains contextual information about the source or destination. The parameter is . The class name is or is zero (0). Initializes a new instance of the class with a system-supplied message describing the error. Initializes a new instance of the class with a specified error message. The message that describes the error Initializes a new instance of the class with a specified error message and a reference to the inner exception that is the cause of this exception. The message that describes the error The exception that is the cause of the current exception. Initializes a new instance of the class. The that holds the serialized object data about the exception being thrown. The that contains contextual information about the source or destination. The parameter is . The class name is or is zero (0). Exception thrown to indicate that the system was unable to freeze the Distributed Transaction Coordinator (DTC) or the Kernel Transaction Manager (KTM). Windows Server 2003 and Windows XP: This exception is not supported until Windows Vista. Initializes a new instance of the class with a system-supplied message describing the error. Initializes a new instance of the class with a specified error message. The message that describes the error Initializes a new instance of the class with a specified error message and a reference to the inner exception that is the cause of this exception. The message that describes the error The exception that is the cause of the current exception. Initializes a new instance of the class. The that holds the serialized object data about the exception being thrown. The that contains contextual information about the source or destination. The parameter is . The class name is or is zero (0). Represents information about a Subcomponent associated with a given component. Initializes a new instance of . The logical path of the Subcomponent. This can not be empty when working with Subcomponents. The name of the Subcomponent. This can not be empty. The logical path of the Subcomponent. This can not be empty when working with Subcomponents. The name of the Subcomponent. This can not be empty. The interface contains methods used to obtain and modify component information (in the form of instances) associated with a given writer but stored in a requester's Backup Components Document. A read-only collection of instances to the a given writer's components explicitly stored in the Backup Components Document. A read-only collection of instances to the a given writer's components explicitly stored in the Backup Components Document. This list must not be accessed after the from which it was obtained has been disposed. Identifier of the writer instance responsible for the components. Identifier of the writer class responsible for the components. Exception indicating that the writer is not responding. Base class for exceptions thrown to indicate errors reported by VSS writers. Initializes a new instance of the class. Initializes a new instance of the class with the specified error message. The error message. Initializes a new instance of the class with the specified error message and a reference to the inner exception that is the cause of this exception. The error message. The inner exception. Initializes a new instance of the class with serialized data. The that holds the serialized object data about the exception being thrown. The that contains contextual information about the source or destination. The parameter is . The class name is or is zero (0). Initializes a new instance of the class. Initializes a new instance of the class. The message that describes the error Initializes a new instance of the class. The message that describes the error The exception that is the cause of the current exception. Initializes a new instance of the class. The that holds the serialized object data about the exception being thrown. The that contains contextual information about the source or destination. The parameter is . The class name is or is zero (0). Exception thrown to indicate that the writer infrastructure is not operating properly. Check that the Event Service and VSS have been started, and check for errors associated with those services in the error log. Initializes a new instance of the class with a system-supplied message describing the error. Initializes a new instance of the class with a specified error message. The message that describes the error Initializes a new instance of the class with a specified error message and a reference to the inner exception that is the cause of this exception. The message that describes the error The exception that is the cause of the current exception. Initializes a new instance of the class. The that holds the serialized object data about the exception being thrown. The that contains contextual information about the source or destination. The parameter is . The class name is or is zero (0). Exception indicating that the volume was in use and could not be locked. Initializes a new instance of the class with a system-supplied message describing the error. Initializes a new instance of the class with a specified error message. The message that describes the error Initializes a new instance of the class with a specified error message and a reference to the inner exception that is the cause of this exception. The message that describes the error The exception that is the cause of the current exception. Initializes a new instance of the class. The that holds the serialized object data about the exception being thrown. The that contains contextual information about the source or destination. The parameter is . The class name is or is zero (0). The enumeration is used by a writer to indicate to a requester the conditions under which it will handle events generated during a restore operation. It is not known whether the writer will perform special operations during the restore operation. This state indicates a writer error. The writer does not require restore events. Indicates that the writer always expects to handle a PreRestore event, but expects to handle a PostRestore event only if a restore fails when implementing either a or restore method () The writer always performs special operations during the restore operation. Allows additional attributes to be specified for a shadow copy. The context of a shadow copy (as set by the SetContext method in method) may be modified by a bitmask that contains a valid combination of and enumeration values. In the VSS API, these values are represented by the enumeration The shadow copy is persistent across reboots. This attribute is automatically set for contexts of AppRollback ClientAccessible, ClientAccessibleWriters and NasRollback. This attribute should not be used explicitly by requesters when setting the context of a shadow copy. Auto-recovery is disabled for the shadow copy. A requester can modify a shadow copy context with a bitwise OR of this attribute. By doing this, the requester instructs VSS to make the shadow copy read-only immediately after it is created, without allowing writers or other applications to update components in the shadow copy. Disabling auto-recovery can cause the shadow copy to be in an inconsistent state if any of its components are involved in transactional database operations, such as transactional read and write operations managed by Transactional NTFS (TxF). This is because disabling auto-recovery prevents incomplete transactions from being rolled back. Disabling auto-recovery also prevents writers from excluding files from the shadow copy. Windows Server 2003 and Windows XP: This value is not supported until Windows Vista. The specified shadow copy is a client-accessible copy, supports Shadow Copies for Shared Folders, and should not be exposed. This attribute is automatically set for ClientAccessible and ClientAccessibleWriters. This attribute should not be used explicitly by requesters when setting the context of a shadow copy. The shadow copy is not automatically deleted when the shadow copy requester process ends. The shadow copy can be deleted only by a call to or . This attribute is automatically set for contexts of Rollback, ClientAccessible, ClientAccessibleWriters and Rollback. No writers are involved in creating the shadow copy. This attribute is automatically set for contexts of NasRollback, FileShareBackup and ClientAccessible. This attribute should not be used explicitly by requesters when setting the context of a shadow copy. The shadow copy is to be transported and therefore should not be surfaced locally. This attribute can be used explicitly by requesters when setting the context of a shadow copy, if the provider for shadow copy supports transportable shadow copies. Windows Server 2003, Standard Edition, Windows Server 2003, Web Edition, and Windows XP: This attribute is not supported. All editions of Windows Server 2003 SP1 support this attribute. The shadow copy is not currently exposed. Unless the shadow copy is explicitly exposed or mounted, this attribute is set for all shadow copies. This attribute should not be used explicitly by requesters when setting the context of a shadow copy. The shadow copy is not transacted. A requester can modify a shadow copy context with a bitwise OR of this attribute. By doing this, the requester instructs VSS to disable built-in integration between VSS and transaction and resource managers. Setting this attribute guarantees that the requester will not receive errors. However, it may cause unwanted consequences, such as the loss of transactional integrity or even data loss. Windows Server 2003 and Windows XP: This value is not supported until Windows Vista. Indicates that a given provider is a hardware-based provider. This attribute is automatically set for hardware-based providers. This enumeration value cannot be used to manually set the context (using the method) of a shadow copy by a bit mask (or bitwise OR) of this enumeration value and a valid shadow copy context value from . Indicates that a given provider uses differential data or a copy-on-write mechanism to implement shadow copies. A requester can modify a shadow copy context with a bitwise OR of this attribute. By doing this, the requester instructs providers to create a shadow copy using a differential implementation. If no shadow copy provider installed on the system supports the requested attributes, a error will be returned to . Indicates that a given provider uses a PLEX or mirrored split mechanism to implement shadow copies. A requester can modify a shadow copy context with a bitwise OR of this attribute. By doing this, the requester instructs the providers to create a shadow copy using a PLEX implementation. If no shadow copy provider installed on the system supports the requested attributes, a error will be returned to . The shadow copy of the volume was imported onto this machine using the method rather than created using the method. This attribute is automatically set if a shadow copy is imported. This attribute should not be used explicitly by requesters when setting the context of a shadow copy. The shadow copy is locally exposed. If this bit flag and the ExposedRemotely bit flag are not set, the shadow copy is hidden. The attribute is automatically added to a shadow copy context upon calling the method to expose a shadow copy locally. This attribute should not be used explicitly by requesters when setting the context of a shadow copy. The shadow copy is remotely exposed. If this bit flag and the ExposedLocally bit flag are not set, the shadow copy is hidden. The attribute is automatically added to a shadow copy context upon calling the method to expose a shadow copy locally. This attribute should not be used explicitly by requesters when setting the context of a shadow copy. Indicates that the writer will need to auto-recover the component in CVssWriter::OnPostSnapshot. This attribute should not be used explicitly by requesters when setting the context of a shadow copy. Indicates that the writer will need to auto-recover the component in CVssWriter::OnPostSnapshot if the shadow copy is being used for rollback (for data mining, for example). A requester would set this flag in the shadow copy context to indicate that the shadow copy is being created for a non-backup purpose such as data mining. Reserved for system use. Windows Vista, Windows Server 2003, and Windows XP: This value is not supported until Windows Server 2008. Indicates that TxF recovery should be enforced during shadow copy creation. Windows Vista, Windows Server 2003, and Windows XP: This value is not supported until Windows Server 2008. The enumeration is used by writers to indicate support for auto-recovery. For more information see MSDN documentation on VSS_COMPONENT_FLAGS Enumeration This value is reserved for operating systems that do not support the enumeration. The writer will need write access to this component after the shadow copy has been created. This flag is incompatible with . If this is a rollback shadow copy ( enumeration value of ), the writer for this component will need write access to this component after the shadow copy has been created. This flag is incompatible with . This component is not part of system state. Windows Server 2003: This value is not supported until Windows Vista. Represents information about how a writer wants its data to be restored. This class is a container for the data returned by . Initializes a new instance of the class. The restore method. The service. The user procedure. The writer restore. if set to true a reboot is required. The mappings. This constructor is normally not used by application code. Rather instances of are returned by various query methods. A value that specifies file overwriting, the use of alternate locations specifying the method that will be used in the restore operation. If the value of is , a pointer to a string containing the name of the service that is started and stopped. Otherwise, the value is . Pointer to the URL of an HTML or XML document describing to the user how the restore is to be performed. The value may be . A value specifying whether the writer will be involved in restoring its data. A indicating whether a reboot will be required after the restore operation is complete. if a reboot will be required and if it will not. The number of alternate mappings associated with the writer. The enumeration is used by writers to indicate their support of certain backup operations—such as incremental or differential backup—on the basis of file sets (a specified file or files). File sets stored in the Writer Metadata Document are tagged with a bit mask (or bitwise OR) of values indicating the following: Whether the writer and the requester have to evaluate a given file set for participation in the specified type of backup operations Whether backing up the specified file will require a shadow copy For more information see the MSDN documentation on VSS_FILE_SPEC_BACKUP_TYPE Enumeration Used on operating systems where this enumeration is not supported, i.e. Windows XP. A file set tagged with this value must be involved in all types of backup operations. A writer tags a file set with this value to indicate to the requester that it expects a copy of the current version of the file set to be available following the restore of any backup operation with a of . A writer tags a file set with this value to indicate to the requester that it expects a copy of the current version of the file set to be available following the restore of any backup operation with a of . A writer tags a file set with this value to indicate to the requester that it expects a copy of the current version of the file set to be available following the restore of any backup operation with a of . A writer tags a file set with this value to indicate to the requester that it expects a copy of the current version of the file set to be available following the restore of any backup operation with a of . A file set tagged with this value must be backed up from a shadow copy of a volume (and never from the original volume) when participating in a backup operation with a of . A file set tagged with this value must be backed up from a shadow copy of a volume (and never from the original volume) when participating in a backup operation with a of . A file set tagged with this value must be backed up from a shadow copy of a volume (and never from the original volume) when participating in a backup operation with a of . A file set tagged with this value must be backed up from a shadow copy of a volume (and never from the original volume) when participating in a backup operation with a of . The default file backup specification type. A file set tagged with this value must always participate in backup and restore operations. The shadow copy requirement for backup. A file set tagged with this value must always be backed up from a shadow copy of a volume (and never from the original volume) when participating in a backup operation. The enumeration defines the set of statuses of a file restore operation performed on the files managed by a selected component or component set. See MSDN documentation on VSS_FILE_RESTORE_STATUS for more information. The restore state is undefined. This value indicates an error, or indicates that a restore operation has not yet started. No files were restored. This value indicates an error in restoration that did not leave any restored files on disk. All files were restored. This value indicates success and should be set for each component that was restored successfully. The restore process failed. This value indicates an error in restoration that did leave some restored files on disk. This means the components on disk are now corrupt. The class is a static utility class for accessing the platform specific instances of the various VSS interfaces in a platform-independent manner. Use the under normal circumstances to load the correct assembly and create an instance of from that assembly. If you have specific requirements on how the assembly should be loaded, or the instance created you are not required to use these methods but can use the methods in this class for accessing the suggested assembly name to load, and load it manually. In this case you need to create an instance of the class called Alphaleonis.Win32.Vss.VssImplementation from the platform specific assembly. This class implements the interface, and has a public parameterless constructor. Gets the short name of the platform specific assembly for the platform on which the assembly is currently executing. the short name of the platform specific assembly for the platform on which the assembly is currently executing. The operating system could not be detected or is unsupported. Gets the full name of the platform specific assembly for the platform on which the assembly is currently executing. The full name of the platform specific assembly for the platform on which the assembly is currently executing. The operating system could not be detected or is unsupported. Loads the assembly containing the correct implementation of the interface for the operating system on which the assembly is currently executing. Loads the assembly containing the correct implementation of the interface for the operating system on which the assembly is currently executing, optionally allowing the specification of an into which to load the assembly. The assembly will be loaded into the same as the calling assembly. The assemblies are loaded using strong name lookup. They need to be present in the code base directory of the executing assembly, or installed in the GAC for the lookup to succeed. An newly created instance of suitable for the operating system on which the assembly is currently executing. The operating system could not be detected or is unsupported. Exception thrown to indicate that the provider encountered an error that requires the user to restart the computer. Windows Server 2003 and Windows XP:This exception is not supported until Windows Vista. Initializes a new instance of the class with a system-supplied message describing the error. Initializes a new instance of the class with a specified error message. The message that describes the error Initializes a new instance of the class with a specified error message and a reference to the inner exception that is the cause of this exception. The message that describes the error The exception that is the cause of the current exception. Initializes a new instance of the class. The that holds the serialized object data about the exception being thrown. The that contains contextual information about the source or destination. The parameter is . The class name is or is zero (0). Exception thrown to indicate that the volume has been added to the maximum number of shadow copy sets. The specified volume was not added to the shadow copy set. Initializes a new instance of the class with a system-supplied message describing the error. Initializes a new instance of the class with a specified error message. The message that describes the error Initializes a new instance of the class with a specified error message and a reference to the inner exception that is the cause of this exception. The message that describes the error The exception that is the cause of the current exception. Initializes a new instance of the class. The that holds the serialized object data about the exception being thrown. The that contains contextual information about the source or destination. The parameter is . The class name is or is zero (0). The enumeration indicates which volume control or file I/O operations are disabled for the volume that has been shadow copied. None of the other flags. The provider managing the shadow copies for a specified volume does not support defragmentation operations on that volume. The provider managing the shadow copies for a specified volume does not support content index operations on that volume. The enumeration represents error- and success codes that may be returned by some Vss methods. Indication of a successful operation. The asynchronous operation was cancelled. The asynchronous operation was completed successfully. The asynchronous operation is still running. Unexpected error. The error code is logged in the error log file. A method call was made when the object was in an incorrect state for that method. The provider has already been registered. The specified identifier does not correspond to a registered provider. The provider was unable to perform the request at this time. This can be a transient problem. It is recommended to wait ten minutes and try again, up to three times. The shadow copy provider is currently in use and cannot be unregistered. The specified object was not found. No VSS provider indicates that it supports the specified volume. The volume is not supported by the specified provider. The object already exists. The provider returned an unexpected error code. This can be a transient problem. It is recommended to wait ten minutes and try again, up to three times. The given XML document is invalid. It is either incorrectly-formed XML or it does not match the schema. The maximum number of volumes has been added to the shadow copy set. The specified volume was not added to the shadow copy set. VSS encountered problems while sending events to writers. Another shadow copy creation is already in progress. Please wait a few moments and try again. The volume has been added to the maximum number of shadow copy sets. The specified volume was not added to the shadow copy set. An error was detected in the Volume Shadow Copy Service (VSS). The problem occurred while trying to contact VSS writers. Please verify that the Event System service and the VSS service are running and check for associated errors in the event logs. A writer did not respond to a GatherWriterStatus call. The writer may either have terminated or it may be stuck. Check the system and application event logs for more information. The writer has already sucessfully called the Subscribe function. It cannot call subscribe multiple times. The shadow copy provider does not support the specified shadow copy type. The specified shadow copy storage association is in use and so can't be deleted. Maximum number of shadow copy storage associations already reached. The system or provider has insufficient storage space. If possible delete any old or unnecessary persistent shadow copies and try again. No shadow copies were successfully imported. Some shadow copies were not succesfully imported. Some shadow copies were not succesfully imported. The maximum number of remote machines for this operation has been reached. The remote server is unavailable. The remote server is running a version of the Volume Shadow Copy Service that does not support remote shadow-copy creation. A revert is currently in progress for the specified volume. Another revert cannot be initiated until the current revert completes. The volume being reverted was lost during revert. The provider encountered an error that requires the user to restart the computer. Windows Server 2003 and Windows XP:This value is not supported until Windows Vista. The system was unable to freeze the Distributed Transaction Coordinator (DTC) or the Kernel Transaction Manager (KTM). Windows Server 2003 and Windows XP:This value is not supported until Windows Vista. The system was unable to thaw the Distributed Transaction Coordinator (DTC) or the Kernel Transaction Manager (KTM). Windows Server 2003 and Windows XP:This value is not supported until Windows Vista. The shadow copy contains only a subset of the volumes needed by the writer to correctly back up the application component. The writer ran out of memory or other system resources. The recommended way to handle this error code is to wait ten minutes and then repeat the operation, up to three times. The writer operation failed because of a time-out between the Freeze and Thaw events. The recommended way to handle this error code is to wait ten minutes and then repeat the operation, up to three times. The writer failed due to an error that would likely not occur if the entire backup, restore, or shadow copy creation process was restarted. The recommended way to handle this error code is to wait ten minutes and then repeat the operation, up to three times. The writer experienced a non-transient error. If the backup process is retried, the error is likely to reoccur. The writer experienced an error while trying to recover the shadow-copy volume. The shadow copy set break operation failed because the disk/partition identities could not be reverted. The target identity already exists on the machine or cluster and must be masked before this operation can succeed. This version of the hardware provider does not support this operation. At least one of the providers in this Shadow Copy Set failed the break operation for a snapshot. There are too few disks on this computer or one or more of the disks is too small. Add or change disks so they match the disks in the backup, and try the restore again. Windows cannot create a disk on this computer needed to restore from the backup. Make sure the disks are properly connected, or add or change disks, and try the restore again. The computer needs to be restarted to finish preparing a hard disk for restore. To continue, restart your computer and run the restore again. The backup failed due to a missing disk for a dynamic volume. Please ensure the disk is online and retry the backup. Automated System Recovery failed the shadow copy, because a selected critical volume is located on a cluster shared disk. This is an unsupported configuration. A data disk is currently set as active in BIOS. Set some other disk as active or use the DiskPart utility to clean the data disk, and then retry the restore operation. The disk that is set as active in BIOS is too small to recover the original system disk. Replace the disk with a larger one and retry the restore operation. There is not enough disk space on the system to perform the restore operation. Add another disk or replace one of the existing disks and retry the restore operation. The writer status is not available for one or more writers. A writer may have reached the maximum number of available backup and restore sessions. Windows Vista, Windows Server 2003, and Windows XP: This value is not supported. The system was unable to flush I/O writes. This can be a transient problem. It is recommended to wait ten minutes and try again, up to three times. The system was unable to hold I/O writes. This can be a transient problem. It is recommended to wait ten minutes and try again, up to three times. Represenation of the status for a specific writer. This class acts as a container for the information returned from IVssBackupComponents.GetWriterStatus in the original VSS API Initializes a new instance of the class. The writer instance id. The writer class id. Name of the writer. The state. The failure. The application error code. The application error message. Initializes a new instance of the class. The writer instance id. The writer class id. Name of the writer. The state. The failure. The instance id of the writer. The identifier of the writer class. The name of the writer. A value containing the state of the writer. A value indicating the failure code (if any) of the writer. The following are the supported values for : Value Meaning The writer was successful. The shadow copy contains only a subset of the volumes needed by the writer to correctly back up the application component. The writer ran out of memory or other system resources. The recommended way to handle this error code is to wait ten minutes and then repeat the operation, up to three times. The writer operation failed because of a time-out between the Freeze and Thaw events. The recommended way to handle this error code is to wait ten minutes and then repeat the operation, up to three times. The writer failed due to an error that would likely not occur if the entire backup, restore, or shadow copy creation process was restarted. The recommended way to handle this error code is to wait ten minutes and then repeat the operation, up to three times. The writer operation failed because of an error that might recur if another shadow copy is created. The writer is not responding. The writer status is not available for one or more writers. A writer may have reached the maximum number of available backup and restore sessions. Windows Vista, Windows Server 2003 and Windows XP: This value is not supported. Gets the return code that the writer passed for the hrApplication parameter of the CVssWriterEx2::SetWriterFailureEx method. This property requires Windows 7 or Windows Server 2008 R2 and will be on earlier operating systems. Gets the application failure message that the writer passed for the wszApplicationMessage parameter of the SetWriterFailureEx method. This property requires Windows 7 or Windows Server 2008 R2 and will be on earlier operating systems. Defines the set of volume shadow copy protection levels. Specifies that I/O to the original volume must be maintained at the expense of shadow copies. This is the default protection level. Shadow copies might be deleted if both of the following conditions occur: A write to the original volume occurs. The integrity of the shadow copy cannot be maintained for some reason, such as a failure to write to the shadow copy storage area or a failure to allocate sufficient memory. Specifies that shadow copies must be maintained at the expense of I/O to the original volume. All I/O to the original volume will fail if both of the following conditions occur: A write to the original volume occurs. The corresponding write to the shadow copy storage area cannot be completed for some reason, such as a failure to write to the shadow copy storage area or a failure to allocate sufficient memory. Defines shadow copy LUN flags. Only supported on Windows Server 2008. The shadow copy LUN will be masked from the host. The shadow copy LUN will be exposed to the host as a read-write volume. The disk identifiers of all of the shadow copy LUNs will be reverted to that of the original LUNs. However, if any of the original LUNs are present on the system, the operation will fail and none of the identifiers will be reverted. None of the disk identifiers of the shadow copy LUNs will be reverted. The shadow copy LUNs will be converted permanently to read-write. This flag is set only as a notification for the provider; no provider action is required. For more information, see the IVssHardwareSnapshotProviderEx::OnLunStateChange method. The shadow copy LUNs will be converted temporarily to read-write and are about to undergo TxF recovery or VSS auto-recovery. This flag is set only as a notification for the provider; no provider action is required. For more information, see the IVssHardwareSnapshotProviderEx::OnLunStateChange method. The shadow copy LUNs have just undergone TxF recovery or VSS auto-recovery and have been converted back to read-only. This flag is set only as a notification for the provider; no provider action is required. For more information, see the IVssHardwareSnapshotProviderEx::OnLunStateChange method. The provider must mask shadow copy LUNs from this computer. For more information, see the IVssHardwareSnapshotProviderEx::OnLunStateChange method. The interface provides a method that returns an interface to further configure a shadow copy provider. Gets an instance of the differential software snapshot management interface to further configure the system provider. Windows XP: This method is not supported until Windows 2003. An instance of the differential software snapshot management interface to further configure the system provider. Returns the current minimum size of the shadow copy storage area. The shadow copy storage area minimum size is a per-computer setting. Prior to Windows Server 2003 Service Pack 1 (SP1), this was fixed at 100 MB. With Windows Server 2003 SP1, the shadow copy storage area has a minimum size of 300 MB and can be increased in 300 MB increments up to 3000 MB (3 GB). This setting is stored in the MinDiffAreaFileSize value of type REG_DWORD in HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\VolSnap (the value is the size, in MB). Windows XP and Windows 2003: This method is not supported until Windows 2003 SP1. The current minimum size of the shadow copy storage area. Exception thrown to indicate that the requested object did not exists. Initializes a new instance of the class with a system-supplied message describing the error. Initializes a new instance of the class with a specified error message. The message that describes the error Initializes a new instance of the class with a specified error message and a reference to the inner exception that is the cause of this exception. The message that describes the error The exception that is the cause of the current exception. Initializes a new instance of the class. The that holds the serialized object data about the exception being thrown. The that contains contextual information about the source or destination. The parameter is . The class name is or is zero (0). Exception thrown to indicate The system was unable to flush I/O writes. This can be a transient problem. It is recommended to wait ten minutes and try again, up to three times. Initializes a new instance of the class with a system-supplied message describing the error. Initializes a new instance of the class with a specified error message. The message that describes the error Initializes a new instance of the class with a specified error message and a reference to the inner exception that is the cause of this exception. The message that describes the error The exception that is the cause of the current exception. Initializes a new instance of the class. The that holds the serialized object data about the exception being thrown. The that contains contextual information about the source or destination. The parameter is . The class name is or is zero (0). Exception indicating that the resynchronization destination contained a volume that was not explicitly included. Initializes a new instance of the class. Initializes a new instance of the class. The message that describes the error Initializes a new instance of the class. The message that describes the error The exception that is the cause of the current exception. Initializes a new instance of the class. The that holds the serialized object data about the exception being thrown. The that contains contextual information about the source or destination. The parameter is . The class name is or is zero (0). The enumeration is used by a writer at restore time to indicate how all the files included in a selected component, and all the files in any component set it defines, are to be restored. Setting a restore target modifies or overrides the restore method set during backup (see ). For more information see the MSDN documentation on the VSS_RESTORE_TARGET enumeration. No target is defined. This value indicates an error on the part of the writer. This is the default restore target. This value indicates that the restoration of the files included in a selected component (or the component set defined by that component) should proceed according to the original restore method specified at backup time by a value. The files are restored to a location determined from an existing alternate location mapping. The restore target should be set to only when alternate location mappings have been set for all the files managed by a selected component or component set. Use directed targeting by the writer at restore time to restore a file. Directed targeting allows a writer to control, on a file-by-file basis, how a file is restored—indicating how much of a file is to be restored and into which files the backed-up file is to be restored. The files are restored to the location at which they were at backup time, even if the original restore method that was specified at backup time was . Windows Server 2003 and Windows XP: This value is not supported. Interface containing methods for examining and modifying information about components contained in a requester's Backup Components Document. objects can be obtained only for those components that have been explicitly added to the Backup Components Document during a backup operation by the method. Information about components explicitly added during a restore operation using are not available through the interface. For more information, see the MSDN documentation on the IVssComponent Interface. The is used by a writer during incremental or differential restore operations to determine whether a given component will require additional restore operations to completely retrieve it, but can also be called by a requester. If , additional restores will occur for the current component. If , additional restores will not occur. The backup options specified to the writer that manages the currently selected component or component set by a requester using . The backup options for the current writer. The backup stamp string stored by a writer for a given component. The backup stamp indicating the time at which the component was backed up. The status of a complete attempt at backing up all the files of a selected component or component set as a enumeration. if the backup was successful and if it was not. The logical name of this component. The logical name of this component. The type of this component in terms of the enumeration. The type of this component. The status of a completed attempt to restore all the files of a selected component or component set as a enumeration. A value of the enumeration that specifies whether all files were successfully restored. The logical path of this component. The logical path of this component. The failure message generated by a writer while handling the PostRestore event if one was set. The failure message that describes an error that occurred while processing the PostRestore event. The failure message generated by a writer while handling the PreRestore event if one was set. The failure message that describes an error that occurred while processing the PreRestore event. A previous backup stamp loaded by a requester in the Backup Components Document. The value is used by a writer when deciding if files should participate in differential or incremental backup operation. The time stamp of a previous backup so that a differential or incremental backup can be correctly implemented. The restore options specified to the current writer by a requester using . The restore options of the writer. The restore target (in terms of the enumeration) for the current component. Can only be called during a restore operation. A value from the enumeration containing the restore target information. Determines whether the current component has been selected to be restored. If the returned value of this parameter is , the component has been selected to be restored. If , it has not been selected. A collection of mapping information for the file set's alternate location for file restoration. A read-only list containing the alternate location to which files were actually restored. This list must not be accessed after the from which it was obtained has been disposed. See the MSDN documentation on the IVssComponent::GetAlternateLocationMapping method for more information. Information stored by a writer, at backup time, to the Backup Components Document to indicate that when a file is to be restored, it (the source file) should be remapped. The file may be restored to a new restore target and/or ranges of its data restored to different locations with the restore target. A read-only list containing the directed targets of this component. This list must not be accessed after the from which it was obtained has been disposed. The new file restoration locations for the selected component or component set. A read-only list contianing the new file restoration locations for the selected component or component set. This list must not be accessed after the from which it was obtained has been disposed. Information about any partial files associated with this component. A read-only list containing information about any partial files associated with this component. This list must not be accessed after the from which it was obtained has been disposed. Information about the file sets (specified file or files) to participate in an incremental or differential backup or restore as a differenced file — that is, backup and restores associated with it are to be implemented as if entire files are copied to and from backup media (as opposed to using partial files). Windows XP: This method requires Windows Server 2003 or later A read only list containing the diffrenced files associated with this component. This list must not be accessed after the from which it was obtained has been disposed. The subcomponents associated with this component. A read only list containing the subcomponents associated with this component. This list must not be accessed after the from which it was obtained has been disposed. Gets a value indicating whether a requester has marked the restore of a component as authoritative for a replicated data store. if the restore is authoritative; otherwise, . A writer indicates that it supports authoritative restore by setting the flag in its backup schema mask. For more information, see Setting VSS Restore Options. Windows XP and Windows 2003: This property requires Windows Vista or later and will always return on unsupported operating systems. Gets the PostSnapshot failure message string that a writer has set for a given component. Both writers and requesters can call this method. Windows XP and Windows 2003: This property requires Windows Vista or later and will always return on unsupported operating systems. A string containing the failure message that describes an error that occurred while processing a PostSnapshot event, or if no value was set or the method is not supported on the current operating system. Gets the PrepareForBackup failure message string that a writer has set for a given component. A string containing the failure message that describes an error that occurred while processing a PrepareForBackup event, or if no failure message was set for this component, or if the property is not supported on the current operating system. Both writers and requesters can call this method. Windows XP and Windows 2003: This property requires Windows Vista or later and will always return on unsupported operating systems. Obtains the logical name assigned to a component that is being restored. A string containing the restore name for the component, or if the operation is not supported on the current operating system. The property can only be accessed during a restore operation. A writer indicates that it supports this method by setting the flag in its backup schema mask. For more information, see Setting VSS Restore Options. Windows XP and Windows 2003: This property requires Windows Vista or later and will always return on unsupported operating systems. Obtains the restore point for a partial roll-forward operation. A string specifying the roll-forward restore point, or if the property is not supported in the current context. The property can only be accessed during a restore operation. A writer indicates that it supports this method by setting the flag in its backup schema mask. For more information, see Setting VSS Restore Options. Windows XP and Windows 2003: This property requires Windows Vista or later and will always return on unsupported operating systems. Obtains the roll-forward operation type for a component. A enumeration value indicating the type of roll-forward operation to be performed, or if the property is not supported in the current context. The property can only be accessed during a restore operation. A writer indicates that it supports this method by setting the flag in its backup schema mask. For more information, see Setting VSS Restore Options. Windows XP and Windows 2003: This property requires Windows Vista or later and will always return on unsupported operating systems. VSS requesters read this property to retrieve component-level errors reported by writers. VSS writers set this property to report errors at the component level. An instance of containing the information reported by the writer. Minimum supported client: Windows 7, Minimum supported server: Windows Server 2008 R2 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. Represents the status of an asynchronous operation performed by the VSS framework. Cancels an incomplete asynchronous operation. Exception indicating that the creation of a shadow copy is in progress, and only one shadow copy creation operation can be in progress at one time. Either wait to try again or return with a failure. Initializes a new instance of the class with a system-supplied message describing the error. Initializes a new instance of the class with a specified error message. The message that describes the error Initializes a new instance of the class with a specified error message and a reference to the inner exception that is the cause of this exception. The message that describes the error The exception that is the cause of the current exception. Initializes a new instance of the class. The that holds the serialized object data about the exception being thrown. The that contains contextual information about the source or destination. The parameter is . The class name is or is zero (0). Exception indicating that the writer operation failed because of an error that might recur if another shadow copy is created. For more information, see Event and Error Handling Under VSS. Initializes a new instance of the class. Initializes a new instance of the class. The message that describes the error Initializes a new instance of the class. The message that describes the error The exception that is the cause of the current exception. Initializes a new instance of the class. The that holds the serialized object data about the exception being thrown. The that contains contextual information about the source or destination. The parameter is . The class name is or is zero (0). IVssImplementation provides an interface to the global methods of the VSS API compiled for a specific platform. An instance of IVssImplementation can be obtained either by using the factory methods of for dynamically loading the suitable assembly containing the correct implementation (preferred), or by statically referencing the correct platform-specific assembly and manually creating an instance of VssImplementation from that assembly. The CreateVssBackupComponents method creates an interface object for the current implementation and returns a reference to it. The calling application is responsible for calling Dispose" to release the resources held by the instance when it is no longer needed. A reference to the newly created instance. The caller does not have sufficient backup privileges or is not an administrator. Out of memory or other system resources. Unexpected VSS system error. The error code is logged in the event log. The IsVolumeSnapshotted function determines whether any shadow copies exist for the specified volume. Use to determine whether certain volume control or file I/O operations are disabled for the given volume if a shadow copy of it exists. Name of the volume. The name of the volume to be checked must be in one of the following formats: The path of a volume mount point with a backslash (\) A drive letter with backslash (\), for example, D:\ A unique volume name of the form \\?\Volume{GUID}\ (where GUID is the unique global identifier of the volume) with a backslash (\) true if the volume has a shadow copy, and false if the volume does not have a shadow copy. One of the parameters is not valid. The caller does not have sufficient backup privileges or is not an administrator. Out of memory or other system resources. Unexpected VSS system error. The error code is logged in the event log. Expected provider error. The provider logged the error in the event log. The specified volume was not found. Unexpected provider error. The error code is logged in the event log file. Determines whether certain volume control or file I/O operations are disabled for the given volume if a shadow copy of it exists. Name of the volume. The name of the volume to be checked must be in one of the following formats: The path of a volume mount point with a backslash (\) A drive letter with backslash (\), for example, D:\ A unique volume name of the form \\?\Volume{GUID}\ (where GUID is the unique global identifier of the volume) with a backslash (\) A bit mask (or bitwise OR) of values that indicates whether certain volume control or file I/O operations are disabled for the given volume if a shadow copy of it exists. Use to determine whether a snapshot exists for the specified volume or not. If no volume control or file I/O operations are disabled for the selected volume, then the shadow copy capability of the selected volume returned will . One of the parameters is not valid. The caller does not have sufficient backup privileges or is not an administrator. Out of memory or other system resources. Unexpected VSS system error. The error code is logged in the event log. Expected provider error. The provider logged the error in the event log. The specified volume was not found. Unexpected provider error. The error code is logged in the event log file. Checks the registry for writers that should block revert operations on the specified volume. The name of the volume. The name must be in one of the following formats: The path of a volume mount point with a backslash (\) A drive letter with backslash (\), for example, D:\ A unique volume name of the form \\?\Volume{GUID}\ (where GUID is the unique global identifier of the volume) with a backslash (\) if the volume contains components from any writers that are listed in the registry as writers that should block revert operations; otherwise, The CreateVssExamineWriterMetadata function creates a new instance from an XML document for the current implementation. A string containing a Writer Metadata Document with which to initialize the returned object. This method attempts to load the returned object with metadata previously stored by a call to . Users should not tamper with this metadata document. a instance initialized with the specified XML document. Gets a snapshot management interface for the current implementation. A snapshot management interface for the current implementation. The enumeration is used by a requester to indicate the type of restore operation it is about to perform. A requester sets the type of a restore operation using . No restore type is defined. This indicates an error on the part of the requester. The default restore type: A requester restores backed-up data to the original volume from a backup medium. A requester does not copy data from a backup medium, but imports a transportable shadow copy and uses this imported volume for operations such as data mining. Windows Server 2003, Standard Edition and Windows Server 2003, Web Edition: This value is not supported. All editions of Windows Server 2003 SP1 support this value. A restore type not currently enumerated. This value indicates an application error. Exception indicating that this version of the hardware provider does not support this operation. Initializes a new instance of the class. Initializes a new instance of the class. The message that describes the error Initializes a new instance of the class. The message that describes the error The exception that is the cause of the current exception. Initializes a new instance of the class. The that holds the serialized object data about the exception being thrown. The that contains contextual information about the source or destination. The parameter is . The class name is or is zero (0). The class contains the properties of a shadow copy source volume. Initializes a new instance of the class. Name of the volume. Display name of the volume. Gets the volume name, in \\?\Volume{GUID}\ format. The volume name, in \\?\Volume{GUID}\ format. Gets a string that can be displayed to the user containing the shortest mount point (for example C:\). A string that can be displayed to the user containing the shortest mount point (for example C:\). The structure describes a shadow copy storage area volume. Initializes a new instance of the class. Name of the volume. Display name of the volume. The volume free space. The volume total space. Gets the shadow copy storage area volume name, in \\?\Volume{GUID}\ format. The shadow copy storage area volume name, in \\?\Volume{GUID}\ format. Gets a string that can be displayed to a user, for example C:\, for the shadow copy storage area volume. A string that can be displayed to a user, for example C:\, for the shadow copy storage area volume. Gets the free space, in bytes, on the shadow copy storage area volume. The free space, in bytes, on the shadow copy storage area volume. Gets the total space, in bytes, on the shadow copy storage area volume. The total space, in bytes, on the shadow copy storage area volume.. Exception class indicating that the vss object referenced was not in a correct state for the requested operation. Initializes a new instance of the class. Initializes a new instance of the class with the specified error message. The error message. Initializes a new instance of the class with the specified error message and a reference to the inner exception that is the cause of this exception. The error message. The inner exception. Initializes a new instance of the class with serialized data. The that holds the serialized object data about the exception being thrown. The that contains contextual information about the source or destination. The parameter is . The class name is or is zero (0). The enumeration specifies the type of data that a writer manages. The source of the data is not known.This indicates a writer error, and the requester should report it. The source of the data is a database that supports transactions, such as Microsoft SQL Server. The source of the data is a database that does not support transactions. Unclassified source type—data will be in a file group. This is the default source type. The enumeration enables a requester using to specify how a shadow copy is to be created, queried, or deleted and the degree of writer involvement. ::SetContext" method) may be modified by a bitmask that contains a valid combination of and enumeration values. is defined as a static class defining the base combination of values representing the VSS_CTX_XXXXXX constants defined in the VSS API. The standard backup context. Specifies an auto-release, nonpersistent shadow copy in which writers are involved in the creation. Specifies a nonpersistent and auto-release shadow copy created without writer involvement. Specifies a persistent and non-auto-release shadow copy without writer involvement. This context should be used when there is no need for writer involvement to ensure that files are in a consistent state at the time of the shadow copy. Lightweight automated file rollback mechanisms or persistent shadow copies of file shares or data volumes that are not expected to contain any system-related files or databases might run under this context. For example, a requester could use this context for creating a shadow copy of a NAS volume hosting documents and simple user shares. Those types of data do not need writer involvement to create a consistent shadow copy. Specifies a persistent and non-auto-release shadow copy with writer involvement. This context is designed to be used when writers are needed to ensure that files are in a well-defined state prior to shadow copy. Automated file rollback mechanisms of system volumes and shadow copies to be used in data mining or restore operations might run under this context. This context is similar to VSS_CTX_BACKUP but allows a requester more control over the persistence of the shadow copy. Specifies a read-only, client-accessible shadow copy supporting Shadow Copies for Shared Folders and created without writer involvement. Only the system provider (the default provider available on the system) can create this type of shadow copy. Most requesters will want to use the context for persistent, non-auto-release shadow copies without writer involvement. Specifies a read-only, client-accessible shadow copy supporting Shadow Copies for Shared Folders and created with writer involvement. Only the system provider (the default provider available on the system) can create this type of shadow copy. Most requesters will want to use the context for persistent, non-auto-release shadow copies with writer involvement. Windows Server 2003 and Windows XP: This context is not supported by Windows Server 2003 and Windows XP. All types of currently live shadow copies are available for administrative operations, such as shadow copy queries (see the Query method in ). is a valid context for all VSS interfaces except ::StartSnapshotSet and ::DoSnapshotSet. The enumeration specifies the provider type. The provider type is unknown. This indicates an error in the application or the VSS service, or that no provider is available. The default provider that ships with Windows. A software-based provider. A hardware-based provider. Used by a requester to specify how a resynchronization operation is to be performed. No options. After the resynchronization operation is complete, the signature of each target LUN should be identical to that of the original LUN that was used to create the shadow copy. Volume safety checks should not be performed. is used to determine the writer ID, logical path, and component name of components that must be restored or backed up along with the target component. Note that a dependency does not indicate an order of preference between the component with the documented dependencies and the components it depends on. A dependency merely indicates that the component and the components it depends on must always be backed up or restored together. Windows XP: This class is not supported until Windows Server 2003 Initializes a new instance of the class. The writer id. The logical path. Name of the component. The class ID of a writer containing a component that the current component depends on. The logical path of a component that the current component depends on. Retrieves the name of a component that the current component depends on. A strongly-typed resource class, for looking up localized strings, etc. Returns the cached ResourceManager instance used by this class. Overrides the current thread's CurrentUICulture property for all resource lookups using this strongly typed resource class. Looks up a localized string similar to AlphaVSS requires at least Windows XP.. Looks up a localized string similar to Another LUN resynchronization operation is already in progress.. Looks up a localized string similar to An unexpected error occurred. The error code is logged in the error log file.. Looks up a localized string similar to An unexpected error occurred during communication with writers.. Looks up a localized string similar to Deletion of snapshot failed. See inner exception for details. . Looks up a localized string similar to Deletion of snapshots failed. Looks up a localized string similar to Expected provider error. Check the event log for details.. Looks up a localized string similar to Failed to detect architecture of running operating system.. Looks up a localized string similar to IA64 architecture is not supported.. Looks up a localized string similar to Invalid XML document. Check the event log for details.. Looks up a localized string similar to The maximum number of shadow copy storage areas has been added to the shadow copy source volume.. Looks up a localized string similar to The requested operation is not supported on the current operating system.. Looks up a localized string similar to System was unable to freeze the Distributed Transaction Coordinator (DTC) or the Kernel Transaction Manager (KTM). Looks up a localized string similar to The creation of a shadow copy is already in progress.. Looks up a localized string similar to The maximum number of volumes has already been added to the shadow copy set.. Looks up a localized string similar to The operation is not supported under the current context.. Looks up a localized string similar to The provider encountered an error that requires the user to restart the computer.. Looks up a localized string similar to The provider returned an unexpected error code.. Looks up a localized string similar to The requested identifier does not correspond to a registered provider.. Looks up a localized string similar to The requested object does not exist.. Looks up a localized string similar to The requested object was a duplicate.. Looks up a localized string similar to The system or provider has insufficient storage space. If possible delete any old or unnecessary persistent shadow copies and try again.. Looks up a localized string similar to The system was unable to flush I/O writes. This can be a transient problem. It is recommended to wait ten minutes and try again, up to three times.. Looks up a localized string similar to The system was unable to hold I/O writes. This can be a transient problem. It is recommended to wait ten minutes and try again, up to three times. Looks up a localized string similar to The volume already has a revert in progress.. Looks up a localized string similar to The volume does not support the requested operation, or no provider supports it.. Looks up a localized string similar to The volume has already been added to the maximum number of shadow copy sets.. Looks up a localized string similar to The volume is not supported by the specified provider.. Looks up a localized string similar to The volume was in use and could not be locked.. Looks up a localized string similar to The VSS object was in an incorrect state for the requested operation.. Looks up a localized string similar to The writer infrastructure is not operating properly. Check that the Event Service and VSS have been started, and check for errors associated with those services in the error log.. Looks up a localized string similar to The writer is not responding.. Looks up a localized string similar to This operation requires {0}{1}. Detected operating system was: {2}{3}.. Looks up a localized string similar to This operation requires {0}{1} or later. Detected operating system was: {2}{3}.. Looks up a localized string similar to This operation requires {0}. Detected operating system was: {1}.. Looks up a localized string similar to This operation requires {0} or later. Detected operating system was: {1}.. Looks up a localized string similar to This operation requires {0} with at least Service Pack {1}. Detected operating system was: {2}{3}.. Looks up a localized string similar to This operation requires {0} with at least Service Pack {1}, or {2} with at least service pack {3}. Detected operating system was: {4}{5}.. Looks up a localized string similar to This version of the hardware provider does not support this operation.. Looks up a localized string similar to Unexpected system error.. Looks up a localized string similar to The requested method is not supported on the current operating system, or the loaded assembly is targeted for a different operating system than the one on which it is running.. Looks up a localized string similar to The MBR signature or GPT ID for one or more disks could not be set to the intended value. Check the Application event log for more information.. Looks up a localized string similar to The shadow copy contains only a subset of the volumes needed by the writer to correctly back up the application component.. Looks up a localized string similar to The writer operation failed because of an error that might recur if another shadow copy is created.. Looks up a localized string similar to The writer ran out of memory or other system resources.. Looks up a localized string similar to The writer is reporting one or more component-level errors.. Looks up a localized string similar to The writer failed due to an error that would likely not occur if the entire backup, restore, or shadow copy creation process was restarted. Looks up a localized string similar to The specified snapshot specifies a shadow copy that does not exist in the Backup Components Document.. Looks up a localized string similar to The writer operation failed because of a time-out between the Freeze and Thaw events.. Looks up a localized string similar to The resynchronization destination contained a volume that was not explicitly included.. Looks up a localized string similar to Writer status is not available for one or more writers. A writer may have reached the maximum number of available backup and restore sessions.. is a class that allows access to component information stored in a Writer Metadata Document. Instances of are obtained by enumerating . Gets a buffer containing the binary data for a displayable icon representing the component. The buffer contents should use the same format as the standard icon (.ico) files. If the writer that created the component did not choose to specify an icon, the value will be . A buffer containing the binary data for a displayable icon representing the component. The component type. The logical path of the component. A string containing the logical path of the component, which may be . There are no restrictions on the characters that can appear in a non-NULL logical path. The name of the component. A component name string cannot be . The description of the component. A caption string can be . Boolean that indicates whether there is private metadata associated with the restoration of the component. The Boolean is if there is private metadata associated with the restoration of the components, and if there is not. Reserved for future use. Boolean that indicates (for component mode operations) if the component is selectable for backup. The value of helps determine whether a requester has the option of including or excluding a given component in backup operations. if the component is selectable for backup and if it is not. VSS_COMPONENTINFO structure on MSDN Boolean that indicates (for component-mode operations) whether the component is selectable for restore. allows the requester to determine whether this component can be individually selected for restore if it had earlier been implicitly included in the backup. Windows XP: This requires Windows Server 2003 or later. It will always return false on earlier operating systems. The Boolean is if the component is selectable for restore and if it is not. A bit mask (or bitwise OR) of values of the enumeration, indicating the features this component supports. Windows Server 2003 and Windows XP: Before Windows Server 2003 SP1, this member is reserved for system use and will always return . The file descriptors associated with this component. This collection represents the method GetFile() of IVssWMComponent in the VSS API A list of instances containing information about the database backup component files. A list of file descriptors for the log files associated with the specified database backup component. A list of instances containing accessors for obtaining information about explicit writer-component dependencies of one of the current components. This will always be an empty list on operating systems earlier than Windows Server 2003. The interface contains methods that allow applications to query and manage shadow copy storage areas generated by the system shadow copy provider. Windows XP: This interface requires Windows Server 2003 or later. The method adds a shadow copy storage area association for the specified volume. If the association is not supported, an exception will be thrown. Name of the volume that will be the source of shadow copies that is to be associated with a shadow copy storage area on the volume. The name of the volume must be in one of the following formats: The path of a volume mount point with a backslash (\) A drive letter with backslash (\), for example, D:\ A unique volume name of the form \\?\Volume{GUID}\ (where GUID is the unique global identifier of the volume) with a backslash (\) Name of the volume that will contain the shadow copy storage area to be associated with the volume. The name of the volume must be in one of the following formats: The path of a volume mount point with a backslash (\) A drive letter with backslash (\), for example, D:\ A unique volume name of the form \\?\Volume{GUID}\ (where GUID is the unique global identifier of the volume) with a backslash (\) Specifies the maximum size, in bytes, of the shadow copy storage area on the volume. This value must be at least 300 MB, up to the system-wide limit. Windows Server 2003: Prior to Windows Server 2003 SP1 the shadow copy storage area size was fixed at 100 MB. Windows XP: This method is not supported until Windows Server 2003. Caller does not have sufficient backup privileges or is not an administrator. The caller is out of memory or other system resources. One of the parameter values is not valid. One of the arguments was Unexpected error. The error code is logged in the error log file. The association between the and volumes already exists. Expected provider error. The provider logged the error in the event log. The volume is not NTFS or has insufficient free space. The maximum number of shadow copy storage areas has been added to the shadow copy source volume. The specified shadow copy storage volume was not associated with the specified shadow copy source volume. The method updates the shadow copy storage area maximum size for a certain volume. This may not have an immediate effect. Updates the shadow copy storage area maximum size for a certain volume. This method has two overloads. Name of the volume that is the source of shadow copies that are associated with a shadow copy storage area on the volume. The name of the volume must be in one of the following formats: The path of a volume mount point with a backslash (\) A drive letter with backslash (\), for example, D:\ A unique volume name of the form \\?\Volume{GUID}\ (where GUID is the unique global identifier of the volume) with a backslash (\) Name of the volume that contains the shadow copy storage area associated with the volume. The name of the volume must be in one of the following formats: The path of a volume mount point with a backslash (\) A drive letter with backslash (\), for example, D:\ A unique volume name of the form \\?\Volume{GUID}\ (where GUID is the unique global identifier of the volume) with a backslash (\) Specifies the maximum size, in bytes, for the shadow copy storage area to use for the volume. If this value is zero, the shadow copy storage area will be disabled. Caller does not have sufficient backup privileges or is not an administrator. The caller is out of memory or other system resources. One of the parameter values is not valid. One of the arguments was Unexpected error. The error code is logged in the error log file. The association between the and volumes was not found. Expected provider error. The provider logged the error in the event log. The volume does not have sufficient free space. A shadow copy is currently using the shadow copy storage area. The method queries shadow copy storage areas in use by the original volume associated with the input shadow copy. The snapshot id. A list of describing the shadow copy storage areas in use by the shadow copy specified. Caller does not have sufficient backup privileges or is not an administrator. The caller is out of memory or other system resources. One of the parameter values is not valid. One of the arguments was Unexpected error. The error code is logged in the error log file. Expected provider error. The provider logged the error in the event log. The method queries shadow copy storage areas in use by the volume specified. Name of the volume that contains shadow copy storage areas. The name of the volume must be in one of the following formats: The path of a volume mount point with a backslash (\) A drive letter with backslash (\), for example, D:\ A unique volume name of the form \\?\Volume{GUID}\ (where GUID is the unique global identifier of the volume) with a backslash (\) A list containing objects describing the shadow copy storage areas in use by the volume specified. Caller does not have sufficient backup privileges or is not an administrator. The caller is out of memory or other system resources. One of the parameter values is not valid. One of the arguments was Unexpected error. The error code is logged in the error log file. Expected provider error. The provider logged the error in the event log. The method queries shadow copy storage areas that physically reside on the given volume Name of the volume that contains shadow copy storage areas. The name of the volume must be in one of the following formats: The path of a volume mount point with a backslash (\) A drive letter with backslash (\), for example, D:\ A unique volume name of the form \\?\Volume{GUID}\ (where GUID is the unique global identifier of the volume) with a backslash (\) A list of objects describing the shadow copy storage areas that physically reside on the given volume. Caller does not have sufficient backup privileges or is not an administrator. The caller is out of memory or other system resources. One of the parameter values is not valid. One of the arguments was Unexpected error. The error code is logged in the error log file. Expected provider error. The provider logged the error in the event log. The method queries volumes that support shadow copy storage areas (including volumes with disabled shadow copy storage areas). Name of the original volume that is the source of the shadow copies. The name of the volume must be in one of the following formats: The path of a volume mount point with a backslash (\) A drive letter with backslash (\), for example, D:\ A unique volume name of the form \\?\Volume{GUID}\ (where GUID is the unique global identifier of the volume) with a backslash (\) A list of describing the volumes that support shadow copy storage areas (including volumes with disabled shadow copy storage areas). Caller does not have sufficient backup privileges or is not an administrator. The caller is out of memory or other system resources. One of the parameter values is not valid. One of the arguments was Unexpected error. The error code is logged in the error log file. Expected provider error. The provider logged the error in the event log. The method updates the shadow copy storage area maximum size for a certain volume. This may not have an immediate effect. Name of the volume that is the source of shadow copies that are associated with a shadow copy storage area on the volume. The name of the volume must be in one of the following formats: The path of a volume mount point with a backslash (\) A drive letter with backslash (\), for example, D:\ A unique volume name of the form \\?\Volume{GUID}\ (where GUID is the unique global identifier of the volume) with a backslash (\) Name of the volume that contains the shadow copy storage area associated with the volume. The name of the volume must be in one of the following formats: The path of a volume mount point with a backslash (\) A drive letter with backslash (\), for example, D:\ A unique volume name of the form \\?\Volume{GUID}\ (where GUID is the unique global identifier of the volume) with a backslash (\) Specifies the maximum size, in bytes, for the shadow copy storage area to use for the volume. If this value is zero, the shadow copy storage area will be disabled. to indicate that the effect of calling the method should not continue if the computer is rebooted; otherwise, . If the parameter is zero, the parameter must be . Caller does not have sufficient backup privileges or is not an administrator. The caller is out of memory or other system resources. One of the parameter values is not valid. One of the arguments was Unexpected error. The error code is logged in the error log file. The association between the and volumes was not found. Expected provider error. The provider logged the error in the event log. The volume does not have sufficient free space. A shadow copy is currently using the shadow copy storage area. Clears the protection fault state for the specified volume. Name of the volume that will be the source of shadow copies that is to be associated with a shadow copy storage area on the volume. The name of the volume. This parameter is required and cannot be . The name of the volume must be in one of the following formats: The path of a volume mount point with a backslash (\) A drive letter with backslash (\), for example, D:\ A unique volume name of the form \\?\Volume{GUID}\ (where GUID is the unique global identifier of the volume) with a backslash (\) The method dismounts the volume and resets the volume's protection fault member to to allow normal I/O to continue on the volume. If the volume is not in a faulted state, this method does nothing. Windows XP, Windows Server 2003 and Windows Vista: This method requires Windows Server 2008. Caller does not have sufficient backup privileges or is not an administrator. The caller is out of memory or other system resources. One of the parameter values is not valid. One of the arguments was The provider for the volume does not support shadow copy protection. Expected provider error. The provider logged the error in the event log. The specified volume was not found. Deletes all shadow copy storage areas (also called diff areas) on the specified volume that are not in use. The name of the volume. This parameter is required and cannot be . The name of the volume must be in one of the following formats: The path of a volume mount point with a backslash (\) A drive letter with backslash (\), for example, D:\ A unique volume name of the form \\?\Volume{GUID}\ (where GUID is the unique global identifier of the volume) with a backslash (\) Unused shadow copy storage area files are found on storage area volumes when the associated original volume is offline due to a protection fault. In certain cases, the original volume may be permanently lost, and calling the method is the only way to recover the abandoned storage area space. Windows XP, Windows Server 2003 and Windows Vista: This method requires Windows Server 2008. Caller does not have sufficient backup privileges or is not an administrator. The caller is out of memory or other system resources. One of the parameter values is not valid. One of the arguments was The provider for the volume does not support shadow copy protection. Expected provider error. The provider logged the error in the event log. The specified volume was not found. Gets the shadow copy protection level and status for the specified volume. The name of the volume. This parameter is required and cannot be . The name of the volume must be in one of the following formats: The path of a volume mount point with a backslash (\) A drive letter with backslash (\), for example, D:\ A unique volume name of the form \\?\Volume{GUID}\ (where GUID is the unique global identifier of the volume) with a backslash (\) A class instance that contains information about the volume's shadow copy protection level. Caller does not have sufficient backup privileges or is not an administrator. The caller is out of memory or other system resources. One of the parameter values is not valid. One of the arguments was The provider for the volume does not support shadow copy protection. Expected provider error. The provider logged the error in the event log. The specified volume was not found. Windows XP, Windows Server 2003 and Windows Vista: This method requires Windows Server 2008. The method gets information about the volume's current protection level. If the volume is in a faulted state, the member of the structure contains the current protection fault, and the member contains the reason why the volume is in a faulted state. If the volume is not in a faulted state, the and members will be zero. Sets the shadow copy protection level for an original volume or a shadow copy storage area volume. The name of the volume. This parameter is required and cannot be . The name of the volume must be in one of the following formats: The path of a volume mount point with a backslash (\) A drive letter with backslash (\), for example, D:\ A unique volume name of the form \\?\Volume{GUID}\ (where GUID is the unique global identifier of the volume) with a backslash (\) A value from the enumeration that specifies the shadow copy protection level. Caller does not have sufficient backup privileges or is not an administrator. The caller is out of memory or other system resources. One of the parameter values is not valid. One of the arguments was The provider for the volume does not support shadow copy protection. Expected provider error. The provider logged the error in the event log. The specified volume was not found. The method checks the current shadow copy protection level of the volume. If the volume is in a faulted state and is specified for the parameter, dismounts the volume before setting the protection level. If the current protection level of the volume is the same as the value of the parameter, does nothing. Windows XP, Windows Server 2003 and Windows Vista: This method requires Windows Server 2008. The class is used by a requester to poll writers about file status and to run backup/restore operations. A object can be used for only a single backup, restore, or Query operation. After the backup, restore, or Query operation has either successfully finished or been explicitly terminated, a requester must release the object by calling Dispose(). A object must not be reused. For example, you cannot perform a backup or restore operation with the same object that you have already used for a Query operation. For information on how to retrieve an instance of for the current operating system, see and . The AbortBackup method notifies VSS that a backup operation was terminated. This method must be called if a backup operation terminates after the creation of a shadow copy set with and before returns. If AbortBackup is called and no shadow copy or backup operations are underway, it is ignored. Out of memory or other system resources. Unexpected VSS system error. The error code is logged in the event log. The backup components object is not initialized. The AddAlternativeLocationMapping method is used by a requester to indicate that an alternate location mapping was used to restore all the members of a file set in a given component. Globally unique identifier (GUID) of the writer class that exported the component. Type of the component. String containing the logical path to the component. The logical path can be . There are no restrictions on the characters that can appear in a non-null logical path. The component name. The path to the directory that originally contained the file to be relocated. This path must be local to the VSS machine. The path can contain environment variables (for example, %SystemRoot%) but cannot contain wildcard characters. UNC paths are not supported. There is no requirement that the path end with a backslash ("\"). It is up to applications that retrieve this information to check. String containing the original file specification. A file specification cannot contain directory specifications (for example, no backslashes) but can contain the ? and * wildcard characters. Boolean indicating whether the path specified by the parameter identifies only a single directory or if it indicates a hierarchy of directories to be traversed recursively. The Boolean is true if the path is treated as a hierarchy of directories to be traversed recursively and false if not. The name of the directory where the file will be relocated. This path must be local to the VSS machine. UNC paths are not supported. One of the parameters is not valid. Out of memory or other system resources. Unexpected VSS system error. The error code is logged in the event log. 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. The XML document is not valid. Check the event log for details. The specified component does not exist. The AddComponent method is used to explicitly add to the backup set in the Backup Components Document all required components (nonselectable for backup components without a selectable for backup ancestor), and such optional (selectable for backup) components as the requester considers necessary. Members of component sets (components with a selectable for backup ancestor) are implicitly included in the backup set, but are not explicitly added to the Backup Components Document. Identifies a specific instance of a writer. Writer class identifier. Identifies the type of the component. String containing the logical path of the selectable for backup component. A logical path is not required when adding a component. Therefore, the value of this parameter can be . There are no restrictions on the characters that can a logical path. String containing the name of the selectable for backup component. The value of this parameter cannot be . There are no restrictions on the characters that can appear in a logical path. One of the parameters is not valid. Out of memory or other system resources. Unexpected VSS system error. The error code is logged in the event log. 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. The XML document is not valid. Check the event log for details. The object is a duplicate. A component with the same logical path and component name already exists. The AddNewTarget method is used by a requester during a restore operation to indicate that the backup application plans to restore files to a new location. Globally unique identifier (GUID) of the writer class containing the files that are to receive a new target. Identifies the type of the component, see the documentation for for more information. String containing the logical path of the component containing the files that are to receive a new restore target. The value of the string containing the logical path used here should be the same as was used when the component was added to the backup set using . The logical path can be . There are no restrictions on the characters that can appear in a non-null logical path. The name of the component containing the files that are to receive a new restore target. The string should not be and should contain the same component name as was used when the component was added to the backup set using . There are no restrictions on the characters that can appear in a non-NULL logical path. The name of the directory or directory hierarchy containing the files to receive a new restore target. The path can contain environment variables (for example, %SystemRoot%) but cannot contain wildcard characters. There is no requirement that the path end with a backslash ("\"). It is up to applications that retrieve this information to check. The file specification of the files to receive a new restore target. A file specification cannot contain directory specifications (for example, no backslashes) but can contain the ? and * wildcard characters. Boolean indicating whether only the files in the directory defined by and matching the file specification provided by are to receive a new restore target, or if all files in the hierarchy defined by and matching the file specification provided by are to receive a new restore target. The fully qualified path of the new restore target directory. This method is not supported on Windows XP One of the parameters is not valid. Out of memory or other system resources. Unexpected VSS system error. The error code is logged in the event log. 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. The component does not exist or the path and file specification do not match a component and file specification in the component. The XML document is not valid. Check the event log for details. The operation is not supported on the current operating system. The AddRestoreSubcomponent method indicates that a Subcomponent member of a component set, which had been marked as nonselectable for backup but is marked selectable for restore, is to be restored irrespective of whether any other member of the component set will be restored. Globally unique identifier (GUID) of the writer class containing the files that are to receive a new target. Identifies the type of the component, see the documentation for for more information. String containing the logical path of the component in the backup document that defines the backup component set containing the Subcomponent to be added for restore. The logical path can be . There are no restrictions on the characters that can appear in a non-null logical path. The logical path of the component in the backup document that defines the backup component set containing the Subcomponent to be added for restore. The string should not be and should contain the same component name as was used when the component was added to the backup set using . There are no restrictions on the characters that can appear in a non-NULL component name. The logical path of the Subcomponent to be added for restore. A logical path is required when adding a Subcomponent. Therefore, the value of this parameter cannot be . There are no restrictions on the characters that can appear in a non-NULL logical path. The logical name of the Subcomponent to be added for restore. The value of this parameter cannot be . There are no restrictions on the characters that can appear in a non-NULL component name. One of the parameters is not valid. Out of memory or other system resources. Unexpected VSS system error. The error code is logged in the event log. 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. The component does not exist. The XML document is not valid. Check the event log for details. The method adds an original volume to the shadow copy set. String containing the name of the volume to be shadow copied. The name must be in one of the following formats: The path of a volume mount point with a backslash (\) A drive letter with backslash (\), for example, D:\ A unique volume name of the form "\\?\Volume{GUID}\" (where GUID is the unique global identifier of the volume) with a backslash (\) The provider to be used. can be used, in which case the default provider will be used. Identifier of the added shadow copy. The maximum number of shadow copies in a single shadow copy set is 64. If is , the default provider is selected according to the following algorithm: If any hardware-based provider supports the given volume, it is selected. If there is no hardware-based provider available, if any software-based provider supports the given volume, it is selected. If there is no hardware-based provider or software-based provider available, the system provider is selected. (There is only one preinstalled system provider, which must support all nonremovable local volumes.) Caller does not have sufficient backup privileges or is not an administrator. One of the parameters is not valid. Out of memory or other system resources. Unexpected VSS system error. The error code is logged in the event log. 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. The maximum number of volumes has been added to the shadow copy set. The specified volume was not added to the shadow copy set. The volume has been added to the maximum number of shadow copy sets. The specified volume was not added to the shadow copy set. does not correspond to an existing volume. does not correspond to a registered provider. Expected provider error. The provider logged the error in the event log. The value of the parameter is and no VSS provider indicates that it supports the specified volume. The volume is not supported by the specified provider. The provider returned an unexpected error code. The method adds an original volume to the shadow copy set using the default provider. String containing the name of the volume to be shadow copied. The name must be in one of the following formats: The path of a volume mount point with a backslash (\) A drive letter with backslash (\), for example, D:\ A unique volume name of the form "\\?\Volume{GUID}\" (where GUID is the unique global identifier of the volume) with a backslash (\) Identifier of the added shadow copy. The maximum number of shadow copies in a single shadow copy set is 64. Caller does not have sufficient backup privileges or is not an administrator. One of the parameters is not valid. Out of memory or other system resources. Unexpected VSS system error. The error code is logged in the event log. 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. The maximum number of volumes has been added to the shadow copy set. The specified volume was not added to the shadow copy set. The volume has been added to the maximum number of shadow copy sets. The specified volume was not added to the shadow copy set. does not correspond to an existing volume. Expected provider error. The provider logged the error in the event log. No VSS provider indicates that it supports the specified volume. The volume is not supported by the specified provider. The provider returned an unexpected error code. This method causes VSS to generate a BackupComplete event, which signals writers that the backup process has completed. Out of memory or other system resources. Unexpected VSS system error. The error code is logged in the event log. 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. An unexpected error occurred during communication with writers. The error code is logged in the error log file. This method asynchronously causes VSS to generate a BackupComplete event, which signals writers that the backup process has completed. Pass the value returned to the method to release operating system resources used for this asynchronous operation. must be called once for every call to . You can do this either by using the same code that called BeginBackupComplete or in a callback passed to BeginBackupComplete. An optional asynchronous callback, to be called when the read is complete. A user-provided object that distinguishes this particular asynchronous read request from other requests. An instance that represents this asynchronous operation. Waits for a pending asynchronous operation to complete. EndBackupComplete can be called once on every from . The reference to the pending asynchronous request to finish. Out of memory or other system resources. Unexpected VSS system error. The error code is logged in the event log. 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. An unexpected error occurred during communication with writers. The error code is logged in the error log file. The BreakSnapshotSet method causes the existence of a shadow copy set to be "forgotten" by VSS. The BreakSnapshotSet method causes the existence of a shadow copy set to be "forgotten" by VSS. Shadow copy set identifier. BreakSnapshotSet can be used only for shadow copies created by a hardware shadow copy provider. This method makes these shadow copies regular volumes. The caller does not have sufficient backup privileges or is not an administrator. One of the parameters is not valid. Out of memory or other system resources. Unexpected VSS system error. The error code is logged in the event log. The shadow copy was created by a software provider and cannot be broken. The specified shadow copy does not exist. The DeleteSnapshot method deletes a shadow copy.. Identifier of the shadow copy to be deleted. If the value of this parameter is , the provider will do everything possible to delete the shadow copy. If it is , no additional effort will be made. The requester is responsible for serializing the delete shadow copy operation. During a backup, shadow copies are automatically released as soon as the instance is disposed. In this case, it is not necessary to explicitly delete shadow copies. The caller does not have sufficient backup privileges or is not an administrator. One of the parameters is not valid. Out of memory or other system resources. Unexpected VSS system error. The error code is logged in the event log. The specified shadow copy does not exist. Expected provider error. The provider logged the error in the event log. Unexpected provider error. The error code is logged in the error log. The DeleteSnapshotSet method deletes a shadow copy set including any shadow copies in that set. Identifier of the shadow copy set to be deleted. If the value of this parameter is , the provider will do everything possible to delete the shadow copies in a shadow copy set. If it is , no additional effort will be made. Multiple shadow copies in a shadow copy set are deleted sequentially. If an error occurs during one of these individual deletions, DeleteSnapshotSet will throw an exception immediately; no attempt will be made to delete any remaining shadow copies. The identifier of the undeleted shadow copy can be found in the instance of thrown. The requester is responsible for serializing the delete shadow copy operation. During a backup, shadow copies are automatically released as soon as the instance is disposed. In this case, it is not necessary to explicitly delete shadow copies. The deletion failed. This is the only exception actually thrown by this method. It wraps one of the other exceptions listed in this section as its inner exception. The caller does not have sufficient backup privileges or is not an administrator. One of the parameters is not valid. Out of memory or other system resources. Unexpected VSS system error. The error code is logged in the event log. The specified shadow copy does not exist. Expected provider error. The provider logged the error in the event log. Unexpected provider error. The error code is logged in the error log. The total number of snapshots that were deleted This method prevents a specific class of writers from receiving any events. An array containing one or more writer class identifiers. The caller does not have sufficient backup privileges or is not an administrator. One of the parameters is not valid. Out of memory or other system resources. Unexpected VSS system error. The error code is logged in the event log. 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. This method disables a specified writer instance or instances. An array containing one or more writer instance identifiers. The caller does not have sufficient backup privileges or is not an administrator. One of the parameters is not valid. Out of memory or other system resources. Unexpected VSS system error. The error code is logged in the event log. 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. Commits all shadow copies in this set simultaneously. The caller does not have sufficient backup privileges or is not an administrator. Out of memory or other system resources. Unexpected VSS system error. The error code is logged in the event log. The backup components object has not been initialized or the prerequisite calls for a given shadow copy context have not been made prior to calling DoSnapshotSet. The system or provider has insufficient storage space. If possible delete any old or unnecessary persistent shadow copies and try again. The system was unable to flush I/O writes. This can be a transient problem. It is recommended to wait ten minutes and try again, up to three times. The system was unable to hold I/O writes. This can be a transient problem. It is recommended to wait ten minutes and try again, up to three times. The provider was unable to perform the request at this time. This can be a transient problem. It is recommended to wait ten minutes and try again, up to three times. The provider encountered an error that requires the user to restart the computer. Windows Server 2003 and Windows XP: This value is not supported until Windows Vista. The system was unable to freeze the Distributed Transaction Coordinator (DTC) or the Kernel Transaction Manager (KTM). Windows Server 2003 and Windows XP: This value is not supported until Windows Vista. The system was unable to freeze the Distributed Transaction Coordinator (DTC) or the Kernel Transaction Manager (KTM). Windows Server 2003 and Windows XP: This value is not supported until Windows Vista. The provider returned an unexpected error code. This can be a transient problem. It is recommended to wait ten minutes and try again, up to three times. Commits all shadow copies in this set simultaneously as an asynchronous operation. An optional asynchronous callback, to be called when the read is complete. A user-provided object that distinguishes this particular asynchronous read request from other requests. An instance that represents this asynchronous operation. Pass the value returned to the method to release operating system resources used for this asynchronous operation. must be called once for every call to . You can do this either by using the same code that called BeginDoSnapshotSet or in a callback passed to BeginDoSnapshotSet. Waits for a pending asynchronous operation to complete. EndDoSnapshotSet can be called once on every from . The reference to the pending asynchronous request to finish. The caller does not have sufficient backup privileges or is not an administrator. Out of memory or other system resources. Unexpected VSS system error. The error code is logged in the event log. The backup components object has not been initialized or the prerequisite calls for a given shadow copy context have not been made prior to calling DoSnapshotSet. The system or provider has insufficient storage space. If possible delete any old or unnecessary persistent shadow copies and try again. The system was unable to flush I/O writes. This can be a transient problem. It is recommended to wait ten minutes and try again, up to three times. The system was unable to hold I/O writes. This can be a transient problem. It is recommended to wait ten minutes and try again, up to three times. The provider was unable to perform the request at this time. This can be a transient problem. It is recommended to wait ten minutes and try again, up to three times. The provider encountered an error that requires the user to restart the computer. Windows Server 2003 and Windows XP: This value is not supported until Windows Vista. The system was unable to freeze the Distributed Transaction Coordinator (DTC) or the Kernel Transaction Manager (KTM). Windows Server 2003 and Windows XP: This value is not supported until Windows Vista. The system was unable to freeze the Distributed Transaction Coordinator (DTC) or the Kernel Transaction Manager (KTM). Windows Server 2003 and Windows XP: This value is not supported until Windows Vista. The provider returned an unexpected error code. This can be a transient problem. It is recommended to wait ten minutes and try again, up to three times. The EnableWriterClasses method enables the specified writers to receive all events. An array containing one or more writer class identifiers. Once this method is called, only enabled writer classes are subsequently called. must be called prior to . To obtain information about the writers currently running on the system, it may be necessary to call from another instance of the class. After is called, these calls have no effect. The caller does not have sufficient backup privileges or is not an administrator. Out of memory or other system resources. Unexpected VSS system error. The error code is logged in the event log. 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. The ExposeSnapshot method exposes a shadow copy either by mounting it as a device on a drive letter or mount point, or as a file share. Shadow copy identifier. The path to the portion of the volume made available when exposing a shadow copy as a file share. The value of this parameter must be NULL when exposing a shadow copy locally; that is, by mounting to a drive letter or a mount point. The path cannot contain environment variables (for example, %MyEnv%) or wildcard characters. There is no requirement that the path end with a backslash ("\"). It is up to applications that retrieve this information to check. Attributes of the exposed shadow copy indicating whether it is exposed locally or remotely. The value must be either the or the value of . When a shadow copy is exposed as a file share, the value of this parameter is the share name. If a shadow copy is exposed by mounting it as a device, the parameter value is a drive letter followed by a colon, for example, "X:" or a mount point path (for example, "X:\a\b"). If the value of this parameter is , then VSS determines the share name or drive letter if the parameter is . The exposed name of the shadow copy. This is either a share name, a drive letter followed by a colon, or a mount point. When exposing a persistent shadow copy, it remains exposed through subsequent boots. When exposing a shadow copy of a volume, the shadow copy may be treated either as a mountable device or as a file system available for file sharing. When it is exposed as a device, as with other mountable devices, the shadow copy of a volume is exposed at its mount point starting with its root. When exposed as a file share, subsets (indicated by ) of the volume can be shared. One of the parameter values is not valid. The caller does not have sufficient backup privileges or is not an administrator. Out of memory or other system resources. Unexpected VSS system error. The error code is logged in the event log. 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. The specified shadow copy does not exist. Expected provider error. The provider logged the error in the event log. Unexpected provider error. The error code is logged in the error log. The FreeWriterMetadata method frees system resources allocated when was called. This method should never be called prior to the completion of . The result of calling the method prior to completion of the metadata gather is undefined. Once writer metadata has been freed, it cannot be recovered by the current instance of the class. It will be necessary to create a new instance of , and call the method again. 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. The FreeWriterStatus method frees system resources allocated during the call to . 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. The method prompts each writer to send the metadata they have collected. The method will generate an Identify event to communicate with writers. should be called only once during the lifetime of a given object. The caller does not have sufficient backup privileges or is not an administrator. Out of memory or other system resources. Unexpected VSS system error. The error code is logged in the event log. 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. The writer infrastructure is not operating properly. Check that the Event Service and VSS have been started, and check for errors associated with those services in the error log. The method asynchronously prompts each writer to send the metadata they have collected. The method will generate an Identify event to communicate with writers. should be called only once during the lifetime of a given object. Pass the value returned to the method to release operating system resources used for this asynchronous operation. must be called once for every call to . You can do this either by using the same code that called BeginGatherWriterMetadata or in a callback passed to BeginGatherWriterMetadata. An optional asynchronous callback, to be called when the read is complete. A user-provided object that distinguishes this particular asynchronous read request from other requests. An instance that represents this asynchronous operation. Waits for a pending asynchronous operation to complete. EndGatherWriterMetadata can be called once on every from . The reference to the pending asynchronous request to finish. The caller does not have sufficient backup privileges or is not an administrator. Out of memory or other system resources. Unexpected VSS system error. The error code is logged in the event log. 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. The writer infrastructure is not operating properly. Check that the Event Service and VSS have been started, and check for errors associated with those services in the error log. The method prompts each writer to send a status message. The caller of this method should also call after receiving the status of each writer. The caller does not have sufficient backup privileges or is not an administrator. Out of memory or other system resources. Unexpected VSS system error. The error code is logged in the event log. 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. The writer infrastructure is not operating properly. Check that the Event Service and VSS have been started, and check for errors associated with those services in the error log. The method asynchronously prompts each writer to send a status message. The caller of this method should also call after receiving the status of each writer. Pass the value returned to the method to release operating system resources used for this asynchronous operation. must be called once for every call to . You can do this either by using the same code that called BeginGatherWriterStatus or in a callback passed to BeginGatherWriterStatus. An optional asynchronous callback, to be called when the read is complete. A user-provided object that distinguishes this particular asynchronous read request from other requests. An instance that represents this asynchronous operation. Waits for a pending asynchronous operation to complete. EndGatherWriterStatus can be called once on every from . The reference to the pending asynchronous request to finish. The caller does not have sufficient backup privileges or is not an administrator. Out of memory or other system resources. Unexpected VSS system error. The error code is logged in the event log. 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. The writer infrastructure is not operating properly. Check that the Event Service and VSS have been started, and check for errors associated with those services in the error log. The method gets the properties of the specified shadow copy. The identifier of the shadow copy of a volume as returned by . A instance containing the shadow copy properties. The caller does not have sufficient backup privileges or is not an administrator. One of the parameter values is not valid. Out of memory or other system resources. Unexpected VSS system error. The error code is logged in the event log. 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. The specified shadow copy does not exist. Expected provider error. The provider logged the error in the event log. Unexpected provider error. The error code is logged in the error log. The ImportSnapshots method imports shadow copies transported from a different machine. This method is supported only on Windows Server operating systems. Only one shadow copy can be imported at a time. The requester is responsible for serializing the import shadow copy operation. For more information see the MSDN documentation on IIVssBackupComponents::ImportSnapshots Method Requires Windows Server 2008, Windows Server 2003 SP1, Windows Server 2003, Enterprise Edition, or Windows Server 2003, Datacenter Edition. The caller does not have sufficient backup privileges or is not an administrator. Out of memory or other system resources. Unexpected VSS system error. The error code is logged in the event log. 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. The method asynchronously imports shadow copies transported from a different machine. This method is supported only on Windows Server operating systems. Only one shadow copy can be imported at a time. The requester is responsible for serializing the import shadow copy operation. For more information see the MSDN documentation on IIVssBackupComponents::ImportSnapshots Method Requires Windows Server 2008, Windows Server 2003 SP1, Windows Server 2003, Enterprise Edition, or Windows Server 2003, Datacenter Edition. Pass the value returned to the method to release operating system resources used for this asynchronous operation. must be called once for every call to . You can do this either by using the same code that called BeginImportSnapshots or in a callback passed to BeginImportSnapshots. An optional asynchronous callback, to be called when the read is complete. A user-provided object that distinguishes this particular asynchronous read request from other requests. An instance that represents this asynchronous operation. Waits for a pending asynchronous operation to complete. EndImportSnapshots can be called once on every from . The reference to the pending asynchronous request to finish. The caller does not have sufficient backup privileges or is not an administrator. Out of memory or other system resources. Unexpected VSS system error. The error code is logged in the event log. 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. The method initializes the backup components metadata in preparation for backup. During imports of transported shadow copies, this parameter must be the original document generated when creating the saved shadow copy and saved using . This parameter may be The XML document supplied to this method initializes the object with metadata previously stored by a call to . Users should not tamper with this metadata document. The caller does not have sufficient backup privileges or is not an administrator. Out of memory or other system resources. Unexpected VSS system error. The error code is logged in the event log. 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. The XML document is not valid. Check the event log for details. The method initializes the IIVssBackupComponents interface in preparation for a restore operation. XML string containing the Backup Components Document generated by a backup operation and saved by . The XML document supplied to this method initializes the object with metadata previously stored by a call to . Users should not tamper with this metadata document. is The caller does not have sufficient backup privileges or is not an administrator. Out of memory or other system resources. Unexpected VSS system error. The error code is logged in the event log. 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. The load operation of the specified XML document failed. The IsVolumeSupported method determines whether the specified provider supports shadow copies on the specified volume. Provider identifier. If the value is , checks whether any provider supports the volume. Name of the volume. The name of the volume to be checked must be in one of the following formats: The path of a volume mount point with a backslash (\) A drive letter with backslash (\), for example, D:\ A unique volume name of the form \\?\Volume{GUID}\ (where GUID is the unique global identifier of the volume) with a backslash (\) if shadow copies are supported on the specified volume. If the value is , shadow copies are not supported on the specified volume. will return if it is possible to create shadow copies on the given volume, even if the current configuration does not allow the creation of shadow copies on that volume at the present time. For example, if the maximum number of shadow copies has been reached on a given volume (and therefore no more shadow copies can be created on that volume), the method will still indicate that the volume can be shadow copied. is The caller does not have sufficient backup privileges or is not an administrator. Out of memory or other system resources. Unexpected VSS system error. The error code is logged in the event log. 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. The specified volume was not found or was not available. The IsVolumeSupported method determines whether any provider supports shadow copies on the specified volume. Name of the volume. The name of the volume to be checked must be in one of the following formats: The path of a volume mount point with a backslash (\) A drive letter with backslash (\), for example, D:\ A unique volume name of the form \\?\Volume{GUID}\ (where GUID is the unique global identifier of the volume) with a backslash (\) if shadow copies are supported on the specified volume. If the value is , shadow copies are not supported on the specified volume. will return if it is possible to create shadow copies on the given volume, even if the current configuration does not allow the creation of shadow copies on that volume at the present time. For example, if the maximum number of shadow copies has been reached on a given volume (and therefore no more shadow copies can be created on that volume), the method will still indicate that the volume can be shadow copied. is The caller does not have sufficient backup privileges or is not an administrator. Out of memory or other system resources. Unexpected VSS system error. The error code is logged in the event log. 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. The specified volume was not found or was not available. The method will cause VSS to generate a PostRestore event, signaling writers that the current restore operation has finished. The caller does not have sufficient backup privileges or is not an administrator. Out of memory or other system resources. Unexpected VSS system error. The error code is logged in the event log. 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. The specified volume was not found or was not available. Expected provider error. The provider logged the error in the event log. The method will asynchronously cause VSS to generate a PostRestore event, signaling writers that the current restore operation has finished. Pass the value returned to the method to release operating system resources used for this asynchronous operation. must be called once for every call to . You can do this either by using the same code that called BeginPostRestore or in a callback passed to BeginPostRestore. An optional asynchronous callback, to be called when the read is complete. A user-provided object that distinguishes this particular asynchronous read request from other requests. An instance that represents this asynchronous operation. Waits for a pending asynchronous operation to complete. EndGatherWriterStatus can be called once on every from . The reference to the pending asynchronous request to finish. The caller does not have sufficient backup privileges or is not an administrator. Out of memory or other system resources. Unexpected VSS system error. The error code is logged in the event log. 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. The specified volume was not found or was not available. Expected provider error. The provider logged the error in the event log. The 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. generates a PrepareForBackup event, which is handled by each instance of each writer through the CVssWriter::OnPrepareBackup method. Before PrepareForBackup can be called, must be called. The caller does not have sufficient backup privileges or is not an administrator. Out of memory or other system resources. Unexpected VSS system error. The error code is logged in the event log. 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. The method will asynchronously 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. generates a PrepareForBackup event, which is handled by each instance of each writer through the CVssWriter::OnPrepareBackup method. Before PrepareForBackup can be called, must be called. Pass the value returned to the method to release operating system resources used for this asynchronous operation. must be called once for every call to . You can do this either by using the same code that called BeginPrepareForBackup or in a callback passed to BeginPrepareForBackup. An optional asynchronous callback, to be called when the read is complete. A user-provided object that distinguishes this particular asynchronous read request from other requests. An instance that represents this asynchronous operation. Waits for a pending asynchronous operation to complete. EndGatherWriterStatus can be called once on every from . The reference to the pending asynchronous request to finish. The caller does not have sufficient backup privileges or is not an administrator. Out of memory or other system resources. Unexpected VSS system error. The error code is logged in the event log. 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. The method will cause VSS to generate a PreRestore event, signaling writers to prepare for a coming restore operation. The caller does not have sufficient backup privileges or is not an administrator. Out of memory or other system resources. Unexpected VSS system error. The error code is logged in the event log. 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. The method will asynchronously cause VSS to generate a PreRestore event, signaling writers to prepare for a coming restore operation. Pass the value returned to the method to release operating system resources used for this asynchronous operation. must be called once for every call to . You can do this either by using the same code that called BeginPreRestore or in a callback passed to BeginPreRestore. An optional asynchronous callback, to be called when the read is complete. A user-provided object that distinguishes this particular asynchronous read request from other requests. An instance that represents this asynchronous operation. Waits for a pending asynchronous operation to complete. EndGatherWriterStatus can be called once on every from . The reference to the pending asynchronous request to finish. The caller does not have sufficient backup privileges or is not an administrator. Out of memory or other system resources. Unexpected VSS system error. The error code is logged in the event log. 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. The method queries the completed shadow copies in the system that reside in the current context. The method can be called only during backup operations. A list of objects representing the requested information. Because returns only information on completed shadow copies, the only shadow copy state it can disclose is . The method may be called only during backup operations and must be preceded by calls to and . The method will return only information about shadow copies with the current context (set by ). For instance, if the context is set to , will not return information on a shadow copy created with a context of . One of the parameter values is not valid. The caller is not an administrator or a backup operator. Out of memory or other system resources. Unexpected VSS system error. The error code is logged in the event log. 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. The queried object is not found. Expected provider error. The provider logged the error in the event log. Unexpected provider error. The error code is logged in the error log. The method queries providers on the system. The method can be called only during backup operations. A list of objects representing the requested information. The method may be called only during backup operations and must be preceded by calls to and . One of the parameter values is not valid. The caller is not an administrator or a backup operator. Out of memory or other system resources. Unexpected VSS system error. The error code is logged in the event log. 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. The queried object is not found. Expected provider error. The provider logged the error in the event log. Unexpected provider error. The error code is logged in the error log. The method begins an asynchronous operation to determine the status of the revert operation. The returned can be used to determine the outcome of the operation. An optional asynchronous callback, to be called when the operation is complete. A user-provided object that distinguishes this particular asynchronous read request from other requests. An instance that represents this asynchronous operation. Name of the volume. The name of the volume to be checked must be in one of the following formats: The path of a volume mount point with a backslash (\) A drive letter with backslash (\), for example, D:\ A unique volume name of the form \\?\Volume{GUID}\ (where GUID is the unique global identifier of the volume) with a backslash (\) An instance that can be used to determine the status of the revert operation. The revert operation will continue even if the computer is rebooted, and cannot be canceled or undone, except by restoring a backup created using another method. Windows XP, Windows Server 2003 and Windows Vista: This method requires Windows Server 2008 or Windows Server 2003 SP1 Waits for a pending asynchronous operation to complete. EndQueryRevertStatus can be called once on every from . One of the parameter values is not valid. The calling process has insufficient privileges. Out of memory or other system resources. Unexpected VSS system error. The error code is logged in the event log. 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. The specified parameter is not a valid volume. Revert is not supported on this volume. The provider for the volume does not support revert operations. This operation is not supported on the current operating system. The method reverts a volume to a previous shadow copy. Only shadow copies created with persistent contexts (, , or ) are supported. The identifier of the shadow copy to revert If this parameter is , the volume will be dismounted and reverted even if the volume is in use. This operation cannot be canceled, or undone once completed. If the computer is rebooted during the revert operation, the revert process will continue when the system is restarted. Windows XP, Windows Server 2003 and Windows Vista: This method requires Windows Server 2008 or Windows Server 2003 SP1 One of the parameter values is not valid. The calling process has insufficient privileges. Out of memory or other system resources. Unexpected VSS system error. The error code is logged in the event log. 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. The parameter is not a valid shadow copy. The provider was not found. The volume already has a revert in process. Revert is only supported for persistent shadow copies. The parameter was , and the volume could not be locked. Revert is not supported on this volume. The provider for the volume does not support revert operations. This operation is not supported on the current operating system. The SaveAsXml method saves the Backup Components Document containing a requester's state information to a specified string. This XML document, which contains the Backup Components Document, should always be securely saved as part of a backup operation. The Backup Components Document containing a requester's state information. For a typical backup operation, SaveAsXml should not be called until after both writers and the requester are finished modifying the Backup Components Document. Writers can continue to modify the Backup Components Document until their successful return from handling the PostSnapshot event (CVssWriter::OnPostSnapshot), or equivalently upon the completion of . Requesters will need to continue to modify the Backup Components Document as the backup progresses. In particular, a requester will store a component-by-component record of the success or failure of the backup through calls to the method. Once the requester has finished modifying the Backup Components Document, the requester should use to save a copy of the document to the backup media. A Backup Components Document can be saved at earlier points in the life cycle of a backup operation, for instance, to support the generation of transportable shadow copies to be handled on remote machines. However, should never be called prior to , because the Backup Components Document will not have been filled by the requester and the writers. Out of memory or other system resources. Unexpected VSS system error. The error code is logged in the event log. 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. The SetAdditionalRestores method is used by a requester during incremental or differential restore operations to indicate to writers that a given component will require additional restore operations to completely retrieve it. Writer identifier. Type of the component. The logical path of the component to be added. For more information, see Logical Pathing of Components. The value of the string containing the logical path used here should be the same as was used when the component was added to the backup set using . The logical path can be . There are no restrictions on the characters that can appear in a non-null logical path. The name of the component. The value of the string should not be , and should contain the same component as was used when the component was added to the backup set using . If the value of this parameter is , additional restores of the component will follow this restore. If the value is , additional restores of the component will not follow this restore. The information provided by the method is typically used by writers that support an explicit recovery mechanism as part of their PostRestore event handler (CVssWriter::OnPostRestore)�for instance, the Exchange Server, and database applications such as SQL Server. For these applications, it is often not possible to perform additional differential, incremental, or log restores after such a recovery is performed. Therefore, if for a component is set to , this means that such a writer should not execute its explicit recovery mechanism and should expect that additional differential, incremental, or log restores will be done. When on a component is set to , then after the component is restored, the application can complete its recovery operation and be brought back online. This method must be called before . One of the arguments that cannot be was One of the parameter values is not valid. Out of memory or other system resources. Unexpected VSS system error. The error code is logged in the event log. 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. The backup component does not exist. The XML document is not valid. Check the event log for details. Sets a string of private, or writer-dependent, backup parameters for a component. Writer identifier. Type of the component. The logical path of the component to be added. For more information, see Logical Pathing of Components. The value of the string containing the logical path used here should be the same as was used when the component was added to the backup set using . The logical path can be . There are no restrictions on the characters that can appear in a non-null logical path. The name of the component. The value of the string should not be , and should contain the same component as was used when the component was added to the backup set using . String containing the backup parameters to be set. The exact syntax and content of the backup options set by the wszBackupOptions parameter of the method will depend on the specific writer being contacted. This method must be called before . One of the arguments that cannot be was One of the parameter values is not valid. Out of memory or other system resources. Unexpected VSS system error. The error code is logged in the event log. 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. The backup component does not exist. The XML document is not valid. Check the event log for details. Defines an overall configuration for a backup operation. Indicates whether a backup or restore operation will be in component mode. Operation in component mode supports selectively backing up designated individual components (which can allow their exclusion), or only supports backing up all files and components on a volume. The Boolean is if the operation will be conducted in component mode and if not. Indicates whether a bootable system state backup is being performed. A enumeration value indicating the type of backup to be performed. If the value of this parameter is , partial file support is enabled. The default value for this argument is . Applications must call prior to calling . One of the arguments that cannot be was One of the parameter values is not valid. Out of memory or other system resources. Unexpected VSS system error. The error code is logged in the event log. 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. The XML document is not valid. Check the event log for details. Indicates whether the backup of the specified component of a specific writer was successful. Globally unique identifier of the writer instance. Globally unique identifier of the writer class. Type of the component. The logical path of the component to be added. For more information, see Logical Pathing of Components. The value of the string containing the logical path used here should be the same as was used when the component was added to the backup set using . The logical path can be . There are no restrictions on the characters that can appear in a non-null logical path. The name of the component. The value of the string should not be , and should contain the same component as was used when the component was added to the backup set using . The value of this parameter is if the component was successfully backed up, and if it was not. When working in component mode (when is called with its select components argument set to ), writers the state of each components backup using . Therefore, a well-behaved backup application (requester) must call after each component has been processed and prior to calling . One of the arguments that cannot be was One of the parameter values is not valid. Out of memory or other system resources. Unexpected VSS system error. The error code is logged in the event log. 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. The backup component does not exist. The XML document is not valid. Check the event log for details. Sets the context for subsequent shadow copy-related operations. Sets the context for subsequent shadow copy-related operations. The context to be set. The context must be one of the supported values of or a supported bit mask (or bitwise OR) of with a valid . The default context for VSS shadow copies is . Windows XP: The only supported context is the default context, . Therefore, calling this method under Windows XP throws a . This method be called only once, and it must be called prior to calling most VSS functions. For details on how the context set by this method affects how a shadow copy is created and managed, see Implementation Details for Creating Shadow Copies. For a complete discussion of the permitted shadow copy contexts, see and . One of the parameter values is not valid. Out of memory or other system resources. Unexpected VSS system error. The error code is logged in the event log. 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. Sets the context for subsequent shadow copy-related operations. The context to be set. The context must be one of the supported values of or a supported bit mask (or bitwise OR) of with a valid . The default context for VSS shadow copies is . Windows XP: The only supported context is the default context, . Therefore, calling this method under Windows XP throws a . can be called only once, and it must be called prior to calling most VSS functions. For details on how the context set by this method affects how a shadow copy is created and managed, see Implementation Details for Creating Shadow Copies. For a complete discussion of the permitted shadow copy contexts, see and . One of the parameter values is not valid. Out of memory or other system resources. Unexpected VSS system error. The error code is logged in the event log. 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. Indicates whether some, all, or no files were successfully restored. Globally unique identifier of the writer class. Type of the component. The logical path of the component. For more information, see Logical Pathing of Components. The value of the string containing the logical path used here should be the same as was used when the component was added to the backup set using . The logical path can be . There are no restrictions on the characters that can appear in a non-null logical path. The name of the component. The value of the string should not be , and should contain the same component as was used when the component was added to the backup set using . If all of the files were restored, the value of this parameter is . If some of the files were restored, the value of this parameter is . If none of the files were restored, the value of this parameter is . This method should be called between calls to and . One of the arguments that cannot be was One of the parameter values is not valid. Out of memory or other system resources. Unexpected VSS system error. The error code is logged in the event log. The backup components object is not initialized, or this method has not been called within the correct sequence. The backup component does not exist. The XML document is not valid. Check the event log for details. Sets the backup stamp of an earlier backup operation, upon which a differential or incremental backup operation will be based. The method can be called only during a backup operation. Writer identifier. Type of the component. The logical path of the component. For more information, see Logical Pathing of Components. The value of the string containing the logical path used here should be the same as was used when the component was added to the backup set using . The logical path can be . There are no restrictions on the characters that can appear in a non-null logical path. The name of the component. The value of the string should not be , and should contain the same component as was used when the component was added to the backup set using . The backup stamp to be set. This method should be called before . Only requesters can call this method. The backup stamp set by applies to all files in the component and any nonselectable Subcomponents it has. Requesters merely store the backup stamps in the Backup Components Document. They cannot make direct use of the backup stamps, do not know their format, and do not know how to generate them. Therefore, the value set with should either be retrieved from the stored Backup Components Document of an earlier backup operation (using for the correct component), or from information stored by the requester into its own internal records. A writer will then obtain this value (using IVssComponent::GetPreviousBackupStamp) and using it will be able to mark the appropriate files for participation in an incremental or differential backup. One of the arguments that cannot be was One of the parameter values is not valid. Out of memory or other system resources. Unexpected VSS system error. The error code is logged in the event log. 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. The backup component does not exist. The XML document is not valid. Check the event log for details. This method is used when a partial file operation requires a ranges file, and that file has been restored to a location other than its original one. Globally unique identifier (GUID) of the writer class containing the files involved in the partial file operation Type of the component. The logical path of the component containing the files that are participating in the partial file operation. For more information, see Logical Pathing of Components. The value of the string containing the logical path used here should be the same as was used when the component was added to the backup set using . The logical path can be . There are no restrictions on the characters that can appear in a non-null logical path. The name of the component containing the files that are participating in the partial file operation. The value of the string should not be , and should contain the same component as was used when the component was added to the backup set using . Index number of the partial file. The value of this parameter is an integer between 0 and n-1, where n is the total number of partial files associated with a given component. The value of n is the number of items in . The fully qualified path of a ranges file. Calling is not necessary if ranges files are restored in place. Windows XP and Windows Vista: This method requires Windows Server 2008 or Windows Server 2003 One of the arguments that cannot be was One of the parameter values is not valid. Out of memory or other system resources. Unexpected VSS system error. The error code is logged in the event log. 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. The backup component does not exist. The XML document is not valid. Check the event log for details. The operation is not supported by the current operating system. Sets a string of private, or writer-dependent, restore parameters for a writer component. Writer identifier. Type of the component. The logical path of the component. For more information, see Logical Pathing of Components. The value of the string containing the logical path used here should be the same as was used when the component was added to the backup set using . The logical path can be . There are no restrictions on the characters that can appear in a non-null logical path. The name of the component. The value of the string should not be , and should contain the same component as was used when the component was added to the backup set using . The private string of restore parameters. For more information see Setting VSS Restore Options. This method must be called before . The exact syntax and content of the restore options set by the parameter of the method will depend on the specific writer being contacted. One of the arguments that cannot be was One of the parameter values is not valid. Out of memory or other system resources. Unexpected VSS system error. The error code is logged in the event log. 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. The backup component does not exist. The XML document is not valid. Check the event log for details. Defines an overall configuration for a restore operation. The type of restore to be performed. Typically, most restore operations will not need to override the default restore type . If applications need to call , it should be called prior to calling . Windows XP: This method requires Windows Vista, Windows Server 2008 or Windows Server 2003 One of the parameter values is not valid. Out of memory or other system resources. Unexpected VSS system error. The error code is logged in the event log. 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. The backup component does not exist. The XML document is not valid. Check the event log for details. Indicates whether the specified selectable component is selected for restoration. Indicates whether the specified selectable component is selected for restoration. Writer identifier. Type of the component. The logical path of the component. For more information, see Logical Pathing of Components. The value of the string containing the logical path used here should be the same as was used when the component was added to the backup set using . The logical path can be . There are no restrictions on the characters that can appear in a non-null logical path. The name of the component. The value of the string should not be , and should contain the same component as was used when the component was added to the backup set using . If the value of this parameter is , the selected component has been selected for restoration. If the value is , the selected component has not been selected for restoration. SetSelectedForRestore has meaning only for restores taking place in component mode. can only be called for components that were explicitly added to the backup document at backup time using . Restoring a component that was implicitly selected for backup as part of a component set must be done by calling on the closest ancestor component that was added to the document. If only this component's data is to be restored, that should be accomplished through ; this can only be done if the component is selectable for restore. This method must be called before . One of the arguments that cannot be was One of the parameter values is not valid. Out of memory or other system resources. Unexpected VSS system error. The error code is logged in the event log. 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. The backup component does not exist. The XML document is not valid. Check the event log for details. indicates whether the specified selectable component is selected for restoration. This method has two overloads. Creates a new, empty shadow copy set. Shadow copy set identifier. This method must be called before during backup operations. Out of memory or other system resources. Unexpected VSS system error. The error code is logged in the event log. 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. The creation of a shadow copy is in progress, and only one shadow copy creation operation can be in progress at one time. Either wait to try again or return with a failure error code. Indicates whether the specified selectable component is selected for restoration to a specified writer instance. Globally unique identifier (GUID) of the writer class. Type of the component. The logical path of the component. For more information, see Logical Pathing of Components. The value of the string containing the logical path used here should be the same as was used when the component was added to the backup set using . The logical path can be . There are no restrictions on the characters that can appear in a non-null logical path. The name of the component. The value of the string should not be , and should contain the same component as was used when the component was added to the backup set using . If the value of this parameter is , the selected component has been selected for restoration. If the value is , the selected component has not been selected for restoration. GUID of the writer instance. SetSelectedForRestore, which moves a component to a different writer instance, can be called only for a writer that supports running multiple writer instances with the same class ID and supports a requester moving a component to a different writer instance at restore time. To determine whether a writer provides this support, call the method. SetSelectedForRestore has meaning only for restores taking place in component mode. SetSelectedForRestore can be called only for components that were explicitly added to the backup document at backup time using AddComponent. Restoring a component that was implicitly selected for backup as part of a component set must be done by calling SetSelectedForRestore on the closest ancestor component that was added to the document. If only this component's data is to be restored, that should be accomplished through the method; this can be done only if the component is selectable for restore (see Working with Selectability and Logical Paths). This method must be called before the method. The distinction between the and parameters is necessary because it is possible that multiple instances of the same writer are running on the computer. If the value of the parameter is , this is equivalent to calling the . The parameter is used to specify that the component is to be restored to a different writer instance. If the value of the parameter is not , it must match the instance ID of a writer instance with the same writer class ID specified in in the parameter. A writer's class identifier, instance identifier, and instance name can be found in the properties of . Windows XP and Windows 2003: This method is not supported until Windows 2003 SP1. One of the arguments that cannot be was One of the parameter values is not valid. Out of memory or other system resources. Unexpected VSS system error. The error code is logged in the event log. 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. The backup component does not exist. The XML document is not valid. Check the event log for details. Breaks a shadow copy set according to requester-specified options. A shadow copy set identifier. A bitmask of flags that specify how the shadow copy set is broken. This method is similar to , except that is has an extra parameter to specify how the shadow copy set is broken. Like , this method can be used only for shadow copies that were created by a hardware shadow copy provider. After this method returns, the shadow copy volume is still a volume, but it is no longer a shadow copy. For more information, see Breaking Shadow Copies. Begins an asynchronous operation to break a shadow copy set according to requester-specified options. A shadow copy set identifier. A bitmask of flags that specify how the shadow copy set is broken. This method is similar to , except that is has an extra parameter to specify how the shadow copy set is broken. Like , this method can be used only for shadow copies that were created by a hardware shadow copy provider. After this method returns, the shadow copy volume is still a volume, but it is no longer a shadow copy. For more information, see Breaking Shadow Copies. An optional asynchronous callback, to be called when the read is complete. A user-provided object that distinguishes this particular asynchronous read request from other requests. An instance that represents this asynchronous operation. Waits for an asynchronous operation to complete. EndBreakSnapshotSet can be called once on every from . The reference to the pending asynchronous request to finish. Marks the restore of a component as authoritative for a replicated data store. The globally unique identifier (GUID) of the writer class. Type of the component. The logical path of the component to be added. For more information, see Logical Pathing of Components. The value of the string containing the logical path used here should be the same as was used when the component was added to the backup set using . The logical path can be . There are no restrictions on the characters that can appear in a non-null logical path. The name of the component. The value of the string should not be , and should contain the same component as was used when the component was added to the backup set using . to indicate that the restore of the component is authoritative; otherwise, . One of the arguments that cannot be was One of the parameter values is not valid. Out of memory or other system resources. Unexpected VSS system error. The error code is logged in the event log. This method was not called during a restore operation. The specified component was not found. Windows XP and Windows 2003: This method requires Windows Vista or Windows Server 2008. Assigns a new logical name to a component that is being restored. The globally unique identifier (GUID) of the writer class. The type of the component. A string containing the logical path of the component. For more information, see Logical Pathing of Components. The value of the string containing the logical path used here should be the same as the string that was used when the component was added. The logical path can be . There are no restrictions on the characters that can appear in a logical path. The name of the component. The string cannot be and should contain the same component name as was the component name that was used when the component was added to the backup set using the method. String containing the restore name to be set for the component. One of the arguments that cannot be was One of the parameter values is not valid. Out of memory or other system resources. Unexpected VSS system error. The error code is logged in the event log. This method was not called during a restore operation. The specified component was not found. Windows XP and Windows 2003: This method requires Windows Vista or Windows Server 2008. Sets the roll-forward operation type for a component and specifies the restore point for a partial roll-forward operation. The globally unique identifier (GUID) of the writer class. Type of the component. The logical path of the component. For more information, see Logical Pathing of Components. The value of the string containing the logical path used here should be the same as was used when the component was added to the backup set using . The logical path can be . There are no restrictions on the characters that can appear in a non-null logical path. The name of the component. The value of the string should not be , and should contain the same component as was used when the component was added to the backup set using . A enumeration value indicating the type of roll-forward operation to be performed. A null-terminated wide character string specifying the roll-forward restore point. The format of this string is defined by the writer, and can be a timestamp, a log sequence number (LSN), or any marker defined by the writer. One of the arguments that cannot be was One of the parameter values is not valid. Out of memory or other system resources. Unexpected VSS system error. The error code is logged in the event log. This method was not called during a restore operation. The backup component does not exist. Windows XP and Windows 2003: This method requires Windows Vista or Windows Server 2008. Unexposes a shadow copy either by deleting the file share or by removing the drive letter or mount point. The shadow copy identifier. The value of this identifier should be the same as the value that was used when the shadow copy was exposed. One of the parameter values is not valid. The caller does not have sufficient backup privileges or is not an administrator. Out of memory or other system resources. Unexpected VSS system error. The error code is logged in the event log. 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. The specified shadow copy does not exist or is not exposed. Expected provider error. The provider logged the error in the event log. Unexpected provider error. The error code is logged in the error log. Windows XP and Windows 2003: This method requires Windows Vista or Windows Server 2008. Specifies the volumes to be included in a LUN resynchronization operation. This method is supported only on Windows server operating systems. The identifier of the shadow copy that was returned by the method during backup. This parameter is required and cannot be Guid.Empty. This parameter is optional and can be . A value of means that the contents of the shadow copy volume are to be copied back to the original volume. VSS identifies the original volume by the VDS_LUN_INFO information in the Backup Components Document. One of the parameter values is not valid. The caller does not have sufficient backup privileges or is not an administrator. Out of memory or other system resources. Unexpected VSS system error. The error code is logged in the event log. Either there is no hardware provider that supports the operation, or the requester did not successfully add any volumes to the recovery set. This version of the hardware provider does not support this operation. The parameter specifies a shadow copy that the hardware provider does not own. Another LUN resynchronization operation is already in progress. The parameter specifies a shadow copy that does not exist in the Backup Components Document. LUN resynchronization is not supported on this volume, because it is a dynamic volume, because the destination disk does not have a unique page 83 storage identifier, because the specified volume does not reside on a LUN managed by a VSS hardware provider, or because the destination disk is a cluster quorum disk. Windows XP, Windows 2003, Windows Vista, Windows 2008, Windows 7: This method requires Windows Server 2008 R2. Gets the requester's session identifier. The session identifier is an opaque value that uniquely identifies a backup or restore session. It is used to distinguish the current session among multiple parallel backup or restore sessions. As a best practice, writers and requesters should include the session ID in all diagnostics messages used for event logging and tracing. Windows XP, Windows 2003, Windows Vista, Windows 2008: This method requires Windows 7 or Windows Server 2008 R2. The caller does not have sufficient backup privileges or is not an administrator. Out of memory or other system resources. Unexpected VSS system error. The error code is logged in the event log. 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. The requester's session identifier. Initiates a LUN resynchronization operation. This method is supported only on Windows server operating systems. flags that specify how the resynchronization is to be performed. One of the parameter values is not valid. The caller does not have sufficient backup privileges or is not an administrator. Out of memory or other system resources. The provider for the volume does not support LUN resynchronization. Possible reasons for this return value include: There is no hardware provider that supports the operation. The requester did not successfully add any volumes to the recovery set. The method was called in WinPE or in Safe mode. he caller did not call the method before calling this method. This version of the hardware provider does not support this operation. An unexpected provider error occurred. If this error code is returned, the error must be described in an entry in the application event log, giving the user information on how to resolve the problem. The resynchronization destination contained a volume that was not explicitly included. The MBR signature or GPT ID for one or more disks could not be set to the intended value. Check the Application event log for more information. Windows XP, Windows 2003, Windows Vista, Windows 2008, Windows 7: This method requires Windows Server 2008 R2. Begins an asynchronous operation that initiates a LUN resynchronization operation. This method is supported only on Windows server operating systems. flags that specify how the resynchronization is to be performed. An optional asynchronous callback, to be called when the read is complete. A user-provided object that distinguishes this particular asynchronous read request from other requests. An instance that represents this asynchronous operation. Pass the value returned to the method to release operating system resources used for this asynchronous operation. must be called once for every call to . You can do this either by using the same code that called BeginRecoverSet or in a callback passed to BeginRecoverSet. Windows XP, Windows 2003, Windows Vista, Windows 2008, Windows 7: This method requires Windows Server 2008 R2. Waits for a pending asynchronous operation to complete. EndRecoverSet can be called once on every from . The reference to the pending asynchronous request to finish. /// One of the parameter values is not valid. The caller does not have sufficient backup privileges or is not an administrator. Out of memory or other system resources. The provider for the volume does not support LUN resynchronization. Possible reasons for this return value include: There is no hardware provider that supports the operation. The requester did not successfully add any volumes to the recovery set. The method was called in WinPE or in Safe mode. he caller did not call the method before calling this method. This version of the hardware provider does not support this operation. An unexpected provider error occurred. If this error code is returned, the error must be described in an entry in the application event log, giving the user information on how to resolve the problem. The resynchronization destination contained a volume that was not explicitly included. The MBR signature or GPT ID for one or more disks could not be set to the intended value. Check the Application event log for more information. Windows XP, Windows 2003, Windows Vista, Windows 2008, Windows 7: This method requires Windows Server 2008 R2. A read-only list containing information about the components of each writer that has been stored in a requester's Backup Components Document. retrieves component information for a component stored in the Backup Components Document by earlier calls to . The information in the components stored in the Backup Components Document is not static. If a writer updates a component during a restore, that change will be reflected in the component retrieved by . This is in contrast with component information found in the object returned by . That information is read-only and comes from the Writer Metadata Document of a writer process. The instances that are returned should not be cached, because the following methods cause the instances that are returned by to be no longer valid: If you call one of these methods after you have retrieved a instance by calling , you cannot reuse that instance, because it is no longer valid. Instead, you must call again to retrieve a new instance. A read-only list containing information about the components of each writer that has been stored in a requester's Backup Components Document. This list must not be accessed after the from which it was obtained has been disposed. Out of memory or other system resources. Unexpected VSS system error. The error code is logged in the event log. 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. A read-only list containing metadata for the writers running on the systsem. A read-only list containing metadata for the writers running on the system. This list must not be accessed after the from which it was obtained has been disposed. A requester must call the asynchronous operation and wait for it to complete prior to using . Although must be called prior to either a restore or backup operation, is not typically used for restores. Component information retrieved (during backup operations) using , where the instance has been returned by , comes from the Writer Metadata Document of a live writer process. This is in contrast to the information returned by (during restore operations), which was stored in the Backup Components Document by calls to . Out of memory or other system resources. Unexpected VSS system error. The error code is logged in the event log. 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. The XML document is not valid. Check the event log for details. The specified shadow copy does not exist. A read-only list containing the status of the writers. A read-only list containing instances representing the returned status for each respective writer. This list must not be accessed after the from which it was obtained has been disposed. A requester must call the asynchronous operation and wait for it to complete prior to using . Out of memory or other system resources. Unexpected VSS system error. The error code is logged in the event log. 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. The specified shadow copy does not exist. Exception thrown to indicate that the provider returned an unexpected error code. This can be a transient problem. It is recommended to wait ten minutes and try again, up to three times. Initializes a new instance of the class with a system-supplied message describing the error. Initializes a new instance of the class with a specified error message. The message that describes the error Initializes a new instance of the class with a specified error message and a reference to the inner exception that is the cause of this exception. The message that describes the error The exception that is the cause of the current exception. Initializes a new instance of the class. The that holds the serialized object data about the exception being thrown. The that contains contextual information about the source or destination. The parameter is . The class name is or is zero (0). Exception thrown to indicate that the requested identifier does not correspond to a registered provider. Initializes a new instance of the class with a system-supplied message describing the error. Initializes a new instance of the class with a specified error message. The message that describes the error Initializes a new instance of the class with a specified error message and a reference to the inner exception that is the cause of this exception. The message that describes the error The exception that is the cause of the current exception. Initializes a new instance of the class. The that holds the serialized object data about the exception being thrown. The that contains contextual information about the source or destination. The parameter is . The class name is or is zero (0). Exception thrown to indicate that the requested object was a duplicate. Initializes a new instance of the class with a system-supplied message describing the error. Initializes a new instance of the class with a specified error message. The message that describes the error Initializes a new instance of the class with a specified error message and a reference to the inner exception that is the cause of this exception. The message that describes the error The exception that is the cause of the current exception. Initializes a new instance of the class. The that holds the serialized object data about the exception being thrown. The that contains contextual information about the source or destination. The parameter is . The class name is or is zero (0). Exception thrown to indicate that the system or provider has insufficient storage space. If possible delete any old or unnecessary persistent shadow copies and try again. Initializes a new instance of the class with a system-supplied message describing the error. Initializes a new instance of the class with a specified error message. The message that describes the error Initializes a new instance of the class with a specified error message and a reference to the inner exception that is the cause of this exception. The message that describes the error The exception that is the cause of the current exception. Initializes a new instance of the class. The that holds the serialized object data about the exception being thrown. The that contains contextual information about the source or destination. The parameter is . The class name is or is zero (0). Exception thrown to indicate that the requested deletion of snapshots did not complete successfully. To get further information about the cause of the error, check the inner exception which is populated with the original exception that caused the deletion to fail. Initializes a new instance of the class. Initializes a new instance of the class with the specified error message. The error message. Initializes a new instance of the class with the specified error message and a reference to the exception causing this exception to be thrown. The error message. The inner exception. Initializes a new instance of the class, specifying the number of successfully deleted snapshots, the id of the snapshot on which the delete operation failed and the exception causing the delete operation to fail. The number of successfully deleted snapshots. The id of the non deleted snapshot, or if such information is not available. The inner exception. Initializes a new instance of the class. The that holds the serialized object data about the exception being thrown. The that contains contextual information about the source or destination. The parameter is . The class name is or is zero (0). Sets the with information about the exception. The that holds the serialized object data about the exception being thrown. The that contains contextual information about the source or destination. The parameter is a null reference (Nothing in Visual Basic). Gets the number of successfully deleted snapshots. The number of successfully deleted snapshots. Gets the non id of the snapshot that failed to be deleted. The id of the snapshot that could not be deleted. The enumeration is used by requesters to identify an object as a shadow copy set, shadow copy, or provider. The object type is not known. This indicates an application error. The interpretation of this value depends on whether it is used as an input to a VSS method or returned as an output from a VSS method. When used as an input to a VSS method, it indicates that the method is not restricted to any particular object type, but should act on all appropriate objects. In this sense, can be thought of as a wildcard input. When returned as an output, the object type is not known and means that there has been an application error. Shadow copy set. Shadow copy. Shadow copy provider. Exception indicating that the writer ran out of memory or other system resources. The recommended way to handle this error code is to wait ten minutes and then repeat the operation, up to three times. Exception indicating that the writer failed due to an error that would likely not occur if the entire backup, restore, or shadow copy creation process was restarted. The recommended way to handle this error is to wait ten minutes and then repeat the operation, up to three times. Initializes a new instance of the class. Initializes a new instance of the class. The message that describes the error Initializes a new instance of the class. The message that describes the error The exception that is the cause of the current exception. Initializes a new instance of the class. The that holds the serialized object data about the exception being thrown. The that contains contextual information about the source or destination. The parameter is . The class name is or is zero (0). Initializes a new instance of the class. Initializes a new instance of the class. The message that describes the error Initializes a new instance of the class. The message that describes the error The exception that is the cause of the current exception. Initializes a new instance of the class. The that holds the serialized object data about the exception being thrown. The that contains contextual information about the source or destination. The parameter is . The class name is or is zero (0). Exception indicating that the resynchronization destination contained a volume that was not explicitly included. Initializes a new instance of the class. Initializes a new instance of the class. The message that describes the error Initializes a new instance of the class. The message that describes the error The exception that is the cause of the current exception. Initializes a new instance of the class. The that holds the serialized object data about the exception being thrown. The that contains contextual information about the source or destination. The parameter is . The class name is or is zero (0). The structure describes associations between volumes containing the original file data and volumes containing the shadow copy storage area (also known as the diff area). Initializes a new instance of the class. Name of the volume. Name of the diff area volume. The maximum diff space. The allocated diff space. The used diff space. Gets the original volume name. The original volume name. Gets the shadow copy storage area volume name. The shadow copy storage area volume name. Gets the maximum space used on the shadow copy storage area volume for this association. The maximum space used on the shadow copy storage area volume for this association. Gets the allocated space on the shadow copy storage area volume by this association. This must be less than or equal to . The allocated space on the shadow copy storage area volume by this association. Gets the used space from the allocated area. This must be less than or equal to . The the used space from the allocated area. Exception indicating that the writer status is not available for one or more writers. A writer may have reached the maximum number of available backup and restore sessions. Initializes a new instance of the class. Initializes a new instance of the class. The message that describes the error Initializes a new instance of the class. The message that describes the error The exception that is the cause of the current exception. Initializes a new instance of the class. The that holds the serialized object data about the exception being thrown. The that contains contextual information about the source or destination. The parameter is . The class name is or is zero (0). Exception thrown to indicate that the maximum number of volumes has been added to the shadow copy set. The specified volume was not added to the shadow copy set. Initializes a new instance of the class with a system-supplied message describing the error. Initializes a new instance of the class with a specified error message. The message that describes the error Initializes a new instance of the class with a specified error message and a reference to the inner exception that is the cause of this exception. The message that describes the error The exception that is the cause of the current exception. Initializes a new instance of the class. The that holds the serialized object data about the exception being thrown. The that contains contextual information about the source or destination. The parameter is . The class name is or is zero (0). Exception thrown to indicate that the operation is not supported under the current context. Initializes a new instance of the class with a system-supplied message describing the error. Initializes a new instance of the class with a specified error message. The message that describes the error Initializes a new instance of the class with a specified error message and a reference to the inner exception that is the cause of this exception. The message that describes the error The exception that is the cause of the current exception. Initializes a new instance of the class. The that holds the serialized object data about the exception being thrown. The that contains contextual information about the source or destination. The parameter is . The class name is or is zero (0). Exception class indicating that an unexpected error occured. The error code is logged in the error log file. Initializes a new instance of the class. Initializes a new instance of the class with the specified error message. The error message. Initializes a new instance of the class with the specified error message and a reference to the inner exception that is the cause of this exception. The error message. The inner exception. Initializes a new instance of the class with serialized data. The that holds the serialized object data about the exception being thrown. The that contains contextual information about the source or destination. The parameter is . The class name is or is zero (0). Exception thrown to indicate that another LUN resynchronization operation is already in progress. Initializes a new instance of the class. Initializes a new instance of the class. The message. Initializes a new instance of the class. The message. The inner. Initializes a new instance of the class. The that holds the serialized object data about the exception being thrown. The that contains contextual information about the source or destination. The parameter is . The class name is null or is zero (0). Exception indicating that the the shadow copy contains only a subset of the volumes needed by the writer to correctly back up the application component. Initializes a new instance of the class. Initializes a new instance of the class. The message that describes the error Initializes a new instance of the class. The message that describes the error The exception that is the cause of the current exception. Initializes a new instance of the class. The that holds the serialized object data about the exception being thrown. The that contains contextual information about the source or destination. The parameter is . The class name is or is zero (0). The VssRollForwardType enumeration is used by a requester to indicate the type of roll-forward operation it is about to perform. A requester sets the roll-forward operation type and specifies the restore point for partial roll-forward operations using . No roll-forward type is defined. This indicates an error on the part of the requester. The roll-forward operation should not roll forward through logs. The roll-forward operation should roll forward through all logs. The roll-forward operation should roll forward through logs up to a specified restore point. The class contains the properties of a shadow copy or shadow copy set. Initializes a new instance of the class. The snapshot id. The snapshot set id. The snapshot count. The snapshot device object. Name of the original volume. The originating machine. The service machine. Name of the exposed. The exposed path. The provider id. The snapshot attributes. The creation timestamp. State of the snapshot. A uniquely identifying the shadow copy identifier. A uniquely identifying the shadow copy set containing the shadow copy. Number of volumes included with the shadow copy in the shadow copy set when it was created. Because it is possible for applications to release individual shadow copies without releasing the shadow copy set, at any given time the number of shadow copies in the shadow copy set may be less than The maximum number of shadow-copied volumes permitted in a shadow copy set is 64. The name of the device object for the shadow copy of the volume. The device object can be thought of as the root of a shadow copy of a volume. Requesters will use this device name when accessing files on a shadow-copied volume that it needs to work with. The device name does not contain a trailing "\". The name of the volume that had been shadow copied. The name of the machine containing the original volume. The name of the machine running the Volume Shadow Copy Service that created the shadow copy. The name of the shadow copy when it is exposed. This is a drive letter or mount point (if the shadow copy is exposed as a local volume), or a share name. The portion of the shadow copy of a volume made available if it is exposed as a share. A uniquely identifying the provider used to create this shadow copy. The attributes of the shadow copy expressed as a bit mask (or bitwise OR) of members of the enumeration. Time stamp indicating when the shadow copy was created. The exact time is determined by the provider. Current shadow copy creation status. See . Exception thrown to indicate that the volume already has a revert in progress. Windows XP and Windows 2003: This error is not supported until Windows Vista. Initializes a new instance of the class with a system-supplied message describing the error. Initializes a new instance of the class with a specified error message. The message that describes the error Initializes a new instance of the class with a specified error message and a reference to the inner exception that is the cause of this exception. The message that describes the error The exception that is the cause of the current exception. Initializes a new instance of the class. The that holds the serialized object data about the exception being thrown. The that contains contextual information about the source or destination. The parameter is . The class name is or is zero (0). The enumeration specifies how the host system uses the data managed by a writer involved in a VSS operation. Requester applications that are interested in backing up system state should look for writers with the or usage type. The usage type is not known.This indicates an error on the part of the writer. The data stored by the writer is part of the bootable system state. The writer either stores data used by a system service or is a system service itself. The data is user data. Unclassified data. This enumeration is used by a writer at backup time to specify through its Writer Metadata Document the default file restore method to be used with all the files in all the components it manages. No restore method is defined. This indicates an error on the part of the writer. A requester will restore files of a selected component or component set only if there are no versions of those files currently on the disk. Unless alternate location mappings are defined for file restoration, if a version of any file managed by a selected component or component set is currently on the disk, none of the files managed by the selected component or component set will be restored. If a file's alternate location mapping is defined, and a version of the files is present on disk at the original location, files will be written to the alternate location as long as no version of the file exists at the alternate location. A requester will restore files of a selected component or component set only if there are no versions of those files currently on the disk that cannot be overwritten. Unless alternate location mappings are defined for file restoration, if there is a version of any file that cannot be overwritten of the selected component or component set on the disk, none of the files managed by the component or component set will be restored. If a file's alternate location mapping is defined, files will be written to the alternate location. This value is used by a writer to indicates that a given service must be stopped prior to the start of the restore. After the restore operation, the service will be restarted. The service to be stopped is specified by an argument to IVssCreateWriterMetadata.SetRestoreMethod. A requester must restore the files of a selected component or component set to the location specified by the alternate location mapping specified in the writer component metadata file. A requester will restore the files of a selected component or component set following a reboot of the system. Files to be restored should be copied to a temporary location, and the requester should use File.Move with the DelayUntilReboot flag to complete the restoration of these files to their proper location following reboot. (Using AlphaFS for file operations). If possible, a requester will restore the files of a selected component or component set to their correct location immediately. If there are versions of any of the files managed by the selected component or component set on the disk that cannot be overwritten, then all the files managed by the selected component or component set will be restored following the reboot of the system. In this case, files to be restored should be copied to a temporary location, and the requester should use File.Move with the DelayUntilReboot flag to complete the restoration of these files to their proper location following reboot. (Using AlphaFS for file operations). Windows XP: This value is not supported until Windows Server 2003 This value indicates that a custom restore method will be used to restore the files managed by the selected component or component set. The requester should perform the restore operation as follows: Send the PreRestore event and wait for all writers to process it. Restore the files to their original locations. Send the PostRestore event and wait for all writers to process it. Stop the service. Restart the service. The service to be stopped is specified by the writer beforehand when it calls the IVssCreateWriterMetadata::SetRestoreMethod method. The requester can obtain the name of the service by examining the property. Exception thrown to indicate that the volume does not support the requested operation, or that no provider supports it. Initializes a new instance of the class with a system-supplied message describing the error. Initializes a new instance of the class with a specified error message. The message that describes the error Initializes a new instance of the class with a specified error message and a reference to the inner exception that is the cause of this exception. The message that describes the error The exception that is the cause of the current exception. Initializes a new instance of the class. The that holds the serialized object data about the exception being thrown. The that contains contextual information about the source or destination. The parameter is . The class name is or is zero (0). Exception thrown to indicate that the system was unable to thaw the Distributed Transaction Coordinator (DTC) or the Kernel Transaction Manager (KTM). Windows Server 2003 and Windows XP: This exception is not supported until Windows Vista. Initializes a new instance of the class with a system-supplied message describing the error. Initializes a new instance of the class with a specified error message. The message that describes the error Initializes a new instance of the class with a specified error message and a reference to the inner exception that is the cause of this exception. The message that describes the error The exception that is the cause of the current exception. Initializes a new instance of the class. The that holds the serialized object data about the exception being thrown. The that contains contextual information about the source or destination. The parameter is . The class name is or is zero (0). Exception thrown to indicate that the XML document is not valid. Check the event log for details. Initializes a new instance of the class with a system-supplied message describing the error. Initializes a new instance of the class with a specified error message. The message that describes the error Initializes a new instance of the class with a specified error message and a reference to the inner exception that is the cause of this exception. The message that describes the error The exception that is the cause of the current exception. Initializes a new instance of the class. The that holds the serialized object data about the exception being thrown. The that contains contextual information about the source or destination. The parameter is . The class name is or is zero (0). Exception thrown to indicate that the system was unable to hold I/O writes. This can be a transient problem. It is recommended to wait ten minutes and try again, up to three times. Initializes a new instance of the class with a system-supplied message describing the error. Initializes a new instance of the class with a specified error message. The message that describes the error Initializes a new instance of the class with a specified error message and a reference to the inner exception that is the cause of this exception. The message that describes the error The exception that is the cause of the current exception. Initializes a new instance of the class. The that holds the serialized object data about the exception being thrown. The that contains contextual information about the source or destination. The parameter is . The class name is or is zero (0). Exception indicating that the writer operation failed because of a time-out between the Freeze and Thaw events. The recommended way to handle this error code is to wait ten minutes and then repeat the operation, up to three times. Initializes a new instance of the class. Initializes a new instance of the class. The message that describes the error Initializes a new instance of the class. The message that describes the error The exception that is the cause of the current exception. Initializes a new instance of the class. The that holds the serialized object data about the exception being thrown. The that contains contextual information about the source or destination. The parameter is . The class name is or is zero (0). The enumeration is returned by a provider to specify the state of a given shadow copy operation. Reserved for system use.Unknown shadow copy state. Reserved for system use.Shadow copy is being prepared. Reserved for system use.Processing of the shadow copy preparation is in progress. Reserved for system use.Shadow copy has been prepared. Reserved for system use.Processing of the shadow copy precommit is in process. Reserved for system use.Shadow copy is precommitted. Reserved for system use.Processing of the shadow copy commit is in process. Reserved for system use.Shadow copy is committed. Reserved for system use.Processing of the shadow copy postcommit is in process. Reserved for system use.Processing of the shadow copy file commit operation is underway. Reserved for system use.Processing of the shadow copy file commit operation is done. Reserved for system use.Processing of the shadow copy following the final commit and prior to shadow copy create is underway. Shadow copy is created. Reserved for system use.Shadow copy creation is aborted. Reserved for system use.Shadow copy has been deleted. Reserved value. Exception indicating that the maximum number of shadow copy storage areas has been added to the shadow copy source volume. The specified shadow copy storage volume was not associated with the specified shadow copy source volume. Initializes a new instance of the class with a system-supplied message describing the error. Initializes a new instance of the class with a specified error message. The message that describes the error Initializes a new instance of the class with a specified error message and a reference to the inner exception that is the cause of this exception. The message that describes the error The exception that is the cause of the current exception. Initializes a new instance of the class. The that holds the serialized object data about the exception being thrown. The that contains contextual information about the source or destination. The parameter is . The class name is or is zero (0). Exception indicating that the requested method is not supported on the current operating system, or the loaded assembly is targeted for a different operating system than the one on which it is running. Initializes a new instance of the class. Initializes a new instance of the class. The message. Initializes a new instance of the class. The message. The inner exception. Initializes a new instance of the class. The that holds the serialized object data about the exception being thrown. The that contains contextual information about the source or destination. The parameter is . The class name is or is zero (0). Enumeration used by to indicate the current processor architecture for which the operating system is targeted and running. The system is running a 32-bit version of Windows. The system is running an Itanium processor. The system is running a 64-bit version of Windows. Unknown architecture. Exception thrown to indicate that the volume is not supported by the specified provider. Initializes a new instance of the class with a system-supplied message describing the error. Initializes a new instance of the class with a specified error message. The message that describes the error Initializes a new instance of the class with a specified error message and a reference to the inner exception that is the cause of this exception. The message that describes the error The exception that is the cause of the current exception. Initializes a new instance of the class. The that holds the serialized object data about the exception being thrown. The that contains contextual information about the source or destination. The parameter is . The class name is or is zero (0). Representation of information on a partial file associated with a component. See MSDN documentation on IVssComponent::GetPartialFile Method for more information. Initializes a new instance of the class The path of the partial file. The name of the partial file. Either a listing of file offsets and lengths that make up the partial file support range (the sections of the file that were backed up), or the name of a file containing such a list. Any additional metadata required by a writer to validate a partial file restore operation. The information in this metadata string will be opaque to requesters. May be The path of the partial file. Users of this public need to check to determine whether this path ends with a backslash ("\"). The name of the partial file. Either a listing of file offsets and lengths that make up the partial file support range (the sections of the file that were backed up), or the name of a file containing such a list. Any additional metadata required by a writer to validate a partial file restore operation. The information in this metadata string will be opaque to requesters. Additional metadata is not required, so may also be empty (zero length). The enumeration is used by a writer to indicate the types of backup operations it can participate in. The supported kinds of backup are expressed as a bit mask (or bitwise OR) of values. Windows XP: This enumeration is not available until Windows Server 2003 or later. Writer set their backup schemas with calls to IVssCreateWriterMetadata.SetBackupSchema". Requesters use to determine the backup schema that a writer supports. For a specific kind of backup operation to be supported, the writer must support the corresponding schema, and the requester must set the corresponding backup type. For example, to involve a writer in an incremental backup operation, the requester must set the backup type to , and the writer should have a backup schema that includes . A writer that does not support the backup schema corresponding to a requester's backup type should treat the backup operation that is being performed as if it were a default (full) backup. If the desired backup type is not supported by the writer's backup schema, the requester can either perform a full backup for this writer or exclude the writer from the backup operation. A requester can exclude a writer by selecting none of the writer's components, or by disabling the writer (see or ). The writer supports a simple full backup and restoration of entire files (as defined by a value of ). This backup scheme can be used as the basis of an incremental or differential backup. This is the default value. The writer supports differential backups (corresponding to the value ). Files created or changed since the last full backup are saved. Files are not marked as having been backed up. This setting does not preclude mixing of incremental and differential backups. The writer supports incremental backups (corresponding to the value ). Files created or changed since the last full or incremental backup are saved. Files are marked as having been backed up. This setting does not preclude mixing of incremental and differential backups. The writer supports both differential and incremental backup schemas, but only exclusively: for example, you cannot follow a differential backup with an incremental one. A writer cannot support this schema if it does not support both incremental and differential schemas ( | ). The writer supports backups that involve only the log files it manages (corresponding to a value of ). Similar to the default backup schema (), the writer supports copy backup operations (corresponding to ) where file access information (such as information as to when a file was last backed up) will not be updated either in the writer's own state information or in the file system information. This type of backup cannot be used as the basis of an incremental or differential backup. A writer supports using the VSS time-stamp mechanism when evaluating if a file should be included in differential or incremental operations (corresponding to and , respectively) using the , setters, and the method. A writer cannot support this schema if it does not support either differential or incremental backup schemas ( or ). When implementing incremental or differential backups with differenced files, a writer can provide last modification time information for files (using IVssComponent.AddDifferencedFileByLastModifyTime). A requester then can use to obtain candidate files and information about their last modification data. The requester can use this information (along with any records about previous backup operations it maintains) to decide if a file should be included in incremental and differential backups. This scheme does not apply to partial file implementations of incremental and differential backup operations. A writer cannot support this schema if it does not support either incremental or differential backup schemas ( or . Reserved for system use. The writer supports a requester changing the target for file restoration using . The writer supports running multiple writer instances with the same class ID, and it supports a requester moving a component to a different writer instance at restore time using . Windows Server 2003: This value is not supported until Windows Server 2003 SP1. The writer supports backing up data that is part of the system state, but that can also be backed up independently of the system state. Windows Server 2003: This value is not supported until Windows Vista. The writer supports a requester setting a roll-forward restore point using . Windows Server 2003: This value is not supported until Windows Vista. The writer supports a requester setting a restore name using . Windows Server 2003: This value is not supported until Windows Vista. The writer supports a requester setting authoritative restore using . Windows Server 2003: This value is not supported until Windows Vista. The writer supports multiple unsynchronized restore events. Windows Vista and Windows Server 2003: This value is not supported until Windows Server 2008. The class is returned to a calling application by a number of query methods. It provides detailed information about a file or set of files (a file set). The following methods return a instance: Initializes a new instance of the class. The alternate location. The backup type mask. The file specification. The path. if set to true this file description is recursive. Obtains the alternate backup location of the component files. Obtains the file backup specification for a file or set of files. Windows XP: This value is not supported in Windows XP and will always return Obtains the file specification for the list of files provided. Obtains the fully qualified directory path for the list of files provided. Determines whether only files in the root directory or files in the entire directory hierarchy are considered for backup. VSS API reference: IVssWMFiledesc::GetRecursive() Represents a component-level error reported by writers. Initializes a new instance of the class. The error code. The application error code. The application message. Gets the HRESULT failure code that the writer passed for the hr parameter of the IVssComponentEx2::SetFailure method. Gets the additional error code if provided by the writer. Gets an error message for the requester to display to the end user. The writer is responsible for localizing this string if necessary before using it in this method. This parameter is optional and can be or an empty string. The enumeration indicates the current state of the writer. A requester determines the state of a writer through . The writer's state is not known.This indicates an error on the part of the writer. The writer has completed processing current shadow copy events and is ready to proceed, or CVssWriter::OnPrepareSnapshot has not yet been called. The writer is waiting for the freeze state. The writer is waiting for the thaw state. The writer is waiting for the PostSnapshot state. The writer is waiting for the requester to finish its backup operation. The writer vetoed the shadow copy creation process at the writer identification state. The writer vetoed the shadow copy creation process during the backup preparation state. The writer vetoed the shadow copy creation process during the PrepareForSnapshot state. The writer vetoed the shadow copy creation process during the freeze state. The writer vetoed the shadow copy creation process during the thaw state. The writer vetoed the shadow copy creation process during the PostSnapshot state. The shadow copy has been created and the writer failed during the BackupComplete state. A writer should save information about this failure to the error log. The writer failed during the PreRestore state. The writer failed during the PostRestore state. The writer failed during the shutdown of the backup application. The enumeration indicates the type of backup to be performed using VSS writer/requester coordination. For more information see MSDN documentation on VSS_BACKUP_TYPE Enumeration The backup type is not known. This value indicates an application error. Full backup: all files, regardless of whether they have been marked as backed up or not, are saved. This is the default backup type and schema, and all writers support it. Each file's backup history will be updated to reflect that it was backed up. Incremental backup: files created or changed since the last full or incremental backup are saved. Files are marked as having been backed up. A requester can implement this sort of backup on a particular writer only if it supports the schema. If a requester's backup type is and a particular writer's backup schema does not support that sort of backup, the requester will always perform a full () backup on that writer's data. Differential backup: files created or changed since the last full backup are saved. Files are not marked as having been backed up. A requester can implement this sort of backup on a particular writer only if it supports the schema. If a requester's backup type is and a particular writer's backup schema does not support that sort of backup, the requester will always perform a full () backup on that writer's data. The log file of a writer is to participate in backup or restore operations. A requester can implement this sort of backup on a particular writer only if it supports the schema. If a requester's backup type is and a particular writer's backup schema does not support that sort of backup, the requester will always perform a full () backup on that writer's data. Files on disk will be copied to a backup medium regardless of the state of each file's backup history, and the backup history will not be updated. A requester can implement this sort of backup on a particular writer only if it supports the schema. If a requester's backup type is and a particular writer's backup schema does not support that sort of backup, the requester will always perform a full () backup on that writer's data. Backup type that is not full, copy, log, incremental, or differential. The class specifies shadow copy provider properties. Initializes a new instance of the class. The provider id. Name of the provider. Type of the provider. The provider version. The provider version id. The class id. Identifies the provider who supports shadow copies of this class. The provider name. The provider type. See for more information. The provider version in readable format. A uniquely identifying the version of a provider. Class identifier of the component registered in the local machine's COM catalog. Contains information about a volume's shadow copy protection level. Initializes a new instance of the class. The protection level. if set to true the volume is offline for protection. The protection fault. The failure status. if set to true the volume has unused diff area. Gets the target protection level for the volume. The target protection level for the volume. Gets a value indicating whether the volume is offline due to a protection fault. true if the volume is offline due to a protection fault; otherwise, false. Gets a value that describes the shadow copy protection fault that caused the volume to go offline. A value that describes the shadow copy protection fault that caused the volume to go offline. Gets the internal failure status code. The internal failure status code. Gets a value indicating whether the volume has unused shadow copy storage area files or not. true if the volume has unused shadow copy storage area files; otherwise, false. Information about a file set (a specified file or files) to participate in an incremental or differential backup or restore as a differenced file, that is, backup and restores associated with it are to be implemented as if entire files are copied to and from backup media (as opposed to using partial files). Initializes a new instance of the class. The path to the differenced files. The file specification of the differenced files. The time of last modification for the difference files. if the filespec for the differenced files should be interpreted recursively, otherwise. The path to the differenced files. Users of this method need to check to determine whether this path ends with a backslash (\). The file specification of the differenced files. Boolean specifying whether the file specification for the differenced files should be interpreted recursively. If , then the entire directory hierarchy will need to be searched for files matching the file specification to find files to be handled as differenced files during incremental or differential backups. If , only the root directory needs to be searched. The writer specification of the time of last modification for the difference files. Exception thrown to indicate an expected provider error. The provider logged the error in the event log. Initializes a new instance of the class with a system-supplied message describing the error. Initializes a new instance of the class with a specified error message. The message that describes the error Initializes a new instance of the class with a specified error message and a reference to the inner exception that is the cause of this exception. The message that describes the error The exception that is the cause of the current exception. Initializes a new instance of the class. The that holds the serialized object data about the exception being thrown. The that contains contextual information about the source or destination. The parameter is . The class name is or is zero (0). The enumeration is used by both the requester and the writer to specify the type of component being used with a shadow copy backup operation. A writer sets a component's type when it adds the component to its Writer Metadata Document using IVssCreateWriterMetadata.AddComponent Writers and requesters can find the type information of components selected for inclusion in a Backup Components Document through calls to to return a component type directly. A requester can obtain the type of any component in a given writer's Writer Metadata Document by doing the following: Using to obtain a interface Examining the Type member of the object Undefined component type. This value indicates an application error. Database component. File group component. This is any component other than a database. Exception thrown to indicate that the specified snapshot specifies a shadow copy that does not exist in the Backup Components Document. Initializes a new instance of the class. Initializes a new instance of the class. The message. Initializes a new instance of the class. The message. The inner. Initializes a new instance of the class. The that holds the serialized object data about the exception being thrown. The that contains contextual information about the source or destination. The parameter is . The class name is null or is zero (0). Exception indicating the writer is reporting one or more component-level errors. To retrieve the errors, the requester must use the property. Initializes a new instance of the class. Initializes a new instance of the class. The message that describes the error Initializes a new instance of the class. The message that describes the error The exception that is the cause of the current exception. Initializes a new instance of the class. The that holds the serialized object data about the exception being thrown. The that contains contextual information about the source or destination. The parameter is . The class name is or is zero (0). Defines the set of shadow copy protection faults. A shadow copy protection fault occurs when the VSS service is unable to perform a copy-on- write operation to the shadow copy storage area (also called the diff area). No shadow copy protection fault has occurred. The volume that contains the shadow copy storage area could not be found. Usually this fault means that the volume has not yet arrived in the system. The volume that contains the shadow copy storage area could not be brought online because an I/O failure occurred. The shadow copy metadata for the shadow copy storage area has been corrupted. A memory allocation failure occurred. This could be caused by a temporary low-memory condition that does not happen again after you clear the fault and restart the shadow copy operation. A memory mapping failure occurred. This fault could mean that the page file is too small, or it could be caused by a low-memory condition. A read failure occurred during the copy-on-write operation when data was being copied from the live volume to the shadow copy storage area volume. A read or write failure occurred during the copy-on-write operation when data was being copied from the live volume to the shadow copy storage area volume. One possible reason is that the shadow copy storage area volume has been removed from the system. This failure means that either the shadow copy storage area is full or the shadow copy storage area volume is full. After clearing the protection fault, you can do one of the following: Delete unused shadow copy storage areas by calling the method. Increase the shadow copy storage area maximum size for the volume by calling the method. The size of the shadow copy storage area could not be increased because there was no longer enough space on the shadow copy storage area volume. The size of the shadow copy storage area could not be increased. An unexpected error occurred. Either the shadow copy storage area files could not be opened or the shadow copy storage area volume could not be mounted because of a file system operation failure. A read or write failure occurred on the shadow copy storage area volume. The shadow copy storage area volume was removed from the system or could not be accessed for some other reason. Another application attempted to write to the shadow copy storage area. Enumeration used to discriminate between the named windows versions. The values of the enumeration are ordered so a later released operating system version has a higher number, so comparisons between named versions are meaningful. A windows version earlier than Windows 2000. Windows 2000 (Server or Professional) Windows XP Windows Server 2003 Windows Vista Windows Server 2008 Windows 7 Windows Server 2008 R2 A Windows version later than Windows Server 2008R2. Represents information stored by a writer, at backup time, to the Backup Components Document to indicate that when a file is to be restored, it (the source file) should be remapped. The file may be restored to a new restore target and/or ranges of its data restored to different locations with the restore target. Initializes a new instance of the class. The source path. The source file name. The source range list. The destination path. The destination file name. The destination range list. The path to the directory that at backup time contained the file to be restored (the source file). This path should match or be beneath the path of a file set already in the component or one of its Subcomponents (if the component defines a component set). The name of the file (at backup time) that is to be remapped during a restore (the source file). The name of this file should not contain any wildcard characters, and must be a member of the same file set as the source path (). A comma-separated list of file offsets and lengths indicating the source file support range (the sections of the file to be restored). The number and length of the source file support ranges must match the number and size of destination file support ranges. The path to which source file data will be remapped at restore time. The name of the file to which source file data will be remapped at restore time. A comma-separated list of file offsets and lengths indicating the destination file support range (locations to which the sections of the source file are to be restored). The number and length of the destination file support ranges must match the number and size of source file support ranges. Static class providing access to information about the operating system under which the assembly is executing. Determines whether the current process is running under WOW64. true if the current process is running under WOW64; otherwise, false. Determines whether the operating system is of the specified version or later. The lowest version for which to return true. true if the operating system is of the specified or later; otherwise, false. Determines whether operating system is of the specified version or later, allowing specification of a minimum service pack that must be installed on the lowest version. The minimum required version. The major version of the service pack that must be installed on the minimum required version to return true. This can be 0 to indicate that no service pack is required. true if the operating system matches the specified with the specified service pack, or if the operating system is of a later version; otherwise, false. Determines whether operating system is of the specified server version or later or if it is of the specified client version or later and throws otherwise. The minimum server version. The minimum server service pack version (applies only if the version exactly matches the specified server version). The minimum client version. The minimum client service pack version (applies only if the version exactly matches the specified client version). Determines whether the operating system is a server operating system of atleast the specified and and throws an otherwise. The server version. The server service pack version. Determines whether the assembly is executing on the specified operating system version or later. If not, an exception is thrown. The minimum operating system version required. The current operating system is of a version earlier than the specified Determines whether the assembly is executing on the specified operating system version with the specified service pack installed or any later version of windows. If not, an exception is thrown. The minimum operating system version required. The minimum service pack version required. The current operating system is of a version earlier than the specified or the versions match but the operating system does not have at least the specified service pack version installed. Gets the named version of the operating system. The named version of the operating system. Gets a value indicating whether the operating system is a server os. true if the current operating system is a server os; otherwise, false. Gets the numeric version of the operating system. This is the same as returned by . The numeric version of the operating system. Gets the version of the service pack currently installed on the operating system. The version of the service pack currently installed on the operating system. Only the and fields are used. Gets the processor architecture for which the operating system is targeted. The processor architecture for which the operating system is targeted. If running under WOW64 this will return a 32-bit processor. Use to determine if this is the case.