This documentation describes the AlphaVSS managed interface to the VSS API.
AlphaVSS replicates the unmanaged VSS API fairly closely, and the official documentation from Microsoft should be consulted for information about using the Windows volume shadow copy service, and should also serve as a good documentation for this library. The documentation provided here is provided for convenience only, and the official documentation on the MSDN homepage should always be consulted for the latest and most accurate information about the inner workings of the Volume Shadow Copy services.
Static class providing access to information about the operating system under which the assembly is executing.
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.
Exception class indicating that the vss object referenced was not in a correct state for the requested operation.
Exception indicating that the resynchronization destination contained a volume that was not explicitly included.
Represents a component-level error reported by writers.
Exception thrown to indicate that the requested deletion of snapshots did not complete successfully.
The VssDiffAreaProperties structure describes associations between volumes containing the original file data and volumes containing the shadow copy storage area (also known as the diff area).
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).
The VssDiffVolumeProperties structure describes a shadow copy storage area volume.
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.
Base class for exceptions indicating an error occuring during a VSS operation.
Exception thrown to indicate The system was unable to flush I/O writes.
Exception thrown to indicate that the system was unable to hold I/O writes.
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.
Exception thrown to indicate that the system or provider has insufficient storage space.
Exception thrown to indicate that the XML document is not valid. Check the event log for details.
Exception indicating that this version of the hardware provider does not support this operation.
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.
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.
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.
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.
Exception thrown to indicate that the requested object was a duplicate.
Exception thrown to indicate that the requested object did not exists.
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 the writer is reporting one or more component-level errors. To retrieve the errors, the requester must use the Failure property.
Representation of information on a partial file associated with a component.
Exception thrown to indicate that the requested identifier does not correspond to a registered provider.
The VssProviderProperties class specifies shadow copy provider properties.
Exception thrown to indicate an expected provider error. The provider logged the error in the event log.
Exception thrown to indicate that the provider encountered an error that requires the user to restart the computer.
Represents information about a Subcomponent associated with a given component.
Exception thrown to indicate that another LUN resynchronization operation is already in progress.
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.
Exception thrown to indicate that the volume already has a revert in progress.
Exception thrown to indicate that the specified snapshot specifies a shadow copy that does not exist in the Backup Components Document.
The VssSnapshotProperties class contains the properties of a shadow copy or shadow copy set.
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.
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.
Exception thrown to indicate that the system was unable to freeze the Distributed Transaction Coordinator (DTC) or the Kernel Transaction Manager (KTM).
Exception thrown to indicate that the system was unable to thaw the Distributed Transaction Coordinator (DTC) or the Kernel Transaction Manager (KTM).
Exception class indicating that an unexpected error occured. The error code is logged in the error log file.
Exception thrown to indicate that the provider returned an unexpected error code. This can be a transient problem.
Exception thrown to indicate that an unexpected error occurred during communication with writers.
Exception indicating that the resynchronization destination contained a volume that was not explicitly included.
Exception thrown to indicate that the operation is not supported under the current context.
The VssUtils class is a static utility class for accessing the platform specific instances of the various VSS interfaces in a platform-independent manner.
VssWMDependency 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.
The VssWMFileDescriptor 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).
Represents information about how a writer wants its data to be restored.
Exception indicating that the volume was in use and could not be locked.
Exception thrown to indicate that the volume is not supported by the specified provider.
Exception thrown to indicate that the volume does not support the requested operation, or that no provider supports it.
The VssVolumeProperties class contains the properties of a shadow copy source volume.
Contains information about a volume's shadow copy protection level.
Base class for exceptions thrown to indicate errors reported by VSS writers.
Exception thrown to indicate that the writer infrastructure is not operating properly.
Exception indicating that the writer is not responding.
Represenation of the status for a specific writer.
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.
Represents the status of an asynchronous operation performed by the VSS framework.
The IVssBackupComponents class is used by a requester to poll writers about file status and to run backup/restore operations.
Interface containing methods for examining and modifying information about components contained in a requester's Backup Components Document.
The IVssDifferentialSoftwareSnapshotManagement interface contains methods that allow applications to query and manage shadow copy storage areas generated by the system shadow copy provider.
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.
IVssImplementation provides an interface to the global methods of the VSS API compiled for a specific platform.
The IVssSnapshotManagement interface provides a method that returns an interface to further configure a shadow copy provider.
Enumeration used to discriminate between the named windows versions.
Enumeration used by OperatingSystemInfo to indicate the current processor architecture for which the operating system is targeted and running.
The VssBackupType enumeration indicates the type of backup to be performed using VSS writer/requester coordination.
The VssComponentFlags enumeration is used by writers to indicate support for auto-recovery.
The VssComponentType enumeration is used by both the requester and the writer to specify the type of component being used with a shadow copy backup operation.
The VssError enumeration represents error- and success codes that may be returned by some Vss methods.
The VssFileRestoreStatus enumeration defines the set of statuses of a file restore operation performed on the files managed by a selected component or component set.
The VssFileSpecificationBackupType 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 VssFileSpecificationBackupType values indicating the following:
Defines shadow copy LUN flags.
The VssObjectType enumeration is used by requesters to identify an object as a shadow copy set, shadow copy, or provider.
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).
Defines the set of volume shadow copy protection levels.
The VssProviderType enumeration specifies the provider type.
Used by a requester to specify how a resynchronization operation is to be performed.
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.
The VssRestoreTarget 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 VssRestoreMethod).
The VssRestoreType enumeration is used by a requester to indicate the type of restore operation it is about to perform.
The VssRollForwardType enumeration is used by a requester to indicate the type of roll-forward operation it is about to perform.
The VssSnapshotCompatibility enumeration indicates which volume control or file I/O operations are disabled for the volume that has been shadow copied.
The VssSnapshotContext enumeration enables a requester using SetContext Overload to specify how a shadow copy is to be created, queried, or deleted and the degree of writer involvement. IVssBackupComponents::SetContext" method) may be modified by a bitmask that contains a valid combination of VssVolumeSnapshotAttributes and VssSnapshotContext enumeration values.
The VssSnapshotState enumeration is returned by a provider to specify the state of a given shadow copy operation.
The VssSourceType enumeration specifies the type of data that a writer manages.
The VssUsageType enumeration specifies how the host system uses the data managed by a writer involved in a VSS operation.
The VssWriterRestore enumeration is used by a writer to indicate to a requester the conditions under which it will handle events generated during a restore operation.
The VssWriterState enumeration indicates the current state of the writer.