Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/duplicati/duplicati.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorkenneth.skovhede@gmail.com <kenneth.skovhede@gmail.com@59da171f-624f-0410-aa54-27559c288bec>2010-08-12 22:32:15 +0400
committerkenneth.skovhede@gmail.com <kenneth.skovhede@gmail.com@59da171f-624f-0410-aa54-27559c288bec>2010-08-12 22:32:15 +0400
commit51552bea24388a4a8c1f21bae7517c92305aa89d (patch)
tree3fe8cd0ace676eb374ba424aa3e90347b3994526 /thirdparty/alphavss
parent1153d097fc5d68156aba53d372fd23764f188225 (diff)
Fixes for issue #18.
Added snapshot support using either VSS (win xp/vista/7) or LVM (linux). Using the snapshot feature requires administrative/root privileges, and is toggled by the "snapshot-policy" option (by commandline or in advanced settings). Also improved the validation of options to not show incorrect warnings. This fixes issue #233. git-svn-id: https://duplicati.googlecode.com/svn/trunk@461 59da171f-624f-0410-aa54-27559c288bec
Diffstat (limited to 'thirdparty/alphavss')
-rw-r--r--thirdparty/alphavss/Bin/AlphaFS.XML6392
-rw-r--r--thirdparty/alphavss/Bin/AlphaFS.dllbin0 -> 260608 bytes
-rw-r--r--thirdparty/alphavss/Bin/AlphaFS.dll.config3
-rw-r--r--thirdparty/alphavss/Bin/AlphaVSS.Common.dllbin0 -> 56320 bytes
-rw-r--r--thirdparty/alphavss/Bin/AlphaVSS.Common.dll.config3
-rw-r--r--thirdparty/alphavss/Bin/AlphaVSS.Common.xml6936
-rw-r--r--thirdparty/alphavss/Homepage.txt1
-rw-r--r--thirdparty/alphavss/License.txt8
-rw-r--r--thirdparty/alphavss/platform/AlphaVSS.Win2003.x64.dllbin0 -> 154112 bytes
-rw-r--r--thirdparty/alphavss/platform/AlphaVSS.Win2003.x86.dllbin0 -> 133632 bytes
-rw-r--r--thirdparty/alphavss/platform/AlphaVSS.Win2008.x64.dllbin0 -> 166400 bytes
-rw-r--r--thirdparty/alphavss/platform/AlphaVSS.Win2008.x86.dllbin0 -> 145408 bytes
-rw-r--r--thirdparty/alphavss/platform/AlphaVSS.WinXP.x64.dllbin0 -> 154112 bytes
-rw-r--r--thirdparty/alphavss/platform/AlphaVSS.WinXP.x86.dllbin0 -> 118784 bytes
14 files changed, 13343 insertions, 0 deletions
diff --git a/thirdparty/alphavss/Bin/AlphaFS.XML b/thirdparty/alphavss/Bin/AlphaFS.XML
new file mode 100644
index 000000000..5280ebfa9
--- /dev/null
+++ b/thirdparty/alphavss/Bin/AlphaFS.XML
@@ -0,0 +1,6392 @@
+<?xml version="1.0"?>
+<doc>
+ <assembly>
+ <name>AlphaFS</name>
+ </assembly>
+ <members>
+ <member name="T:Alphaleonis.Win32.Security.Privilege">
+ <summary>
+ Represents a privilege for an access token. The privileges available on the local machine are available as
+ static instances from this class. To create a <see cref="T:Alphaleonis.Win32.Security.Privilege"/> representing a privilege on another system,
+ use the constructor specifying a system name together with one of these static instances.
+ </summary>
+ <seealso cref="T:Alphaleonis.Win32.Security.PrivilegeEnabler"/>
+ </member>
+ <member name="F:Alphaleonis.Win32.Security.Privilege.AssignPrimaryToken">
+ <summary>
+ Required to assign the primary token of a process. User Right: Replace a process-level token.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Security.Privilege.Audit">
+ <summary>
+ Required to generate audit-log entries. Give this privilege to secure servers. User Right: Generate security audits.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Security.Privilege.Backup">
+ <summary>
+ Required to perform backup operations. This privilege causes the system to grant all read access control to any file, regardless of the access control list (ACL) specified for the file. Any access request other than read is still evaluated with the ACL. User Right: Back up files and directories.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Security.Privilege.ChangeNotify">
+ <summary>
+ Required to receive notifications of changes to files or directories. This privilege also causes the system to skip all traversal access checks. It is enabled by default for all users. User Right: Bypass traverse checking.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Security.Privilege.CreateGlobal">
+ <summary>
+ Required to create named file mapping objects in the global namespace during Terminal Services sessions. This privilege is enabled by default for administrators, services, and the local system account. User Right: Create global objects.
+ </summary>
+ <remarks>Windows XP/2000: This privilege is not supported. Note that this value is supported starting with Windows Server 2003, Windows XP SP2, and Windows 2000 SP4.</remarks>
+ </member>
+ <member name="F:Alphaleonis.Win32.Security.Privilege.CreatePagefile">
+ <summary>
+ Required to create a paging file. User Right: Create a pagefile.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Security.Privilege.CreatePermanent">
+ <summary>
+ Required to create a permanent object. User Right: Create permanent shared objects.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Security.Privilege.CreateSymbolicLink">
+ <summary>
+ Required to create a symbolic link. User Right: Create symbolic links.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Security.Privilege.CreateToken">
+ <summary>
+ Required to create a primary token. User Right: Create a token object.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Security.Privilege.Debug">
+ <summary>
+ Required to debug and adjust the memory of a process owned by another account. User Right: Debug programs.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Security.Privilege.EnableDelegation">
+ <summary>
+ Required to mark user and computer accounts as trusted for delegation. User Right: Enable computer and user accounts to be trusted for delegation.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Security.Privilege.Impersonate">
+ <summary>
+ Required to impersonate. User Right: Impersonate a client after authentication.
+ </summary>
+ <remarks>Windows XP/2000: This privilege is not supported. Note that this value is supported starting with Windows Server 2003, Windows XP SP2, and Windows 2000 SP4.</remarks>
+ </member>
+ <member name="F:Alphaleonis.Win32.Security.Privilege.IncreaseBasePriority">
+ <summary>
+ Required to increase the base priority of a process. User Right: Increase scheduling priority.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Security.Privilege.IncreaseQuota">
+ <summary>
+ Required to increase the quota assigned to a process. User Right: Adjust memory quotas for a process.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Security.Privilege.IncreaseWorkingSet">
+ <summary>
+ Required to allocate more memory for applications that run in the context of users. User Right: Increase a process working set.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Security.Privilege.LoadDriver">
+ <summary>
+ Required to load or unload a device driver. User Right: Load and unload device drivers.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Security.Privilege.LockMemory">
+ <summary>
+ Required to lock physical pages in memory. User Right: Lock pages in memory.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Security.Privilege.MachineAccount">
+ <summary>
+ Required to create a computer account. User Right: Add workstations to domain.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Security.Privilege.ManageVolume">
+ <summary>
+ Required to enable volume management privileges. User Right: Manage the files on a volume.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Security.Privilege.ProfileSingleProcess">
+ <summary>
+ Required to gather profiling information for a single process. User Right: Profile single process.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Security.Privilege.Relabel">
+ <summary>
+ Required to modify the mandatory integrity level of an object. User Right: Modify an object label.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Security.Privilege.RemoteShutdown">
+ <summary>
+ Required to shut down a system using a network request. User Right: Force shutdown from a remote system.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Security.Privilege.Restore">
+ <summary>
+ Required to perform restore operations. This privilege causes the system to grant all write access control to any file, regardless of the ACL specified for the file. Any access request other than write is still evaluated with the ACL. Additionally, this privilege enables you to set any valid user or group SID as the owner of a file. User Right: Restore files and directories.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Security.Privilege.Security">
+ <summary>
+ Required to perform a number of security-related functions, such as controlling and viewing audit messages. This privilege identifies its holder as a security operator. User Right: Manage auditing and security log.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Security.Privilege.Shutdown">
+ <summary>
+ Required to shut down a local system. User Right: Shut down the system.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Security.Privilege.SyncAgent">
+ <summary>
+ Required for a domain controller to use the LDAP directory synchronization services. This privilege enables the holder to read all objects and properties in the directory, regardless of the protection on the objects and properties. By default, it is assigned to the Administrator and LocalSystem accounts on domain controllers. User Right: Synchronize directory service data.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Security.Privilege.SystemEnvironment">
+ <summary>
+ Required to modify the nonvolatile RAM of systems that use this type of memory to store configuration information. User Right: Modify firmware environment values.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Security.Privilege.SystemProfile">
+ <summary>
+ Required to gather profiling information for the entire system. User Right: Profile system performance.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Security.Privilege.SystemTime">
+ <summary>
+ Required to modify the system time. User Right: Change the system time.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Security.Privilege.TakeOwnership">
+ <summary>
+ Required to take ownership of an object without being granted discretionary access. This privilege allows the owner value to be set only to those values that the holder may legitimately assign as the owner of an object. User Right: Take ownership of files or other objects.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Security.Privilege.Tcb">
+ <summary>
+ This privilege identifies its holder as part of the trusted computer base. Some trusted protected subsystems are granted this privilege. User Right: Act as part of the operating system.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Security.Privilege.TimeZone">
+ <summary>
+ Required to adjust the time zone associated with the computer's internal clock. User Right: Change the time zone.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Security.Privilege.TrustedCredManAccess">
+ <summary>
+ Required to access Credential Manager as a trusted caller. User Right: Access Credential Manager as a trusted caller.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Security.Privilege.Undock">
+ <summary>
+ Required to undock a laptop. User Right: Remove computer from docking station.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Security.Privilege.UnsolicitedInput">
+ <summary>
+ Required to read unsolicited input from a terminal device. User Right: Not applicable.
+ </summary>
+ </member>
+ <member name="M:Alphaleonis.Win32.Security.Privilege.#ctor(System.String,Alphaleonis.Win32.Security.Privilege)">
+ <summary>
+ Create a new <see cref="T:Alphaleonis.Win32.Security.Privilege"/> representing the specified privilege on the specified system.
+ </summary>
+ <param name="systemName">Name of the system.</param>
+ <param name="privilege">The privilege to copy the privilege name from.</param>
+ </member>
+ <member name="M:Alphaleonis.Win32.Security.Privilege.LookupDisplayName">
+ <summary>
+ Retrieves the display name that represents this privilege.
+ </summary>
+ <returns>The display name that represents this privilege.</returns>
+ </member>
+ <member name="M:Alphaleonis.Win32.Security.Privilege.LookupLuid">
+ <summary>
+ Retrieves the locally unique identifier (LUID) used on to represent this privilege (on the system from which it originates).
+ </summary>
+ <returns>the locally unique identifier (LUID) used on to represent this privilege (on the system from which it originates).</returns>
+ </member>
+ <member name="M:Alphaleonis.Win32.Security.Privilege.Equals(Alphaleonis.Win32.Security.Privilege)">
+ <summary>
+ Indicates whether the current object is equal to another object of the same type.
+ </summary>
+ <param name="other">An object to compare with this object.</param>
+ <returns>
+ true if the current object is equal to the <paramref name="other"/> parameter; otherwise, false.
+ </returns>
+ </member>
+ <member name="M:Alphaleonis.Win32.Security.Privilege.Equals(System.Object)">
+ <summary>
+ Determines whether the specified <see cref="T:System.Object"/> is equal to the current <see cref="T:System.Object"/>.
+ </summary>
+ <param name="obj">The <see cref="T:System.Object"/> to compare with the current <see cref="T:System.Object"/>.</param>
+ <returns>
+ true if the specified <see cref="T:System.Object"/> is equal to the current <see cref="T:System.Object"/>; otherwise, false.
+ </returns>
+ <exception cref="T:System.NullReferenceException">The <paramref name="obj"/> parameter is null.</exception>
+ </member>
+ <member name="M:Alphaleonis.Win32.Security.Privilege.GetHashCode">
+ <summary>
+ Serves as a hash function for a particular type.
+ </summary>
+ <returns>
+ A hash code for the current <see cref="T:System.Object"/>.
+ </returns>
+ </member>
+ <member name="M:Alphaleonis.Win32.Security.Privilege.ToString">
+ <summary>
+ Returns the system name for this privilege.
+ </summary>
+ <remarks>This is equivalent to <see cref="P:Alphaleonis.Win32.Security.Privilege.Name"/>.</remarks>
+ <returns>
+ A <see cref="T:System.String"/> that represents the current <see cref="T:System.Object"/>.
+ </returns>
+ </member>
+ <member name="M:Alphaleonis.Win32.Security.Privilege.#ctor(System.String)">
+ <summary>
+ Initializes a new instance of the <see cref="T:Alphaleonis.Win32.Security.Privilege"/> class, representing a privilege
+ with the specified name on the local system.
+ </summary>
+ <param name="name">The name.</param>
+ </member>
+ <member name="P:Alphaleonis.Win32.Security.Privilege.Name">
+ <summary>
+ Gets the system name identifying this privilege.
+ </summary>
+ <value>The system name identifying this privilege.</value>
+ </member>
+ <member name="T:Alphaleonis.Win32.Filesystem.BackupStreamType">
+ <summary>
+ The type of the data contained in the backup stream.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Filesystem.BackupStreamType.Unknown">
+ <summary>
+ This indicates an error.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Filesystem.BackupStreamType.Data">
+ <summary>
+ Standard data
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Filesystem.BackupStreamType.ExtendedAttributesData">
+ <summary>
+ Extended attribute data
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Filesystem.BackupStreamType.SecurityData">
+ <summary>
+ Security descriptor data
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Filesystem.BackupStreamType.AlternateData">
+ <summary>
+ Alternative data streams
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Filesystem.BackupStreamType.Link">
+ <summary>
+ Hard Link Information
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Filesystem.BackupStreamType.PropertyData">
+ <summary>
+ Property data
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Filesystem.BackupStreamType.ObjectId">
+ <summary>
+ Object identifiers
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Filesystem.BackupStreamType.ReparseData">
+ <summary>
+ Reparse points
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Filesystem.BackupStreamType.SparseBlock">
+ <summary>
+ Sparse file
+ </summary>
+ </member>
+ <member name="T:Alphaleonis.Win32.Filesystem.ReparsePointTag">
+ <summary>
+ Enumeration specifying the different reparse point tags.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Filesystem.ReparsePointTag.None">
+ <summary>
+ The entry is not a reparse point
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Filesystem.ReparsePointTag.Dfs">
+ <summary>
+ Dfs
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Filesystem.ReparsePointTag.Dfsr">
+ <summary>
+ Dfsr
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Filesystem.ReparsePointTag.Hsm">
+ <summary>
+ Hsm
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Filesystem.ReparsePointTag.Hsm2">
+ <summary>
+ Hsm2
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Filesystem.ReparsePointTag.MountPoint">
+ <summary>
+ The entry is a mount point
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Filesystem.ReparsePointTag.Sis">
+ <summary>
+ Sis
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Filesystem.ReparsePointTag.SymLink">
+ <summary>
+ The entry is a symbolic link
+ </summary>
+ </member>
+ <member name="T:Alphaleonis.Win32.Filesystem.FileMode">
+ <summary>
+ Specifies how the operating system should open a file.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Filesystem.FileMode.CreateNew">
+ <summary>
+ Specifies that the operating system should create a new file. If the file already exists, an exception is thrown.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Filesystem.FileMode.Create">
+ <summary>
+ Specifies that the operating system should create a new file. If the file already exists, it will be overwritten.
+ Create is equivalent to requesting that if the file does not exist, use <see cref="F:Alphaleonis.Win32.Filesystem.FileMode.CreateNew"/>; otherwise, use <see cref="F:Alphaleonis.Win32.Filesystem.FileMode.Truncate"/>.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Filesystem.FileMode.Open">
+ <summary>
+ Specifies that the operating system should open an existing file. The ability to open the file is dependent on the value specified by <see cref="T:Alphaleonis.Win32.Filesystem.FileAccess"/>. A <see cref="T:System.IO.FileNotFoundException"/> is thrown if the file does not exist.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Filesystem.FileMode.OpenOrCreate">
+ <summary>
+ Specifies that the operating system should open a file if it exists; otherwise, a new file should be created.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Filesystem.FileMode.Truncate">
+ <summary>
+ Specifies that the operating system should open an existing file. Once opened, the file should be truncated so that its size is zero bytes. Attempts to read from a file opened with <c>Truncate</c> cause an exception.
+ </summary>
+ </member>
+ <member name="T:Alphaleonis.Win32.Filesystem.FileEncryptionStatus">
+ <summary>
+ Represents the encryption status of the specified file.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Filesystem.FileEncryptionStatus.Encryptable">
+ <summary>
+ The file can be encrypted.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Filesystem.FileEncryptionStatus.Encrypted">
+ <summary>
+ The file is encrypted.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Filesystem.FileEncryptionStatus.ReadOnly">
+ <summary>
+ The file is a read-only file.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Filesystem.FileEncryptionStatus.RootDir">
+ <summary>
+ The file is a root directory. Root directories cannot be encrypted.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Filesystem.FileEncryptionStatus.SystemFile">
+ <summary>
+ The file is a system file. System files cannot be encrypted.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Filesystem.FileEncryptionStatus.SystemDirectory">
+ <summary>
+ The file is a system directory. System directories cannot be encrypted.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Filesystem.FileEncryptionStatus.NoFilesystemSupport">
+ <summary>
+ The file system does not support file encryption.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Filesystem.FileEncryptionStatus.Unknown">
+ <summary>
+ The encryption status is unknown. The file may be encrypted.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Filesystem.FileEncryptionStatus.UserDisallowed">
+ <summary>
+ Reserved for future use.
+ </summary>
+ </member>
+ <member name="T:Alphaleonis.Win32.Filesystem.BackupFileStream">
+ <summary>
+ The <see cref="T:Alphaleonis.Win32.Filesystem.BackupFileStream"/> provides access to data associated with a specific file or directory, including security information
+ and alternative data streams, for backup and restore operations.
+ </summary>
+ <remarks>This class uses the <see href="http://msdn.microsoft.com/en-us/library/aa362509(VS.85).aspx">BackupRead</see>,
+ <see href="http://msdn.microsoft.com/en-us/library/aa362510(VS.85).aspx">BackupSeek</see> and
+ <see href="http://msdn.microsoft.com/en-us/library/aa362511(VS.85).aspx">BackupWrite</see> functions from the Win32 API to provide
+ access to the file or directory.
+ </remarks>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.BackupFileStream.#ctor(Alphaleonis.Win32.Filesystem.KernelTransaction,System.String,Alphaleonis.Win32.Filesystem.FileMode,Alphaleonis.Win32.Filesystem.FileSystemRights,Alphaleonis.Win32.Filesystem.FileShare,Alphaleonis.Win32.Filesystem.FileOptions,System.Security.AccessControl.FileSecurity)">
+ <summary>
+ Initializes a new instance of the <see cref="T:Alphaleonis.Win32.Filesystem.BackupFileStream"/> class with the specified path, creation mode, access rights
+ and sharing permission, additional file options, access control and audit security.
+ </summary>
+ <param name="transaction">The transaction.</param>
+ <param name="path">A relative or absolute path for the file that the current <see cref="T:Alphaleonis.Win32.Filesystem.BackupFileStream"/> object will encapsulate.</param>
+ <param name="mode">A <see cref="T:Alphaleonis.Win32.Filesystem.FileMode"/> constant that determines how to open or create the file.</param>
+ <param name="access">A <see cref="T:Alphaleonis.Win32.Filesystem.FileSystemRights"/> constant that determines the access rights to use when creating access and audit rules for the file.</param>
+ <param name="share">A <see cref="T:Alphaleonis.Win32.Filesystem.FileShare"/> constant that determines how the file will be shared by processes.</param>
+ <param name="options">A <see cref="T:Alphaleonis.Win32.Filesystem.FileOptions"/> constant that specifies additional file options.</param>
+ <param name="security">A <see cref="T:System.Security.AccessControl.FileSecurity"/> constant that determines the access control and audit security for the file. This parameter may be <see langword="null"/>.</param>
+ <overloads>
+ Initializes a new instance of the <see cref="T:Alphaleonis.Win32.Filesystem.BackupFileStream"/> class.
+ </overloads>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.BackupFileStream.#ctor(Alphaleonis.Win32.Filesystem.KernelTransaction,System.String,Alphaleonis.Win32.Filesystem.FileMode,Alphaleonis.Win32.Filesystem.FileSystemRights,Alphaleonis.Win32.Filesystem.FileShare,Alphaleonis.Win32.Filesystem.FileOptions)">
+ <summary>
+ Initializes a new instance of the <see cref="T:Alphaleonis.Win32.Filesystem.BackupFileStream"/> class with the specified path, creation mode, access rights
+ and sharing permission, and additional file options.
+ </summary>
+ <param name="transaction">The transaction.</param>
+ <param name="path">A relative or absolute path for the file that the current <see cref="T:Alphaleonis.Win32.Filesystem.BackupFileStream"/> object will encapsulate.</param>
+ <param name="mode">A <see cref="T:Alphaleonis.Win32.Filesystem.FileMode"/> constant that determines how to open or create the file.</param>
+ <param name="access">A <see cref="T:Alphaleonis.Win32.Filesystem.FileSystemRights"/> constant that determines the access rights to use when creating access and audit rules for the file.</param>
+ <param name="share">A <see cref="T:Alphaleonis.Win32.Filesystem.FileShare"/> constant that determines how the file will be shared by processes.</param>
+ <param name="options">A <see cref="T:Alphaleonis.Win32.Filesystem.FileOptions"/> constant that specifies additional file options.</param>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.BackupFileStream.#ctor(Alphaleonis.Win32.Filesystem.KernelTransaction,System.String,Alphaleonis.Win32.Filesystem.FileMode,Alphaleonis.Win32.Filesystem.FileSystemRights,Alphaleonis.Win32.Filesystem.FileShare)">
+ <summary>
+ Initializes a new instance of the <see cref="T:Alphaleonis.Win32.Filesystem.BackupFileStream"/> class with the specified path, creation mode, access rights
+ and sharing permission.
+ </summary>
+ <param name="transaction">The transaction.</param>
+ <param name="path">A relative or absolute path for the file that the current <see cref="T:Alphaleonis.Win32.Filesystem.BackupFileStream"/> object will encapsulate.</param>
+ <param name="mode">A <see cref="T:Alphaleonis.Win32.Filesystem.FileMode"/> constant that determines how to open or create the file.</param>
+ <param name="access">A <see cref="T:Alphaleonis.Win32.Filesystem.FileSystemRights"/> constant that determines the access rights to use when creating access and audit rules for the file.</param>
+ <param name="share">A <see cref="T:Alphaleonis.Win32.Filesystem.FileShare"/> constant that determines how the file will be shared by processes.</param>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.BackupFileStream.#ctor(Alphaleonis.Win32.Filesystem.KernelTransaction,System.String,Alphaleonis.Win32.Filesystem.FileMode,Alphaleonis.Win32.Filesystem.FileSystemRights)">
+ <summary>
+ Initializes a new instance of the <see cref="T:Alphaleonis.Win32.Filesystem.BackupFileStream"/> class with the specified path, creation mode and access rights.
+ </summary>
+ <param name="transaction">The transaction.</param>
+ <param name="path">A relative or absolute path for the file that the current <see cref="T:Alphaleonis.Win32.Filesystem.BackupFileStream"/> object will encapsulate.</param>
+ <param name="mode">A <see cref="T:Alphaleonis.Win32.Filesystem.FileMode"/> constant that determines how to open or create the file.</param>
+ <param name="access">A <see cref="T:Alphaleonis.Win32.Filesystem.FileSystemRights"/> constant that determines the access rights to use when creating access and audit rules for the file.</param>
+ <remarks>The file will be opened for exclusive access.</remarks>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.BackupFileStream.#ctor(Alphaleonis.Win32.Filesystem.KernelTransaction,System.String,Alphaleonis.Win32.Filesystem.FileMode)">
+ <summary>
+ Initializes a new instance of the <see cref="T:Alphaleonis.Win32.Filesystem.BackupFileStream"/> class with the specified path and creation mode.
+ </summary>
+ <param name="transaction">The transaction.</param>
+ <param name="path">A relative or absolute path for the file that the current <see cref="T:Alphaleonis.Win32.Filesystem.BackupFileStream"/> object will encapsulate.</param>
+ <param name="mode">A <see cref="T:Alphaleonis.Win32.Filesystem.FileMode"/> constant that determines how to open or create the file.</param>
+ <remarks>The file will be opened for exclusive access for both reading and writing.</remarks>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.BackupFileStream.#ctor(System.String,Alphaleonis.Win32.Filesystem.FileMode,Alphaleonis.Win32.Filesystem.FileSystemRights,Alphaleonis.Win32.Filesystem.FileShare,Alphaleonis.Win32.Filesystem.FileOptions,System.Security.AccessControl.FileSecurity)">
+ <summary>
+ Initializes a new instance of the <see cref="T:Alphaleonis.Win32.Filesystem.BackupFileStream"/> class with the specified path, creation mode, access rights
+ and sharing permission, additional file options, access control and audit security.
+ </summary>
+ <param name="path">A relative or absolute path for the file that the current <see cref="T:Alphaleonis.Win32.Filesystem.BackupFileStream"/> object will encapsulate.</param>
+ <param name="mode">A <see cref="T:Alphaleonis.Win32.Filesystem.FileMode"/> constant that determines how to open or create the file.</param>
+ <param name="access">A <see cref="T:Alphaleonis.Win32.Filesystem.FileSystemRights"/> constant that determines the access rights to use when creating access and audit rules for the file.</param>
+ <param name="share">A <see cref="T:Alphaleonis.Win32.Filesystem.FileShare"/> constant that determines how the file will be shared by processes.</param>
+ <param name="options">A <see cref="T:Alphaleonis.Win32.Filesystem.FileOptions"/> constant that specifies additional file options.</param>
+ <param name="security">A <see cref="T:System.Security.AccessControl.FileSecurity"/> constant that determines the access control and audit security for the file. This parameter may be <see langword="null"/>.</param>
+ <overloads>
+ Initializes a new instance of the <see cref="T:Alphaleonis.Win32.Filesystem.BackupFileStream"/> class.
+ </overloads>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.BackupFileStream.#ctor(System.String,Alphaleonis.Win32.Filesystem.FileMode,Alphaleonis.Win32.Filesystem.FileSystemRights,Alphaleonis.Win32.Filesystem.FileShare,Alphaleonis.Win32.Filesystem.FileOptions)">
+ <summary>
+ Initializes a new instance of the <see cref="T:Alphaleonis.Win32.Filesystem.BackupFileStream"/> class with the specified path, creation mode, access rights
+ and sharing permission, and additional file options.
+ </summary>
+ <param name="path">A relative or absolute path for the file that the current <see cref="T:Alphaleonis.Win32.Filesystem.BackupFileStream"/> object will encapsulate.</param>
+ <param name="mode">A <see cref="T:Alphaleonis.Win32.Filesystem.FileMode"/> constant that determines how to open or create the file.</param>
+ <param name="access">A <see cref="T:Alphaleonis.Win32.Filesystem.FileSystemRights"/> constant that determines the access rights to use when creating access and audit rules for the file.</param>
+ <param name="share">A <see cref="T:Alphaleonis.Win32.Filesystem.FileShare"/> constant that determines how the file will be shared by processes.</param>
+ <param name="options">A <see cref="T:Alphaleonis.Win32.Filesystem.FileOptions"/> constant that specifies additional file options.</param>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.BackupFileStream.#ctor(System.String,Alphaleonis.Win32.Filesystem.FileMode,Alphaleonis.Win32.Filesystem.FileSystemRights,Alphaleonis.Win32.Filesystem.FileShare)">
+ <summary>
+ Initializes a new instance of the <see cref="T:Alphaleonis.Win32.Filesystem.BackupFileStream"/> class with the specified path, creation mode, access rights
+ and sharing permission.
+ </summary>
+ <param name="path">A relative or absolute path for the file that the current <see cref="T:Alphaleonis.Win32.Filesystem.BackupFileStream"/> object will encapsulate.</param>
+ <param name="mode">A <see cref="T:Alphaleonis.Win32.Filesystem.FileMode"/> constant that determines how to open or create the file. </param>
+ <param name="access">A <see cref="T:Alphaleonis.Win32.Filesystem.FileSystemRights"/> constant that determines the access rights to use when creating access and audit rules for the file.</param>
+ <param name="share">A <see cref="T:Alphaleonis.Win32.Filesystem.FileShare"/> constant that determines how the file will be shared by processes. </param>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.BackupFileStream.#ctor(System.String,Alphaleonis.Win32.Filesystem.FileMode,Alphaleonis.Win32.Filesystem.FileSystemRights)">
+ <summary>
+ Initializes a new instance of the <see cref="T:Alphaleonis.Win32.Filesystem.BackupFileStream"/> class with the specified path, creation mode and access rights.
+ </summary>
+ <param name="path">A relative or absolute path for the file that the current <see cref="T:Alphaleonis.Win32.Filesystem.BackupFileStream"/> object will encapsulate.</param>
+ <param name="mode">A <see cref="T:Alphaleonis.Win32.Filesystem.FileMode"/> constant that determines how to open or create the file. </param>
+ <param name="access">A <see cref="T:Alphaleonis.Win32.Filesystem.FileSystemRights"/> constant that determines the access rights to use when creating access and audit rules for the file.</param>
+ <remarks>The file will be opened for exclusive access.</remarks>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.BackupFileStream.#ctor(System.String,Alphaleonis.Win32.Filesystem.FileMode)">
+ <summary>
+ Initializes a new instance of the <see cref="T:Alphaleonis.Win32.Filesystem.BackupFileStream"/> class with the specified path and creation mode.
+ </summary>
+ <param name="path">A relative or absolute path for the file that the current <see cref="T:Alphaleonis.Win32.Filesystem.BackupFileStream"/> object will encapsulate.</param>
+ <param name="mode">A <see cref="T:Alphaleonis.Win32.Filesystem.FileMode"/> constant that determines how to open or create the file. </param>
+ <remarks>The file will be opened for exclusive access for both reading and writing.</remarks>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.BackupFileStream.#ctor(Microsoft.Win32.SafeHandles.SafeFileHandle,Alphaleonis.Win32.Filesystem.FileSystemRights)">
+ <summary>
+ Initializes a new instance of the <see cref="T:Alphaleonis.Win32.Filesystem.BackupFileStream"/> class for the specified file handle, with the specified read/write permission.
+ </summary>
+ <param name="handle">A file handle for the file that this <see cref="T:Alphaleonis.Win32.Filesystem.BackupFileStream"/> object will encapsulate. </param>
+ <param name="access">A <see cref="T:Alphaleonis.Win32.Filesystem.FileSystemRights"/> constant that gets the <see cref="P:Alphaleonis.Win32.Filesystem.BackupFileStream.CanRead"/> and <see cref="P:Alphaleonis.Win32.Filesystem.BackupFileStream.CanWrite"/> properties
+ of the <see cref="T:Alphaleonis.Win32.Filesystem.BackupFileStream"/> object. </param>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.BackupFileStream.Finalize">
+ <summary>
+ Releases unmanaged resources and performs other cleanup operations before the
+ <see cref="T:Alphaleonis.Win32.Filesystem.BackupFileStream"/> is reclaimed by garbage collection.
+ </summary>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.BackupFileStream.Read(System.Byte[],System.Int32,System.Int32)">
+ <summary>
+ Reads a sequence of bytes from the current stream and advances the position within
+ the stream by the number of bytes read.
+ </summary>
+ <param name="buffer">An array of bytes. When this method returns, the buffer contains the specified byte array with the values
+ between <paramref name="offset"/> and (<paramref name="offset"/> + <paramref name="count"/> - 1) replaced by the bytes read from the current source.</param>
+ <param name="offset">The zero-based byte offset in <paramref name="buffer"/> at which to begin storing the data read from the current stream.</param>
+ <param name="count">The maximum number of bytes to be read from the current stream.</param>
+ <returns>
+ The total number of bytes read into the buffer. This can be less than the number of bytes requested if that many bytes are not
+ currently available, or zero (0) if the end of the stream has been reached.
+ </returns>
+ <exception cref="T:System.ArgumentException">The sum of <paramref name="offset"/> and <paramref name="count"/> is larger than the buffer length. </exception>
+ <exception cref="T:System.ArgumentNullException">
+ <paramref name="buffer"/> is null. </exception>
+ <exception cref="T:System.ArgumentOutOfRangeException">
+ <paramref name="offset"/> or <paramref name="count"/> is negative. </exception>
+ <exception cref="T:System.IO.IOException">An I/O error occurs. </exception>
+ <exception cref="T:System.NotSupportedException">The stream does not support reading. </exception>
+ <exception cref="T:System.ObjectDisposedException">Methods were called after the stream was closed. </exception>
+ <remarks>This method will not backup the access-control list (ACL) data for the file or directory.</remarks>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.BackupFileStream.Read(System.Byte[],System.Int32,System.Int32,System.Boolean)">
+ <summary>
+ When overridden in a derived class, reads a sequence of bytes from the current stream and advances the position within
+ the stream by the number of bytes read.
+ </summary>
+ <param name="buffer">An array of bytes. When this method returns, the buffer contains the specified byte array with the values
+ between <paramref name="offset"/> and (<paramref name="offset"/> + <paramref name="count"/> - 1) replaced by the bytes read from the current source.</param>
+ <param name="offset">The zero-based byte offset in <paramref name="buffer"/> at which to begin storing the data read from the current stream.</param>
+ <param name="count">The maximum number of bytes to be read from the current stream.</param>
+ <param name="processSecurity">Indicates whether the function will backup the access-control list (ACL) data for the file or directory. </param>
+ <returns>
+ The total number of bytes read into the buffer. This can be less than the number of bytes requested if that many bytes are not
+ currently available, or zero (0) if the end of the stream has been reached.
+ </returns>
+ <exception cref="T:System.ArgumentException">The sum of <paramref name="offset"/> and <paramref name="count"/> is larger than the buffer length. </exception>
+ <exception cref="T:System.ArgumentNullException">
+ <paramref name="buffer"/> is null. </exception>
+ <exception cref="T:System.ArgumentOutOfRangeException">
+ <paramref name="offset"/> or <paramref name="count"/> is negative. </exception>
+ <exception cref="T:System.IO.IOException">An I/O error occurs. </exception>
+ <exception cref="T:System.NotSupportedException">The stream does not support reading. </exception>
+ <exception cref="T:System.ObjectDisposedException">Methods were called after the stream was closed. </exception>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.BackupFileStream.Skip(System.Int64)">
+ <summary>
+ Skips ahead the specified number of bytes from the current stream.
+ </summary>
+ <remarks>
+ <para>
+ This method represents the Win32 API implementation of <see href="http://msdn.microsoft.com/en-us/library/aa362509(VS.85).aspx">BackupSeek</see>.
+ </para>
+ <para>
+ Applications use the <see cref="M:Alphaleonis.Win32.Filesystem.BackupFileStream.Skip(System.Int64)"/> method to skip portions of a data stream that cause errors. This function does not
+ seek across stream headers. For example, this function cannot be used to skip the stream name. If an application
+ attempts to seek past the end of a substream, the function fails, the return value indicates the actual number of bytes
+ the function seeks, and the file position is placed at the start of the next stream header.
+ </para>
+ </remarks>
+ <param name="bytes">The number of bytes to skip.</param>
+ <returns>The number of bytes actually skipped.</returns>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.BackupFileStream.Seek(System.Int64,System.IO.SeekOrigin)">
+ <summary>
+ When overridden in a derived class, sets the position within the current stream.
+ </summary>
+ <param name="offset">A byte offset relative to the <paramref name="origin"/> parameter.</param>
+ <param name="origin">A value of type <see cref="T:System.IO.SeekOrigin"/> indicating the reference point used to obtain the new position.</param>
+ <returns>
+ The new position within the current stream.
+ </returns>
+ <remarks>
+ <para>
+ <note>
+ <para>
+ This stream does not support seeking using this method, and calling this method will always throw
+ <see cref="T:System.NotSupportedException"/>. See <see cref="M:Alphaleonis.Win32.Filesystem.BackupFileStream.Skip(System.Int64)"/> for an alternative way of seeking forward.
+ </para>
+ </note>
+ </para>
+ </remarks>
+ <exception cref="T:System.NotSupportedException">The stream does not support seeking.</exception>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.BackupFileStream.SetAccessControl(System.Security.AccessControl.FileSecurity)">
+ <summary>
+ Applies access control list (ACL) entries described by a <see cref="T:System.Security.AccessControl.FileSecurity"/> object to the file described by the
+ current <see cref="T:Alphaleonis.Win32.Filesystem.BackupFileStream"/> object.
+ </summary>
+ <param name="fileSecurity">A <see cref="T:System.Security.AccessControl.FileSecurity"/> object that describes an ACL entry to apply to the current file.</param>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.BackupFileStream.SetLength(System.Int64)">
+ <summary>
+ When overridden in a derived class, sets the length of the current stream.
+ </summary>
+ <param name="value">The desired length of the current stream in bytes.</param>
+ <remarks>This method is not supported by the <see cref="T:Alphaleonis.Win32.Filesystem.BackupFileStream"/> class, and calling it will always
+ generate a <see cref="T:System.NotSupportedException"/>.</remarks>
+ <exception cref="T:System.NotSupportedException">Always thrown by this class.</exception>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.BackupFileStream.Write(System.Byte[],System.Int32,System.Int32)">
+ <summary>
+ Writes a sequence of bytes to the current stream and advances the current position
+ within this stream by the number of bytes written.
+ </summary>
+ <overloads>
+ Writes a sequence of bytes to the current stream and advances the current position within this stream by the number of bytes written.
+ </overloads>
+ <param name="buffer">An array of bytes. This method copies <paramref name="count"/> bytes from <paramref name="buffer"/> to the current stream.</param>
+ <param name="offset">The zero-based byte offset in <paramref name="buffer"/> at which to begin copying bytes to the current stream.</param>
+ <param name="count">The number of bytes to be written to the current stream.</param>
+ <exception cref="T:System.ArgumentException">The sum of <paramref name="offset"/> and <paramref name="count"/> is greater than the buffer length. </exception>
+ <exception cref="T:System.ArgumentNullException">
+ <paramref name="buffer"/> is null. </exception>
+ <exception cref="T:System.ArgumentOutOfRangeException">
+ <paramref name="offset"/> or <paramref name="count"/> is negative. </exception>
+ <exception cref="T:System.IO.IOException">An I/O error occurs. </exception>
+ <exception cref="T:System.NotSupportedException">The stream does not support writing. </exception>
+ <exception cref="T:System.ObjectDisposedException">Methods were called after the stream was closed. </exception>
+ <remarks>This method will not process the access-control list (ACL) data for the file or directory.</remarks>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.BackupFileStream.Write(System.Byte[],System.Int32,System.Int32,System.Boolean)">
+ <summary>
+ When overridden in a derived class, writes a sequence of bytes to the current stream and advances the current position
+ within this stream by the number of bytes written.
+ </summary>
+ <param name="buffer">An array of bytes. This method copies <paramref name="count"/> bytes from <paramref name="buffer"/> to the current stream.</param>
+ <param name="offset">The zero-based byte offset in <paramref name="buffer"/> at which to begin copying bytes to the current stream.</param>
+ <param name="count">The number of bytes to be written to the current stream.</param>
+ <param name="processSecurity">Specifies whether the function will restore the access-control list (ACL) data for the file or directory.
+ If this is <see langword="true"/>, you need to specify <see cref="F:Alphaleonis.Win32.Filesystem.FileSystemRights.TakeOwnership"/> and <see cref="F:Alphaleonis.Win32.Filesystem.FileSystemRights.ChangePermissions"/> access when
+ opening the file or directory handle. If the handle does not have those access rights, the operating system denies
+ access to the ACL data, and ACL data restoration will not occur.</param>
+ <exception cref="T:System.ArgumentException">The sum of <paramref name="offset"/> and <paramref name="count"/> is greater than the buffer length. </exception>
+ <exception cref="T:System.ArgumentNullException">
+ <paramref name="buffer"/> is null. </exception>
+ <exception cref="T:System.ArgumentOutOfRangeException">
+ <paramref name="offset"/> or <paramref name="count"/> is negative. </exception>
+ <exception cref="T:System.IO.IOException">An I/O error occurs. </exception>
+ <exception cref="T:System.NotSupportedException">The stream does not support writing. </exception>
+ <exception cref="T:System.ObjectDisposedException">Methods were called after the stream was closed. </exception>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.BackupFileStream.Unlock(System.Int64,System.Int64)">
+ <summary>
+ Allows access by other processes to all or part of a file that was previously locked.
+ </summary>
+ <param name="position">The beginning of the range to unlock.</param>
+ <param name="length">The range to be unlocked.</param>
+ <exception cref="T:System.ArgumentOutOfRangeException"></exception>
+ <exception cref="T:System.ArgumentOutOfRangeException"><paramref name="position"/> or <paramref name="length"/> is negative.</exception>
+ <exception cref="T:System.ObjectDisposedException">The file is closed.</exception>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.BackupFileStream.Flush">
+ <summary>
+ Clears all buffers for this stream and causes any buffered data to be written to the underlying device.
+ </summary>
+ <exception cref="T:System.IO.IOException">An I/O error occurs. </exception>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.BackupFileStream.GetAccessControl">
+ <summary>
+ Gets a <see cref="T:System.Security.AccessControl.FileSecurity"/> object that encapsulates the access control list (ACL) entries for the file described by the
+ current <see cref="T:Alphaleonis.Win32.Filesystem.BackupFileStream"/> object.
+ </summary>
+ <returns>A <see cref="T:System.Security.AccessControl.FileSecurity"/> object that encapsulates the access control list (ACL) entries for the file described by the
+ current <see cref="T:Alphaleonis.Win32.Filesystem.BackupFileStream"/> object. </returns>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.BackupFileStream.ReadStreamInfo">
+ <summary>
+ Reads a stream header from the current <see cref="T:Alphaleonis.Win32.Filesystem.BackupFileStream"/>.
+ </summary>
+ <returns>The stream header read from the current <see cref="T:Alphaleonis.Win32.Filesystem.BackupFileStream"/>, or <see langword="null"/> if the end-of-file
+ was reached before the required number of bytes of a header could be read.</returns>
+ <remarks>The stream must be positioned at where an actual header starts for the returned object to represent valid
+ information.</remarks>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.BackupFileStream.Lock(System.Int64,System.Int64)">
+ <summary>
+ Prevents other processes from changing the <see cref="T:Alphaleonis.Win32.Filesystem.BackupFileStream"/> while permitting read access.
+ </summary>
+ <param name="position">The beginning of the range to lock. The value of this parameter must be equal to or greater than zero (0).</param>
+ <param name="length">The range to be locked. </param>
+ <exception cref="T:System.ArgumentOutOfRangeException"><paramref name="position"/> or <paramref name="length"/> is negative.</exception>
+ <exception cref="T:System.ObjectDisposedException">The file is closed.</exception>
+ <exception cref="T:System.IO.IOException">The process cannot access the file because another process has locked a portion of the file. </exception>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.BackupFileStream.Dispose(System.Boolean)">
+ <summary>
+ Releases the unmanaged resources used by the <see cref="T:System.IO.Stream"/> and optionally releases the managed resources.
+ </summary>
+ <param name="disposing">true to release both managed and unmanaged resources; false to release only unmanaged resources.</param>
+ </member>
+ <member name="P:Alphaleonis.Win32.Filesystem.BackupFileStream.CanRead">
+ <summary>
+ Gets a value indicating whether the current stream supports reading.
+ </summary>
+ <value></value>
+ <returns>true if the stream supports reading; otherwise, false.</returns>
+ </member>
+ <member name="P:Alphaleonis.Win32.Filesystem.BackupFileStream.CanSeek">
+ <summary>
+ Gets a value indicating whether the current stream supports seeking.
+ </summary>
+ <returns>This method always returns <see langword="false"/>.</returns>
+ </member>
+ <member name="P:Alphaleonis.Win32.Filesystem.BackupFileStream.CanWrite">
+ <summary>
+ Gets a value indicating whether the current stream supports writing.
+ </summary>
+ <value></value>
+ <returns>true if the stream supports writing; otherwise, false.</returns>
+ </member>
+ <member name="P:Alphaleonis.Win32.Filesystem.BackupFileStream.Length">
+ <summary>
+ When overridden in a derived class, gets the length in bytes of the stream.
+ </summary>
+ <value>This method always throws an exception.</value>
+ <exception cref="T:System.NotSupportedException">This exception is always thrown if this property is accessed on a <see cref="T:Alphaleonis.Win32.Filesystem.BackupFileStream"/>.</exception>
+ </member>
+ <member name="P:Alphaleonis.Win32.Filesystem.BackupFileStream.Position">
+ <summary>
+ When overridden in a derived class, gets or sets the position within the current stream.
+ </summary>
+ <value>This method always throws an exception.</value>
+ <exception cref="T:System.NotSupportedException">This exception is always thrown if this property is accessed on a <see cref="T:Alphaleonis.Win32.Filesystem.BackupFileStream"/>.</exception>
+ </member>
+ <member name="P:Alphaleonis.Win32.Filesystem.BackupFileStream.SafeHandle">
+ <summary>
+ Gets a <see cref="T:Microsoft.Win32.SafeHandles.SafeFileHandle"/> object that represents the operating system file handle for the file that
+ the current <see cref="T:Alphaleonis.Win32.Filesystem.BackupFileStream"/> object encapsulates.
+ </summary>
+ <value>A <see cref="T:Microsoft.Win32.SafeHandles.SafeFileHandle"/> object that represents the operating system file handle for the file that
+ the current <see cref="T:Alphaleonis.Win32.Filesystem.BackupFileStream"/> object encapsulates.</value>
+ </member>
+ <member name="T:Alphaleonis.Win32.Filesystem.File">
+ <summary>
+ Provides static methods for the creation, copying, deletion, moving, and opening of files, and aids in the creation of <see cref="T:System.IO.FileStream"/> objects.
+ As opposed to the corresponding <see cref="T:System.IO.File"/> class, this class supports the use of extended length unicode paths, such as
+ <c>\\?\Volume{c00fa7c5-63eb-11dd-b6ed-806e6f6e6963}\autoexec.bat</c>. In addition, support for transacted file operation using the
+ kernel transaction manager is provided. (See also <see cref="T:Alphaleonis.Win32.Filesystem.KernelTransaction"/>).
+ </summary>
+ <remarks>Note that no methods in this class perform any validation of the supplied paths. They are passed as is to the corresponding
+ native kernel functions, meaning that invalid paths may result in exceptions of a type other than the expected for a certain operation.</remarks>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.File.AppendAllText(System.String,System.String)">
+ <overloads>
+ <summary>
+ Opens a file, appends the specified string to the file, and then closes the file.
+ </summary>
+ <remarks>
+ If the file does not exist, this method creates a file, writes the specified string to the file, then closes the file.
+ </remarks>
+ </overloads>
+ <summary>
+ Opens a file, appends the specified string to the file, and then closes the file. If the file does not exist, this method creates a file, writes the specified string to the file, then closes the file.
+ </summary>
+ <param name="path">The file to append the specified string to.</param>
+ <param name="contents">The string to append to the file.</param>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.File.AppendAllText(System.String,System.String,System.Text.Encoding)">
+ <summary>
+ Appends the specified string to the file, creating the file if it does not already exist.
+ </summary>
+ <param name="path">The file to append the specified string to. </param>
+ <param name="contents">The string to append to the file. </param>
+ <param name="encoding">The character encoding to use.</param>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.File.AppendAllText(Alphaleonis.Win32.Filesystem.KernelTransaction,System.String,System.String)">
+ <summary>
+ Opens a file as part of a transaction, appends the specified string to the file, and then closes the file. If the file does not exist, this method creates a file, writes the specified string to the file, then closes the file.
+ </summary>
+ <param name="transaction">The transaction.</param>
+ <param name="path">The file to append the specified string to.</param>
+ <param name="contents">The string to append to the file.</param>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.File.AppendAllText(Alphaleonis.Win32.Filesystem.KernelTransaction,System.String,System.String,System.Text.Encoding)">
+ <summary>
+ Appends the specified string to the file as part of a transaction, creating the file if it does not already exist.
+ </summary>
+ <param name="transaction">The transaction.</param>
+ <param name="path">The file to append the specified string to.</param>
+ <param name="contents">The string to append to the file.</param>
+ <param name="encoding">The character encoding to use.</param>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.File.AppendText(System.String)">
+ <overloads>
+ Creates a <see cref="T:System.IO.StreamWriter"/> that appends UTF-8 encoded text to an existing file.
+ </overloads>
+ <summary>
+ Creates a <see cref="T:System.IO.StreamWriter"/> that appends UTF-8 encoded text to an existing file.
+ </summary>
+ <param name="path">The path to the file to append to.</param>
+ <returns>A <see cref="T:System.IO.StreamWriter"/> that appends UTF-8 encoded text to an existing file.</returns>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.File.AppendText(Alphaleonis.Win32.Filesystem.KernelTransaction,System.String)">
+ <summary>
+ Creates a <see cref="T:System.IO.StreamWriter"/>, that is part of a transaction, that appends UTF-8 encoded text to an existing file.
+ </summary>
+ <param name="transaction">The transaction.</param>
+ <param name="path">The path to the file to append to.</param>
+ <returns>
+ A <see cref="T:System.IO.StreamWriter"/> that appends UTF-8 encoded text to an existing file.
+ </returns>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.File.Copy(System.String,System.String)">
+ <overloads>
+ Copies an existing file to a new file.
+ </overloads>
+ <summary>
+ Copies an existing file to a new file. Overwriting a file of the same name is not allowed.
+ </summary>
+ <param name="sourceFileName">The file to copy. </param>
+ <param name="destinationFileName">The name of the destination file. This cannot be a directory or an existing file.</param>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.File.Copy(System.String,System.String,System.Boolean)">
+ <summary>
+ Copies an existing file to a new file.
+ </summary>
+ <param name="sourceFileName">The file to copy.</param>
+ <param name="destinationFileName">The name of the destination file. This cannot be a directory or an existing file.</param>
+ <param name="overwrite"><c>true</c> if the destination file can be overwritten; otherwise, <c>false</c>.</param>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.File.Copy(System.String,System.String,Alphaleonis.Win32.Filesystem.CopyOptions)">
+ <summary>
+ Copies an existing file to a new file.
+ </summary>
+ <param name="existingFileName">The name of an existing file. </param>
+ <param name="destinationFileName">The name of the new file. </param>
+ <param name="copyMode">Flags that specify how the file is to be copied.</param>
+ <returns><c>true</c> if the file was completely copied, or <c>false</c> if the copy operation was aborted.</returns>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.File.Copy(System.String,System.String,Alphaleonis.Win32.Filesystem.CopyOptions,System.Boolean)">
+ <summary>
+ Copies an existing file to a new file.
+ </summary>
+ <param name="existingFileName">The name of an existing file.</param>
+ <param name="destinationFileName">The name of the new file.</param>
+ <param name="copyMode">Flags that specify how the file is to be copied.</param>
+ <param name="preserveDates"><c>true</c> if original Timestamps must be preserved, otherwise <c>false</c></param>
+ <returns>
+ <c>true</c> if the file was completely copied, or <c>false</c> if the copy operation was aborted.
+ </returns>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.File.Copy(System.String,System.String,Alphaleonis.Win32.Filesystem.CopyOptions,Alphaleonis.Win32.Filesystem.CopyProgressRoutine,System.Object,System.Boolean)">
+ <summary>
+ Copies an existing file to a new file, notifying the application of its progress through a callback function.
+ </summary>
+ <param name="existingFileName">The name of an existing file.</param>
+ <param name="destinationFileName">The name of the new file.</param>
+ <param name="copyMode">Flags that specify how the file is to be copied.</param>
+ <param name="progressRoutine">A callback function that is called each time another portion of the file has been copied. This parameter can be <see langword="null"/>.</param>
+ <param name="userProgressData">The argument to be passed to the callback function. This parameter can be <see langword="null"/>.</param>
+ <param name="preserveDates"><c>true</c> if original Timestamps must be preserved, otherwise <c>false</c></param>
+ <returns>
+ <c>true</c> if the file was completely copied, or <c>false</c> if the copy operation was aborted.
+ </returns>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.File.Copy(Alphaleonis.Win32.Filesystem.KernelTransaction,System.String,System.String)">
+ <summary>
+ Copies an existing file to a new file as a transacted operation. Overwriting a file of the same name is not allowed.
+ </summary>
+ <param name="transaction">The transaction.</param>
+ <param name="sourceFileName">The file to copy.</param>
+ <param name="destinationFileName">The name of the destination file. This cannot be a directory or an existing file.</param>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.File.Copy(Alphaleonis.Win32.Filesystem.KernelTransaction,System.String,System.String,System.Boolean)">
+ <summary>
+ Copies an existing file to a new file as a transacted operation.
+ </summary>
+ <param name="transaction">The transaction.</param>
+ <param name="sourceFileName">The file to copy.</param>
+ <param name="destinationFileName">The name of the destination file. This cannot be a directory or an existing file.</param>
+ <param name="overwrite"><c>true</c> if the destination file can be overwritten; otherwise, <c>false</c>.</param>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.File.Copy(Alphaleonis.Win32.Filesystem.KernelTransaction,System.String,System.String,Alphaleonis.Win32.Filesystem.CopyOptions)">
+ <summary>
+ Copies an existing file to a new file as a transacted operation.
+ </summary>
+ <param name="existingFileName">The name of an existing file. </param>
+ <param name="destinationFileName">The name of the new file. </param>
+ <param name="copyMode">Flags that specify how the file is to be copied.</param>
+ <param name="transaction">The transaction to use.</param>
+ <returns><c>true</c> if the file was completely copied, or <c>false</c> if the copy operation was aborted.</returns>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.File.Copy(Alphaleonis.Win32.Filesystem.KernelTransaction,System.String,System.String,Alphaleonis.Win32.Filesystem.CopyOptions,Alphaleonis.Win32.Filesystem.CopyProgressRoutine,System.Object)">
+ <summary>
+ Copies an existing file to a new file as a transacted operation, notifying the application of its progress through a callback function.
+ </summary>
+ <param name="existingFileName">The name of an existing file. </param>
+ <param name="destinationFileName">The name of the new file. </param>
+ <param name="copyMode">Flags that specify how the file is to be copied.</param>
+ <param name="progressRoutine">A callback function that is called each time another portion of the file has been copied. This parameter can be <see langword="null"/>.</param>
+ <param name="userProgressData">The argument to be passed to the callback function. This parameter can be <see langword="null"/>.</param>
+ <param name="transaction">The transaction to use.</param>
+ <returns><c>true</c> if the file was completely copied, or <c>false</c> if the copy operation was aborted.</returns>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.File.Create(System.String)">
+ <overloads>
+ Creates, overwrites or opens a file or directory in the specified path.
+ </overloads>
+ <summary>
+ Creates or overwrites a file in the specified path.
+ </summary>
+ <param name="path">The path and name of the file to create.</param>
+ <returns>A <see cref="T:System.IO.FileStream"/> that provides read/write access to the file specified in path.</returns>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.File.Create(System.String,System.Int32)">
+ <summary>
+ Creates or overwrites a file in the specified path.
+ </summary>
+ <param name="path">The path and name of the file to create.</param>
+ <param name="bufferSize">The number of bytes buffered for reads and writes to the file.</param>
+ <returns>
+ A <see cref="T:System.IO.FileStream"/> that provides read/write access to the file specified in path.
+ </returns>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.File.Create(System.String,System.Int32,Alphaleonis.Win32.Filesystem.FileOptions)">
+ <summary>
+ Creates or overwrites the specified file, specifying a buffer size and a <see cref="T:Alphaleonis.Win32.Filesystem.FileOptions"/> value that describes how to create or overwrite the file.
+ </summary>
+ <param name="path">The name of the file.</param>
+ <param name="bufferSize">The number of bytes buffered for reads and writes to the file.</param>
+ <param name="options">One of the <see cref="T:Alphaleonis.Win32.Filesystem.FileOptions"/> values that describes how to create or overwrite the file.</param>
+ <returns>
+ A new file with the specified buffer size.
+ </returns>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.File.Create(System.String,System.Int32,Alphaleonis.Win32.Filesystem.FileOptions,System.Security.AccessControl.FileSecurity)">
+ <summary>
+ Creates or overwrites the specified file, specifying a buffer size, a <see cref="T:Alphaleonis.Win32.Filesystem.FileOptions"/> value that describes how to create or overwrite the file and a specified <see cref="T:System.Security.AccessControl.FileSecurity"/>.
+ </summary>
+ <param name="path">The name of the file.</param>
+ <param name="bufferSize">The number of bytes buffered for reads and writes to the file.</param>
+ <param name="options">One of the <see cref="T:Alphaleonis.Win32.Filesystem.FileOptions"/> values that describes how to create or overwrite the file.</param>
+ <param name="fileSecurity">A <see cref="T:System.Security.AccessControl.FileSecurity"/> instance that determines the access control and audit security for the file.</param>
+ <returns>
+ A new file with the specified buffer size and security options.
+ </returns>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.File.Create(System.String,Alphaleonis.Win32.Filesystem.FileMode,Alphaleonis.Win32.Filesystem.FileAccess,Alphaleonis.Win32.Filesystem.FileShare,Alphaleonis.Win32.Filesystem.FileOptions,System.Security.AccessControl.FileSecurity,System.Int32)">
+ <summary>
+ Creates or overwrites the specified file,
+ specifying advanced options <see cref="T:Alphaleonis.Win32.Filesystem.FileMode"/>, <see cref="T:Alphaleonis.Win32.Filesystem.FileAccess"/>, <see cref="T:Alphaleonis.Win32.Filesystem.FileShare"/>, <see cref="T:Alphaleonis.Win32.Filesystem.FileOptions"/>, <see cref="T:System.Security.AccessControl.FileSecurity"/> and a buffer size.
+ </summary>
+ <param name="path">The name of the file.</param>
+ <param name="mode">The <see cref="T:Alphaleonis.Win32.Filesystem.FileMode"/> option gives you more precise control over how you want to create a file.</param>
+ <param name="access">The <see cref="T:Alphaleonis.Win32.Filesystem.FileAccess"/> allow you additionaly specify to default redwrite capability - just write, bypassing any cache.</param>
+ <param name="share">The <see cref="T:Alphaleonis.Win32.Filesystem.FileShare"/> option controls how you would like to share created file with other requesters.</param>
+ <param name="options">The <see cref="T:Alphaleonis.Win32.Filesystem.FileOptions"/> additional advanced options to create a file.</param>
+ <param name="fileSecurity">A <see cref="T:System.Security.AccessControl.FileSecurity"/> instance that determines the access control and audit security for the file.</param>
+ <param name="bufferSize">Size of the buffer.</param>
+ <returns>A new file with the specified options and buffer size.</returns>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.File.Create(Alphaleonis.Win32.Filesystem.KernelTransaction,System.String)">
+ <summary>
+ Creates or overwrites a file in the specified path as part of a transaction.
+ </summary>
+ <param name="transaction">The transaction.</param>
+ <param name="path">The path and name of the file to create.</param>
+ <returns>
+ A <see cref="T:System.IO.FileStream"/> that provides read/write access to the file specified in path.
+ </returns>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.File.Create(Alphaleonis.Win32.Filesystem.KernelTransaction,System.String,System.Int32)">
+ <summary>
+ Creates or overwrites a file in the specified path as part of a transaction.
+ </summary>
+ <param name="transaction">The transaction.</param>
+ <param name="path">The path and name of the file to create.</param>
+ <param name="bufferSize">The number of bytes buffered for reads and writes to the file.</param>
+ <returns>
+ A <see cref="T:System.IO.FileStream"/> that provides read/write access to the file specified in path.
+ </returns>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.File.Create(Alphaleonis.Win32.Filesystem.KernelTransaction,System.String,System.Int32,Alphaleonis.Win32.Filesystem.FileOptions)">
+ <summary>
+ Creates or overwrites the specified file as part of a transaction, specifying a buffer size and a <see cref="T:Alphaleonis.Win32.Filesystem.FileOptions"/> value that describes how to create or overwrite the file.
+ </summary>
+ <param name="transaction">The transaction.</param>
+ <param name="path">The name of the file.</param>
+ <param name="bufferSize">The number of bytes buffered for reads and writes to the file.</param>
+ <param name="options">One of the <see cref="T:Alphaleonis.Win32.Filesystem.FileOptions"/> values that describes how to create or overwrite the file.</param>
+ <returns>
+ A new file with the specified buffer size.
+ </returns>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.File.Create(Alphaleonis.Win32.Filesystem.KernelTransaction,System.String,System.Int32,Alphaleonis.Win32.Filesystem.FileOptions,System.Security.AccessControl.FileSecurity)">
+ <summary>
+ Creates or overwrites the specified file as part of a transaction, specifying a buffer size, a <see cref="T:Alphaleonis.Win32.Filesystem.FileOptions"/> value that describes how to create or overwrite the file and a specified <see cref="T:System.Security.AccessControl.FileSecurity"/>.
+ </summary>
+ <param name="transaction">The transaction.</param>
+ <param name="path">The name of the file.</param>
+ <param name="bufferSize">The number of bytes buffered for reads and writes to the file.</param>
+ <param name="options">One of the <see cref="T:Alphaleonis.Win32.Filesystem.FileOptions"/> values that describes how to create or overwrite the file.</param>
+ <param name="fileSecurity">A <see cref="T:System.Security.AccessControl.FileSecurity"/> instance that determines the access control and audit security for the file.</param>
+ <returns>
+ A new file with the specified buffer size and security options.
+ </returns>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.File.CreateText(System.String)">
+ <overloads>
+ Creates or opens a file for writing UTF-8 encoded text.
+ </overloads>
+ <summary>
+ Creates or opens a file for writing UTF-8 encoded text.
+ </summary>
+ <param name="path">The file to be opened for writing. </param>
+ <returns>A <see cref="T:System.IO.StreamWriter"/> that writes to the specified file using UTF-8 encoding.</returns>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.File.CreateText(Alphaleonis.Win32.Filesystem.KernelTransaction,System.String)">
+ <summary>
+ Creates or opens a file for writing UTF-8 encoded text as part of a transaction.
+ </summary>
+ <param name="transaction">The transaction.</param>
+ <param name="path">The file to be opened for writing.</param>
+ <returns>
+ A <see cref="T:System.IO.StreamWriter"/> that writes to the specified file using UTF-8 encoding.
+ </returns>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.File.Delete(System.String)">
+ <overloads>
+ <summary>
+ Deletes the specified file.
+ </summary>
+ <remarks>
+ An exception is not thrown if the specified file does not exist.
+ </remarks>
+ </overloads>
+ <summary>
+ Deletes the specified file. An exception is not thrown if the specified file does not exist.
+ </summary>
+ <param name="path">The name of the file to be deleted.</param>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.File.Delete(System.String,System.Boolean)">
+ <summary>
+ Deletes the specified file. An exception is not thrown if the specified file does not exist.
+ </summary>
+ <param name="path">The name of the file to be deleted.</param>
+ <param name="ignoreReadOnly">if set to <c>true</c> ignores read only attribute of files.</param>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.File.Delete(Alphaleonis.Win32.Filesystem.KernelTransaction,System.String)">
+ <summary>
+ Deletes the specified file as part of a transaction. An exception is not thrown if the specified file does not exist.
+ </summary>
+ <param name="transaction">The transaction.</param>
+ <param name="path">The name of the file to be deleted.</param>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.File.Decrypt(System.String)">
+ <summary>
+ Decrypts a file that was encrypted by the current account using the Encrypt method.
+ </summary>
+ <param name="path">A path that describes a file to decrypt.</param>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.File.Encrypt(System.String)">
+ <summary>
+ Encrypts a file so that only the account used to encrypt the file can decrypt it.
+ </summary>
+ <param name="path">A path that describes a file to encrypt.</param>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.File.GetEncryptionStatus(System.String)">
+ <summary>
+ Retrieves the encryption status of the specified file.
+ </summary>
+ <param name="fileName">The name of the file.</param>
+ <returns>The <see cref="T:Alphaleonis.Win32.Filesystem.FileEncryptionStatus"/> of the specified <paramref name="fileName"/>.</returns>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.File.Exists(System.String)">
+ <overloads>
+ Determines whether the specified file exists.
+ </overloads>
+ <summary>
+ Determines whether the specified file exists.
+ </summary>
+ <param name="path">The file to check. Note that this files may contain wildcards, such as '*'.</param>
+ <returns>true if the caller has the required permissions and path contains the name of an existing file; otherwise, false. This method also returns false if path is nullNothingnullptra null reference (Nothing in Visual Basic), an invalid path, or a zero-length string. If the caller does not have sufficient permissions to read the specified file, no exception is thrown and the method returns false regardless of the existence of path.</returns>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.File.Exists(Alphaleonis.Win32.Filesystem.KernelTransaction,System.String)">
+ <summary>
+ Determines whether the specified file exists as part of a transaction.
+ </summary>
+ <param name="transaction">The transaction.</param>
+ <param name="path">The file to check. Note that this files may contain wildcards, such as '*'.</param>
+ <returns>
+ true if the caller has the required permissions and path contains the name of an existing file; otherwise, false. This method also returns false if path is nullNothingnullptra null reference (Nothing in Visual Basic), an invalid path, or a zero-length string. If the caller does not have sufficient permissions to read the specified file, no exception is thrown and the method returns false regardless of the existence of path.
+ </returns>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.File.GetAccessControl(System.String)">
+ <overloads>
+ Gets a <see cref="T:System.Security.AccessControl.FileSecurity"/> object that encapsulates access control list (ACL) entries for a particular file.
+ </overloads>
+ <summary>
+ Gets a <see cref="T:System.Security.AccessControl.FileSecurity"/> object that encapsulates the specified type of access control list (ACL) entries for a particular file.
+ </summary>
+ <param name="path">The path to a file containing a <see cref="T:System.Security.AccessControl.FileSecurity"/> object that describes the file's access control list (ACL) information.</param>
+ <returns>
+ A <see cref="T:System.Security.AccessControl.FileSecurity"/> object that encapsulates the access control rules for the file described by the <paramref name="path"/> parameter.
+ </returns>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.File.GetAccessControl(System.String,System.Security.AccessControl.AccessControlSections)">
+ <summary>
+ Gets a <see cref="T:System.Security.AccessControl.FileSecurity"/> object that encapsulates the specified type of access control list (ACL) entries for a particular file.
+ </summary>
+ <param name="path">The path to a file containing a <see cref="T:System.Security.AccessControl.FileSecurity"/> object that describes the file's access control list (ACL) information.</param>
+ <param name="includeSections">One (or more) of the <see cref="T:System.Security.AccessControl.AccessControlSections"/> values that specifies the type of access control list (ACL) information to receive.</param>
+ <returns>A <see cref="T:System.Security.AccessControl.FileSecurity"/> object that encapsulates the access control rules for the file described by the <paramref name="path"/> parameter. </returns>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.File.SetAccessControl(System.String,System.Security.AccessControl.FileSecurity,System.Security.AccessControl.AccessControlSections)">
+ <summary>
+ Applies access control list (ACL) entries described by a <see cref="T:System.Security.AccessControl.FileSecurity"/> FileSecurity object to the specified file.
+ </summary>
+ <remarks>Note that unlike <see cref="M:System.IO.File.SetAccessControl(System.String,System.Security.AccessControl.FileSecurity)"/> this method does <b>not</b> automatically
+ determine what parts of the specified <see cref="T:System.Security.AccessControl.FileSecurity"/> instance has been modified. Instead, the
+ parameter <paramref name="includeSections"/> is used to specify what entries from <paramref name="fileSecurity"/> to
+ apply to <paramref name="path"/>.</remarks>
+ <param name="path">A file to add or remove access control list (ACL) entries from.</param>
+ <param name="fileSecurity">A <see cref="T:System.Security.AccessControl.FileSecurity"/> object that describes an ACL entry to apply to the file described by the <paramref name="path"/> parameter.</param>
+ <param name="includeSections">One or more of the <see cref="T:System.Security.AccessControl.AccessControlSections"/> values that specifies the type of access control
+ list (ACL) information to set.</param>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.File.GetFileSystemEntryInfo(System.String)">
+ <summary>
+ Gets the <see cref="T:Alphaleonis.Win32.Filesystem.FileSystemEntryInfo"/> of the file on the path.
+ </summary>
+ <param name="path">The path to the file.</param>
+ <returns>The <see cref="T:Alphaleonis.Win32.Filesystem.FileSystemEntryInfo"/> of the file on the path.</returns>
+ <remarks>
+ This method has two nested retrievals, the second one will usually be applied for root directories.
+ The resulted data will be populated from WIN32_FILE_ATTRIBUTE_DATA.
+ </remarks>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.File.GetAttributes(System.String)">
+ <overloads>
+ Gets the <see cref="T:Alphaleonis.Win32.Filesystem.FileAttributes"/> of the file on the path.
+ </overloads>
+ <summary>
+ Gets the <see cref="T:Alphaleonis.Win32.Filesystem.FileAttributes"/> of the file on the path.
+ </summary>
+ <param name="path">The path to the file. </param>
+ <returns>The <see cref="T:Alphaleonis.Win32.Filesystem.FileAttributes"/> of the file on the path.</returns>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.File.GetAttributes(Alphaleonis.Win32.Filesystem.KernelTransaction,System.String)">
+ <summary>
+ Gets the <see cref="T:Alphaleonis.Win32.Filesystem.FileAttributes"/> of the file on the path as part of a transaction.
+ </summary>
+ <param name="transaction">The transaction.</param>
+ <param name="path">The path to the file.</param>
+ <returns>
+ The <see cref="T:Alphaleonis.Win32.Filesystem.FileAttributes"/> of the file on the path.
+ </returns>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.File.SetAttributes(System.String,Alphaleonis.Win32.Filesystem.FileAttributes)">
+ <overloads>
+ Sets the attributes for a file or directory.
+ </overloads>
+ <summary>
+ Sets the attributes for a file or directory.
+ </summary>
+ <param name="path">The name of the file whose attributes are to be set. </param>
+ <param name="fileAttributes">The file attributes to set for the file. Note that all other values override <see cref="F:Alphaleonis.Win32.Filesystem.FileAttributes.Normal"/>.</param>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.File.SetAttributes(Alphaleonis.Win32.Filesystem.KernelTransaction,System.String,Alphaleonis.Win32.Filesystem.FileAttributes)">
+ <summary>
+ Sets the attributes for a file or directory as part of a transaction.
+ </summary>
+ <param name="transaction">The transaction.</param>
+ <param name="path">The name of the file whose attributes are to be set.</param>
+ <param name="fileAttributes">The file attributes to set for the file. Note that all other values override <see cref="F:Alphaleonis.Win32.Filesystem.FileAttributes.Normal"/>.</param>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.File.GetExtendedFileAttributeData(System.String)">
+ <summary>
+ Gets the extended file attribute data for a specific file or directory.
+ </summary>
+ <param name="path">The file or directory to get the data for.</param>
+ <returns>A <see cref="T:Alphaleonis.Win32.Filesystem.NativeMethods.WIN32_FILE_ATTRIBUTE_DATA"/> structure filled out with the relevant data.</returns>
+ <remarks>This method does not change last access time for the file.</remarks>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.File.GetCreationTime(System.String)">
+ <overloads>
+ Returns the creation date and time of the specified file or directory.
+ </overloads>
+ <summary>
+ Returns the creation date and time of the specified file or directory.
+ </summary>
+ <param name="path">The file or directory for which to obtain creation date and time information. </param>
+ <returns>A <see cref="T:System.DateTime"/> structure set to the creation date and time for the specified file or directory. This value is expressed in local time.</returns>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.File.GetCreationTimeUtc(System.String)">
+ <overloads>
+ Returns the creation date and time, in coordinated universal time (UTC), of the specified file or directory.
+ </overloads>
+ <summary>
+ Returns the creation date and time, in coordinated universal time (UTC), of the specified file or directory.
+ </summary>
+ <param name="path">The file or directory for which to obtain creation date and time information. </param>
+ <returns>A <see cref="T:System.DateTime"/> structure set to the creation date and time for the specified file or directory. This value is expressed in UTC time.</returns>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.File.GetLastAccessTime(System.String)">
+ <overloads>
+ Returns the date and time the specified file or directory was last accessed.
+ </overloads>
+ <summary>
+ Returns the date and time the specified file or directory was last accessed.
+ </summary>
+ <param name="path">The file or directory for which to obtain creation date and time information. </param>
+ <returns>A <see cref="T:System.DateTime"/> structure set to the date and time that the specified file or directory was last accessed. This value is expressed in local time.</returns>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.File.GetLastAccessTimeUtc(System.String)">
+ <overloads>
+ Returns the date and time, in coordinated universal time (UTC), that the specified file or directory was last accessed.
+ </overloads>
+ <summary>
+ Returns the date and time, in coordinated universal time (UTC), that the specified file or directory was last accessed.
+ </summary>
+ <param name="path">The path.</param>
+ <returns>A <see cref="T:System.DateTime"/> structure set to the date and time that the specified file or directory was last accessed. This value is expressed in UTC time.</returns>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.File.GetLastWriteTime(System.String)">
+ <overloads>
+ Returns the date and time the specified file or directory was last written to.
+ </overloads>
+ <summary>
+ Returns the date and time the specified file or directory was last written to.
+ </summary>
+ <param name="path">The path.</param>
+ <returns>A <see cref="T:System.DateTime"/> structure set to the date and time that the specified file or directory was last written to. This value is expressed in local time.</returns>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.File.GetLastWriteTimeUtc(System.String)">
+ <overloads>
+ Returns the date and time, in coordinated universal time (UTC), that the specified file or directory was last written to.
+ </overloads>
+ <summary>
+ Returns the date and time, in coordinated universal time (UTC), that the specified file or directory was last written to.
+ </summary>
+ <param name="path">The file or directory for which to obtain write date and time information. </param>
+ <returns>A <see cref="T:System.DateTime"/> structure set to the date and time that the specified file or directory was last written. This value is expressed in UTC time.</returns>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.File.GetExtendedFileAttributeData(Alphaleonis.Win32.Filesystem.KernelTransaction,System.String)">
+ <summary>
+ Gets the extended file attribute data for a specific file or directory as part of a transaction.
+ </summary>
+ <param name="transaction">The transaction.</param>
+ <param name="path">The file or directory to get the data for.</param>
+ <returns>
+ A <see cref="T:Alphaleonis.Win32.Filesystem.NativeMethods.WIN32_FILE_ATTRIBUTE_DATA"/> structure filled out with the relevant data.
+ </returns>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.File.GetCreationTime(Alphaleonis.Win32.Filesystem.KernelTransaction,System.String)">
+ <summary>
+ Returns the creation date and time of the specified file or directory as part of a transaction.
+ </summary>
+ <param name="transaction">The transaction to use.</param>
+ <param name="path">The file or directory for which to obtain creation date and time information.</param>
+ <returns>
+ A <see cref="T:System.DateTime"/> structure set to the creation date and time for the specified file or directory. This value is expressed in local time.
+ </returns>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.File.GetCreationTimeUtc(Alphaleonis.Win32.Filesystem.KernelTransaction,System.String)">
+ <summary>
+ Returns the creation date and time, in coordinated universal time (UTC), of the specified file or directory as part of a transaction.
+ </summary>
+ <param name="path">The file or directory for which to obtain creation date and time information. </param>
+ <param name="transaction">The transaction to use.</param>
+ <returns>A <see cref="T:System.DateTime"/> structure set to the creation date and time for the specified file or directory. This value is expressed in UTC time.</returns>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.File.GetLastAccessTime(Alphaleonis.Win32.Filesystem.KernelTransaction,System.String)">
+ <summary>
+ Returns the date and time the specified file or directory was last accessed as part of a transaction.
+ </summary>
+ <param name="path">The file or directory for which to obtain creation date and time information. </param>
+ <param name="transaction">The transaction to use.</param>
+ <returns>A <see cref="T:System.DateTime"/> structure set to the date and time that the specified file or directory was last accessed. This value is expressed in local time.</returns>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.File.GetLastAccessTimeUtc(Alphaleonis.Win32.Filesystem.KernelTransaction,System.String)">
+ <summary>
+ Returns the date and time, in coordinated universal time (UTC), that the specified file or directory was last accessed as part of a transaction.
+ </summary>
+ <param name="path">The path.</param>
+ <returns>A <see cref="T:System.DateTime"/> structure set to the date and time that the specified file or directory was last accessed. This value is expressed in UTC time.</returns>
+ <param name="transaction">The transaction to use.</param>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.File.GetLastWriteTime(Alphaleonis.Win32.Filesystem.KernelTransaction,System.String)">
+ <summary>
+ Returns the date and time the specified file or directory was last written to as part of a transaction.
+ </summary>
+ <param name="path">The path.</param>
+ <param name="transaction">The transaction to use.</param>
+ <returns>A <see cref="T:System.DateTime"/> structure set to the date and time that the specified file or directory was last written to. This value is expressed in local time.</returns>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.File.GetLastWriteTimeUtc(Alphaleonis.Win32.Filesystem.KernelTransaction,System.String)">
+ <summary>
+ Returns the date and time, in coordinated universal time (UTC), that the specified file or directory was last written to as part of a transaction.
+ </summary>
+ <param name="path">The file or directory for which to obtain write date and time information. </param>
+ <param name="transaction">The transaction to use.</param>
+ <returns>A <see cref="T:System.DateTime"/> structure set to the date and time that the specified file or directory was last written. This value is expressed in UTC time.</returns>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.File.GetFileInformationByHandle(System.IO.FileStream)">
+ <overloads>
+ Retrieves file information for the specified file.
+ </overloads>
+ <summary>
+ Retrieves file information for the specified file.
+ </summary>
+ <param name="stream">A <see cref="T:System.IO.FileStream"/> connected to the open file from which to retrieve the information.</param>
+ <returns>A <see cref="T:Alphaleonis.Win32.Filesystem.ByHandleFileInfo"/> object containing the requested information.</returns>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.File.GetFileInformationByHandle(Microsoft.Win32.SafeHandles.SafeFileHandle)">
+ <summary>
+ Retrieves file information for the specified file.
+ </summary>
+ <param name="handle">A <see cref="T:Microsoft.Win32.SafeHandles.SafeFileHandle"/> connected to the open file from which to retrieve the information.</param>
+ <returns>A <see cref="T:Alphaleonis.Win32.Filesystem.ByHandleFileInfo"/> object containing the requested information.</returns>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.File.Move(System.String,System.String)">
+ <overloads>
+ Moves a specified file to a new location, providing the option to specify a new file name.
+ </overloads>
+ <summary>
+ Moves a specified file to a new location, providing the option to specify a new file name.
+ </summary>
+ <param name="sourceFileName">The name of the file to move.</param>
+ <param name="destFileName">The new path for the file.</param>
+ <remarks>This method works across disk volumes, and it does not throw an exception if the source and destination are
+ the same. Note that if you attempt to replace a file by moving a file of the same name into that directory, you
+ get an IOException. You cannot use the Move method to overwrite an existing file.</remarks>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.File.Move(System.String,System.String,Alphaleonis.Win32.Filesystem.MoveFileOptions)">
+ <summary>
+ Moves a file or directory, including its children.
+ </summary>
+ <param name="sourcePath"><para>The name of the existing file or directory on the local computer.</para>
+ <para>If <paramref name="options"/> specifies <see cref="F:Alphaleonis.Win32.Filesystem.MoveFileOptions.DelayUntilReboot"/>, the file cannot exist on
+ a remote share because delayed operations are performed before the network is available.</para></param>
+ <param name="destinationPath">
+ <para>The new name of the file or directory on the local computer.</para>
+ <para>When moving a file, <paramref name="destinationPath"/> can be on a different file system or volume.
+ If <paramref name="destinationPath"/> is on another drive, you must set the
+ <see cref="F:Alphaleonis.Win32.Filesystem.MoveFileOptions.CopyAllowed"/> flag in <paramref name="options"/>.
+ </para>
+ <para>When moving a directory, <paramref name="sourcePath"/> and <paramref name="destinationPath"/> must be on the same drive. </para>
+ </param>
+ <param name="options">The move options.</param>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.File.Move(System.String,System.String,Alphaleonis.Win32.Filesystem.MoveFileOptions,Alphaleonis.Win32.Filesystem.CopyProgressRoutine,System.Object)">
+ <summary>
+ Moves a file or directory, including its children. You can provide a callback function that receives
+ progress notifications.
+ </summary>
+ <param name="sourcePath"><para>The name of the existing file or directory on the local computer.</para>
+ <para>If <paramref name="options"/> specifies <see cref="F:Alphaleonis.Win32.Filesystem.MoveFileOptions.DelayUntilReboot"/>, the file cannot exist on
+ a remote share because delayed operations are performed before the network is available.</para></param>
+ <param name="destinationPath">
+ <para>The new name of the file or directory on the local computer.</para>
+ <para>When moving a file, <paramref name="destinationPath"/> can be on a different file system or volume.
+ If <paramref name="destinationPath"/> is on another drive, you must set the
+ <see cref="F:Alphaleonis.Win32.Filesystem.MoveFileOptions.CopyAllowed"/> flag in <paramref name="options"/>.
+ </para>
+ <para>When moving a directory, <paramref name="sourcePath"/> and <paramref name="destinationPath"/> must be on the same drive. </para>
+ </param>
+ <param name="options">The move options.</param>
+ <param name="progressRoutine">A <see cref="T:Alphaleonis.Win32.Filesystem.CopyProgressRoutine"/> callback function that is called each time another
+ portion of the file has been moved. The callback function can be useful if you provide a user interface that displays
+ the progress of the operation. This parameter can be <see langword="null"/>.</param>
+ <param name="userProgressData">An argument to be passed to the <see cref="T:Alphaleonis.Win32.Filesystem.CopyProgressRoutine"/> callback function. This parameter can be <see langword="null"/>.</param>
+ <returns><c>true</c> if the file was completely moved, <c>false</c> if the operation was aborted.</returns>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.File.Move(Alphaleonis.Win32.Filesystem.KernelTransaction,System.String,System.String)">
+ <summary>
+ Moves a specified file to a new location as part of a transaction, providing the option to specify a new file name.
+ </summary>
+ <param name="transaction">The transaction.</param>
+ <param name="sourceFileName">The name of the file to move.</param>
+ <param name="destFileName">The new path for the file.</param>
+ <remarks>This method works across disk volumes, and it does not throw an exception if the source and destination are
+ the same. Note that if you attempt to replace a file by moving a file of the same name into that directory, you
+ get an IOException. You cannot use the Move method to overwrite an existing file.</remarks>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.File.Move(Alphaleonis.Win32.Filesystem.KernelTransaction,System.String,System.String,Alphaleonis.Win32.Filesystem.MoveFileOptions)">
+ <summary>
+ Moves a file or directory as part of a transaction, including its children.
+ </summary>
+ <param name="transaction">The transaction.</param>
+ <param name="sourcePath"><para>The name of the existing file or directory on the local computer.</para>
+ <para>If <paramref name="options"/> specifies <see cref="F:Alphaleonis.Win32.Filesystem.MoveFileOptions.DelayUntilReboot"/>, the file cannot exist on
+ a remote share because delayed operations are performed before the network is available.</para></param>
+ <param name="destinationPath"><para>The new name of the file or directory on the local computer.</para>
+ <para>When moving a file, <paramref name="destinationPath"/> can be on a different file system or volume.
+ If <paramref name="destinationPath"/> is on another drive, you must set the
+ <see cref="F:Alphaleonis.Win32.Filesystem.MoveFileOptions.CopyAllowed"/> flag in <paramref name="options"/>.
+ </para>
+ <para>When moving a directory, <paramref name="sourcePath"/> and <paramref name="destinationPath"/> must be on the same drive. </para></param>
+ <param name="options">The move options.</param>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.File.Move(Alphaleonis.Win32.Filesystem.KernelTransaction,System.String,System.String,Alphaleonis.Win32.Filesystem.MoveFileOptions,Alphaleonis.Win32.Filesystem.CopyProgressRoutine,System.Object)">
+ <summary>
+ Moves a file or directory as part of a transaction, including its children. You can provide a callback function that receives
+ progress notifications.
+ </summary>
+ <param name="transaction">The transaction.</param>
+ <param name="sourcePath"><para>The name of the existing file or directory on the local computer.</para>
+ <para>If <paramref name="options"/> specifies <see cref="F:Alphaleonis.Win32.Filesystem.MoveFileOptions.DelayUntilReboot"/>, the file cannot exist on
+ a remote share because delayed operations are performed before the network is available.</para></param>
+ <param name="destinationPath"><para>The new name of the file or directory on the local computer.</para>
+ <para>When moving a file, <paramref name="destinationPath"/> can be on a different file system or volume.
+ If <paramref name="destinationPath"/> is on another drive, you must set the
+ <see cref="F:Alphaleonis.Win32.Filesystem.MoveFileOptions.CopyAllowed"/> flag in <paramref name="options"/>.
+ </para>
+ <para>When moving a directory, <paramref name="sourcePath"/> and <paramref name="destinationPath"/> must be on the same drive. </para></param>
+ <param name="options">The move options.</param>
+ <param name="progressRoutine">A <see cref="T:Alphaleonis.Win32.Filesystem.CopyProgressRoutine"/> callback function that is called each time another
+ portion of the file has been moved. The callback function can be useful if you provide a user interface that displays
+ the progress of the operation. This parameter can be <see langword="null"/>.</param>
+ <param name="userProgressData">An argument to be passed to the <see cref="T:Alphaleonis.Win32.Filesystem.CopyProgressRoutine"/> callback function. This parameter can be <see langword="null"/>.</param>
+ <returns>
+ <c>true</c> if the file was completely moved, <c>false</c> if the operation was aborted.
+ </returns>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.File.Open(System.String,Alphaleonis.Win32.Filesystem.FileMode)">
+ <overloads>
+ Opens a <see cref="T:System.IO.FileStream"/> on the specified path.
+ </overloads>
+ <summary>
+ Opens a <see cref="T:System.IO.FileStream"/> on the specified path with read/write access.
+ </summary>
+ <param name="path">The file to open.</param>
+ <param name="mode">A <see cref="T:Alphaleonis.Win32.Filesystem.FileMode"/> value that specifies whether a file is created if one does not exist, and determines whether the contents of existing files are retained or overwritten.</param>
+ <returns>A <see cref="T:System.IO.FileStream"/> opened in the specified mode and path, with read/write access and not shared.</returns>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.File.Open(System.String,Alphaleonis.Win32.Filesystem.FileMode,Alphaleonis.Win32.Filesystem.FileAccess)">
+ <summary>
+ Opens a <see cref="T:System.IO.FileStream"/> on the specified path, with the specified mode and access.
+ </summary>
+ <param name="path">The file to open.</param>
+ <param name="mode">A <see cref="T:Alphaleonis.Win32.Filesystem.FileMode"/> value that specifies whether a file is created if one does not exist, and determines whether the contents of existing files are retained or overwritten.</param>
+ <param name="access">A <see cref="T:Alphaleonis.Win32.Filesystem.FileAccess"/> value that specifies the operations that can be performed on the file.</param>
+ <returns>An unshared <see cref="T:System.IO.FileStream"/> that provides access to the specified file, with the specified mode and access.</returns>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.File.Open(System.String,Alphaleonis.Win32.Filesystem.FileMode,Alphaleonis.Win32.Filesystem.FileAccess,Alphaleonis.Win32.Filesystem.FileShare)">
+ <summary>
+ Opens a <see cref="T:System.IO.FileStream"/> on the specified path, having the specified mode with read, write, or
+ read/write access and the specified sharing option.
+ </summary>
+ <param name="path">The file to open. </param>
+ <param name="mode">A <see cref="T:Alphaleonis.Win32.Filesystem.FileMode"/> value that specifies whether a file is created if one does not exist, and determines whether the contents of existing files are retained or overwritten.</param>
+ <param name="access">A <see cref="T:Alphaleonis.Win32.Filesystem.FileMode"/> value that specifies whether a file is created if one does not exist, and determines whether the contents of existing files are retained or overwritten. </param>
+ <param name="share">A <see cref="T:Alphaleonis.Win32.Filesystem.FileShare"/> value specifying the type of access other threads have to the file.</param>
+ <returns>A <see cref="T:System.IO.FileStream"/> on the specified path, having the specified mode with read, write, or read/write access and the specified sharing option.</returns>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.File.OpenBackupRead(System.String)">
+ <summary>
+ Opens the specified file for reading purposes bypassing security attributes.
+ This method is simpler to use then BackupFileStream to read only file's data stream.
+ </summary>
+ <param name="path">The file path to open.</param>
+ <returns>A <see cref="T:System.IO.FileStream"/> on the specified path, having the read-only mode and sharing options.</returns>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.File.Open(Alphaleonis.Win32.Filesystem.KernelTransaction,System.String,Alphaleonis.Win32.Filesystem.FileMode)">
+ <summary>
+ Opens a FileStream on the specified path with read/write access as part of a transaction.
+ </summary>
+ <param name="transaction">The transaction.</param>
+ <param name="path">The file to open.</param>
+ <param name="mode">A <see cref="T:Alphaleonis.Win32.Filesystem.FileMode"/> value that specifies whether a file is created if one does not exist, and determines whether the contents of existing files are retained or overwritten.</param>
+ <returns>
+ A <see cref="T:System.IO.FileStream"/> opened in the specified mode and path, with read/write access and not shared.
+ </returns>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.File.Open(Alphaleonis.Win32.Filesystem.KernelTransaction,System.String,Alphaleonis.Win32.Filesystem.FileMode,Alphaleonis.Win32.Filesystem.FileAccess)">
+ <summary>
+ Opens a <see cref="T:System.IO.FileStream"/> on the specified path as part of a transaction, with the specified mode and access.
+ </summary>
+ <param name="transaction">The transaction.</param>
+ <param name="path">The file to open.</param>
+ <param name="mode">A <see cref="T:Alphaleonis.Win32.Filesystem.FileMode"/> value that specifies whether a file is created if one does not exist, and determines whether the contents of existing files are retained or overwritten.</param>
+ <param name="access">A <see cref="T:Alphaleonis.Win32.Filesystem.FileAccess"/> value that specifies the operations that can be performed on the file.</param>
+ <returns>
+ An unshared <see cref="T:System.IO.FileStream"/> that provides access to the specified file, with the specified mode and access.
+ </returns>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.File.Open(Alphaleonis.Win32.Filesystem.KernelTransaction,System.String,Alphaleonis.Win32.Filesystem.FileMode,Alphaleonis.Win32.Filesystem.FileAccess,Alphaleonis.Win32.Filesystem.FileShare)">
+ <summary>
+ Opens a <see cref="T:System.IO.FileStream"/> on the specified path as part of a transaction, having the specified mode with read, write, or
+ read/write access and the specified sharing option.
+ </summary>
+ <param name="transaction">The transaction.</param>
+ <param name="path">The file to open.</param>
+ <param name="mode">A <see cref="T:Alphaleonis.Win32.Filesystem.FileMode"/> value that specifies whether a file is created if one does not exist, and determines whether the contents of existing files are retained or overwritten.</param>
+ <param name="access">A <see cref="T:Alphaleonis.Win32.Filesystem.FileMode"/> value that specifies whether a file is created if one does not exist, and determines whether the contents of existing files are retained or overwritten.</param>
+ <param name="share">A <see cref="T:Alphaleonis.Win32.Filesystem.FileShare"/> value specifying the type of access other threads have to the file.</param>
+ <returns>
+ A <see cref="T:System.IO.FileStream"/> on the specified path, having the specified mode with read, write, or read/write access and the specified sharing option.
+ </returns>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.File.OpenRead(System.String)">
+ <overloads>
+ Opens an existing file for reading.
+ </overloads>
+ <summary>
+ Opens an existing file for reading.
+ </summary>
+ <param name="path">The file to be opened for reading.</param>
+ <returns>A read-only <see cref="T:System.IO.FileStream"/> on the specified path.</returns>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.File.OpenRead(Alphaleonis.Win32.Filesystem.KernelTransaction,System.String)">
+ <summary>
+ Opens an existing file for reading as part of a transaction.
+ </summary>
+ <param name="transaction">The transaction.</param>
+ <param name="path">The file to be opened for reading.</param>
+ <returns>
+ A read-only <see cref="T:System.IO.FileStream"/> on the specified path.
+ </returns>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.File.OpenText(System.String)">
+ <overloads>
+ Opens an existing UTF-8 encoded text file for reading.
+ </overloads>
+ <summary>
+ Opens an existing UTF-8 encoded text file for reading.
+ </summary>
+ <param name="path">The file to be opened for reading.</param>
+ <returns>A StreamReader on the specified path.</returns>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.File.OpenText(Alphaleonis.Win32.Filesystem.KernelTransaction,System.String)">
+ <summary>
+ Opens an existing UTF-8 encoded text file for reading as part of a transaction.
+ </summary>
+ <param name="transaction">The transaction.</param>
+ <param name="path">The file to be opened for reading.</param>
+ <returns>A StreamReader on the specified path.</returns>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.File.OpenWrite(System.String)">
+ <overloads>
+ Opens an existing file for writing.
+ </overloads>
+ <summary>
+ Opens an existing file for writing.
+ </summary>
+ <param name="path">The file to be opened for writing.</param>
+ <returns>An unshared <see cref="T:System.IO.FileStream"/> object on the specified path with Write access.</returns>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.File.OpenWrite(Alphaleonis.Win32.Filesystem.KernelTransaction,System.String)">
+ <summary>
+ Opens an existing file for writing as part of a transaction.
+ </summary>
+ <param name="transaction">The transaction.</param>
+ <param name="path">The file to be opened for writing.</param>
+ <returns>
+ An unshared <see cref="T:System.IO.FileStream"/> object on the specified path with Write access.
+ </returns>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.File.TransferTimestamps(System.String,System.String)">
+ <summary>
+ Transfers the time stamps for files and directories.
+ </summary>
+ <param name="source">The source path.</param>
+ <param name="destination">The destination path.</param>
+ <remarks>
+ This method uses BackupSemantics flag to get Timestamp changed for folders.
+ This method does not change last access time for the source file.
+ </remarks>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.File.ReadAllBytes(System.String)">
+ <overloads>
+ Opens a binary file, reads the contents of the file into a byte array, and then closes the file.
+ </overloads>
+ <summary>
+ Opens a binary file, reads the contents of the file into a byte array, and then closes the file.
+ </summary>
+ <param name="path">The file to open for reading. </param>
+ <returns>A byte array containing the contents of the file.</returns>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.File.ReadAllBytes(Alphaleonis.Win32.Filesystem.KernelTransaction,System.String)">
+ <summary>
+ Opens a binary file, reads the contents of the file into a byte array, and then closes the file as part of a transaction.
+ </summary>
+ <param name="transaction">The transaction.</param>
+ <param name="path">The file to open for reading.</param>
+ <returns>
+ A byte array containing the contents of the file.
+ </returns>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.File.ReadAllLines(System.String)">
+ <overloads>
+ Opens a text file, reads all lines of the file, and then closes the file.
+ </overloads>
+ <summary>
+ Opens a text file, reads all lines of the file, and then closes the file.
+ </summary>
+ <param name="path">The file to open for reading. </param>
+ <returns>A string array containing all lines of the file.</returns>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.File.ReadAllLines(System.String,System.Text.Encoding)">
+ <summary>
+ Opens a file, reads all lines of the file with the specified encoding, and then closes the file.
+ </summary>
+ <param name="path">The file to open for reading.</param>
+ <param name="encoding">The encoding applied to the contents of the file.</param>
+ <returns>A string array containing all lines of the file.</returns>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.File.ReadAllLines(Alphaleonis.Win32.Filesystem.KernelTransaction,System.String)">
+ <summary>
+ Opens a text file as part of a transaction, reads all lines of the file, and then closes the file.
+ </summary>
+ <param name="transaction">The transaction.</param>
+ <param name="path">The file to open for reading.</param>
+ <returns>
+ A string array containing all lines of the file.
+ </returns>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.File.ReadAllLines(Alphaleonis.Win32.Filesystem.KernelTransaction,System.String,System.Text.Encoding)">
+ <summary>
+ Opens a file as part of a transaction, reads all lines of the file with the specified encoding, and then closes the file.
+ </summary>
+ <param name="transaction">The transaction.</param>
+ <param name="path">The file to open for reading.</param>
+ <param name="encoding">The encoding applied to the contents of the file.</param>
+ <returns>
+ A string array containing all lines of the file.
+ </returns>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.File.ReadAllText(System.String)">
+ <overloads>
+ Opens a text file, reads all lines of the file, and then closes the file.
+ </overloads>
+ <summary>
+ Opens a text file, reads all lines of the file, and then closes the file.
+ </summary>
+ <param name="path">The file to open for reading.</param>
+ <returns>A string containing all lines of the file.</returns>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.File.ReadAllText(System.String,System.Text.Encoding)">
+ <summary>
+ Opens a file, reads all lines of the file with the specified encoding, and then closes the file.
+ </summary>
+ <param name="path">The file to open for reading.</param>
+ <param name="encoding">The encoding applied to the contents of the file.</param>
+ <returns>A string containing all lines of the file.</returns>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.File.ReadAllText(Alphaleonis.Win32.Filesystem.KernelTransaction,System.String)">
+ <summary>
+ Opens a text file as part of a transaction, reads all lines of the file, and then closes the file.
+ </summary>
+ <param name="transaction">The transaction.</param>
+ <param name="path">The file to open for reading.</param>
+ <returns>
+ A string containing all lines of the file.
+ </returns>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.File.ReadAllText(Alphaleonis.Win32.Filesystem.KernelTransaction,System.String,System.Text.Encoding)">
+ <summary>
+ Opens a text file as part of a transaction, reads all lines of the file with the specified encoding, and then closes the file.
+ </summary>
+ <param name="transaction">The transaction.</param>
+ <param name="path">The file to open for reading.</param>
+ <param name="encoding">The encoding applied to the contents of the file.</param>
+ <returns>
+ A string containing all lines of the file.
+ </returns>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.File.Replace(System.String,System.String,System.String)">
+ <overloads>
+ Replaces one file with another file, with the option of creating a backup copy of the original file. The replacement file assumes the name of the replaced file and its identity.
+ </overloads>
+ <summary>
+ Replaces one file with another file, with the option of creating a backup copy of the original file. The replacement file assumes the name of the replaced file and its identity.
+ </summary>
+ <param name="sourceFileName">The name of a file that replaces the file specified by <paramref name="destinationFileName"/>.</param>
+ <param name="destinationFileName">The name of the file being replaced.</param>
+ <param name="destinationBackupFileName">The name of the backup file.</param>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.File.Replace(System.String,System.String,System.String,System.Boolean)">
+ <summary>
+ Replaces one file with another file, with the option of creating a backup copy of the original file. The replacement file assumes the name of the replaced file and its identity.
+ </summary>
+ <param name="sourceFileName">The name of a file that replaces the file specified by <paramref name="destinationFileName"/>.</param>
+ <param name="destinationFileName">The name of the file being replaced.</param>
+ <param name="destinationBackupFileName">The name of the backup file.</param>
+ <param name="ignoreMetadataErrors">set to <c>true</c> to ignore merge errors (such as attributes and access control lists (ACLs)) from the replaced file to the replacement file; otherwise, <c>false</c>.</param>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.File.SetFileTimeInternal(System.String,System.Nullable{System.Int64},System.Nullable{System.Int64},System.Nullable{System.Int64})">
+ <summary>
+ Internal method for setting file times on a file.
+ </summary>
+ <param name="path">The path.</param>
+ <param name="creationTime">The creation time.</param>
+ <param name="lastAccessTime">The last access time.</param>
+ <param name="lastWriteTime">The last write time.</param>
+ <remarks>This method uses FileOptions.BackupSemantics flag to write Timestamps to folders as well.</remarks>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.File.SetCreationTime(System.String,System.DateTime)">
+ <overloads>
+ Sets the date and time the file was created.
+ </overloads>
+ <summary>
+ Sets the date and time the file was created.
+ </summary>
+ <param name="path">The file for which to set the creation date and time information. </param>
+ <param name="creationTime">A <see cref="T:System.DateTime"/> containing the value to set for the creation date and time of path. This value is expressed in local time. </param>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.File.SetCreationTimeUtc(System.String,System.DateTime)">
+ <overloads>
+ Sets the date and time, in coordinated universal time (UTC), that the file was created.
+ </overloads>
+ <summary>
+ Sets the date and time, in coordinated universal time (UTC), that the file was created.
+ </summary>
+ <param name="path">The file for which to set the creation date and time information. </param>
+ <param name="creationTime">A <see cref="T:System.DateTime"/> containing the value to set for the creation date and time of path. This value is expressed in UTC time. </param>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.File.SetLastAccessTime(System.String,System.DateTime)">
+ <overloads>
+ Sets the date and time, in local time, that the file was last accessed.
+ </overloads>
+ <summary>
+ Sets the date and time, in local time, that the file was last accessed.
+ </summary>
+ <param name="path">The file for which to set the last access date and time information. </param>
+ <param name="lastAccessTime">A <see cref="T:System.DateTime"/> containing the value to set for the last access date and time of path. This value is expressed in local time. </param>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.File.SetLastAccessTimeUtc(System.String,System.DateTime)">
+ <overloads>
+ Sets the date and time, in coordinated universal time (UTC), that the file was last accessed.
+ </overloads>
+ <summary>
+ Sets the date and time, in coordinated universal time (UTC), that the file was last accessed.
+ </summary>
+ <param name="path">The file for which to set the last access date and time information. </param>
+ <param name="lastAccessTime">A <see cref="T:System.DateTime"/> containing the value to set for the last access date and time of path. This value is expressed in UTC time. </param>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.File.SetLastWriteTime(System.String,System.DateTime)">
+ <overloads>
+ Sets the date and time, in local time, that the file was last modified.
+ </overloads>
+ <summary>
+ Sets the date and time, in local time, that the file was last modified.
+ </summary>
+ <param name="path">The file for which to set the last modification date and time information. </param>
+ <param name="lastWriteTime">A <see cref="T:System.DateTime"/> containing the value to set for the last modification date and time of path. This value is expressed in local time. </param>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.File.SetLastWriteTimeUtc(System.String,System.DateTime)">
+ <overloads>
+ Sets the date and time, in coordinated universal time (UTC), that the file was last modified.
+ </overloads>
+ <summary>
+ Sets the date and time, in coordinated universal time (UTC), that the file was last modified.
+ </summary>
+ <param name="path">The file for which to set the last modification date and time information. </param>
+ <param name="lastWriteTime">A <see cref="T:System.DateTime"/> containing the value to set for the last modification date and time of path. This value is expressed in UTC time. </param>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.File.SetTimestamps(System.String,System.DateTime,System.DateTime,System.DateTime)">
+ <overloads>
+ Sets all the time stamps at once.
+ </overloads>
+ <summary>
+ Sets the time stamps at once.
+ </summary>
+ <param name="path">The path.</param>
+ <param name="creationTime">The creation time.</param>
+ <param name="lastAccessTime">The last access time.</param>
+ <param name="lastWriteTime">The last write time.</param>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.File.SetTimestampsUtc(System.String,System.DateTime,System.DateTime,System.DateTime)">
+ <overloads>
+ Sets all the time stamps at once in UTC.
+ </overloads>
+ <summary>
+ Sets all the time stamps at once in UTC.
+ </summary>
+ <remarks>
+ This method is redundant, because NTFS driver converts any dates in UTC format anyways.
+ </remarks>
+ <param name="path">The path.</param>
+ <param name="creationTime">The creation time.</param>
+ <param name="lastAccessTime">The last access time.</param>
+ <param name="lastWriteTime">The last write time.</param>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.File.SetFileTimeInternal(Alphaleonis.Win32.Filesystem.KernelTransaction,System.String,System.Nullable{System.Int64},System.Nullable{System.Int64},System.Nullable{System.Int64})">
+ <summary>
+ Internal method for setting file times on a file as part of a transaction.
+ </summary>
+ <param name="transaction">The transaction.</param>
+ <param name="path">The path.</param>
+ <param name="creationTime">The creation time.</param>
+ <param name="lastAccessTime">The last access time.</param>
+ <param name="lastWriteTime">The last write time.</param>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.File.SetCreationTime(Alphaleonis.Win32.Filesystem.KernelTransaction,System.String,System.DateTime)">
+ <summary>
+ Sets the date and time the file was created as part of a transaction.
+ </summary>
+ <param name="transaction">The transaction.</param>
+ <param name="path">The file for which to set the creation date and time information.</param>
+ <param name="creationTime">A <see cref="T:System.DateTime"/> containing the value to set for the creation date and time of path. This value is expressed in local time.</param>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.File.SetCreationTimeUtc(Alphaleonis.Win32.Filesystem.KernelTransaction,System.String,System.DateTime)">
+ <summary>
+ Sets the date and time as part of a transaction, in coordinated universal time (UTC), that the file was created.
+ </summary>
+ <param name="transaction">The transaction.</param>
+ <param name="path">The file for which to set the creation date and time information.</param>
+ <param name="creationTime">A <see cref="T:System.DateTime"/> containing the value to set for the creation date and time of path. This value is expressed in UTC time.</param>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.File.SetLastAccessTime(Alphaleonis.Win32.Filesystem.KernelTransaction,System.String,System.DateTime)">
+ <summary>
+ Sets the date and time as part of a transaction, in local time, that the file was last accessed.
+ </summary>
+ <param name="transaction">The transaction.</param>
+ <param name="path">The file for which to set the last access date and time information.</param>
+ <param name="lastAccessTime">The last access time.</param>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.File.SetLastAccessTimeUtc(Alphaleonis.Win32.Filesystem.KernelTransaction,System.String,System.DateTime)">
+ <summary>
+ Sets the date and time as part of a transaction, in coordinated universal time (UTC), that the file was last accessed.
+ </summary>
+ <param name="transaction">The transaction.</param>
+ <param name="path">The file for which to set the last access date and time information.</param>
+ <param name="lastAccessTime">The last access time.</param>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.File.SetLastWriteTime(Alphaleonis.Win32.Filesystem.KernelTransaction,System.String,System.DateTime)">
+ <summary>
+ Sets the date and time as part of a transaction, in local time, that the file was last modified.
+ </summary>
+ <param name="transaction">The transaction.</param>
+ <param name="path">The file for which to set the last modification date and time information.</param>
+ <param name="lastWriteTime">The last write time.</param>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.File.SetLastWriteTimeUtc(Alphaleonis.Win32.Filesystem.KernelTransaction,System.String,System.DateTime)">
+ <summary>
+ Sets the date and time as part of a transaction, in coordinated universal time (UTC), that the file was last modified.
+ </summary>
+ <param name="transaction">The transaction.</param>
+ <param name="path">The file for which to set the last modification date and time information.</param>
+ <param name="lastWriteTime">The last write time.</param>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.File.SetTimestamps(Alphaleonis.Win32.Filesystem.KernelTransaction,System.String,System.DateTime,System.DateTime,System.DateTime)">
+ <summary>
+ Sets the time stamps at once.
+ </summary>
+ <param name="transaction">The transaction.</param>
+ <param name="path">The path.</param>
+ <param name="creationTime">The creation time.</param>
+ <param name="lastAccessTime">The last access time.</param>
+ <param name="lastWriteTime">The last write time.</param>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.File.SetTimestampsUtc(Alphaleonis.Win32.Filesystem.KernelTransaction,System.String,System.DateTime,System.DateTime,System.DateTime)">
+ <summary>
+ Sets the time stamps at once in UTC. But it's redundant, because NTFS driver converts any dates in UTC format anyways.
+ </summary>
+ <param name="transaction">The transaction.</param>
+ <param name="path">The path.</param>
+ <param name="creationTime">The creation time.</param>
+ <param name="lastAccessTime">The last access time.</param>
+ <param name="lastWriteTime">The last write time.</param>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.File.WriteAllBytes(System.String,System.Byte[])">
+ <overloads>
+ Creates a new file, writes the specified byte array to the file, and then closes the file. If the target file already exists, it is overwritten.
+ </overloads>
+ <summary>
+ Creates a new file, writes the specified byte array to the file, and then closes the file. If the target file already exists, it is overwritten.
+ </summary>
+ <param name="path">The file to write to.</param>
+ <param name="bytes">The bytes to write to the file.</param>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.File.WriteAllBytes(Alphaleonis.Win32.Filesystem.KernelTransaction,System.String,System.Byte[])">
+ <summary>
+ Creates a new file as part of a transaction, writes the specified byte array to the file, and then closes the file. If the target file already exists, it is overwritten.
+ </summary>
+ <param name="transaction">The transaction.</param>
+ <param name="path">The file to write to.</param>
+ <param name="bytes">The bytes to write to the file.</param>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.File.WriteAllLines(System.String,System.String[])">
+ <overloads>
+ Creates a new file, write the specified string array to the file, and then closes the file. If the target file already exists, it is overwritten.
+ </overloads>
+ <summary>
+ Creates a new file, write the specified string array to the file, and then closes the file. If the target file already exists, it is overwritten.
+ </summary>
+ <param name="path">The file to write to.</param>
+ <param name="contents">The string array to write to the file.</param>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.File.WriteAllLines(System.String,System.String[],System.Text.Encoding)">
+ <summary>
+ Creates a new file, writes the specified string array to the file using the specified encoding, and then closes the file. If the target file already exists, it is overwritten.
+ </summary>
+ <param name="path">The file to write to.</param>
+ <param name="contents">he string array to write to the file.</param>
+ <param name="encoding">An <see cref="T:System.Text.Encoding"/> object that represents the character encoding applied to the string array.</param>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.File.WriteAllLines(Alphaleonis.Win32.Filesystem.KernelTransaction,System.String,System.String[])">
+ <summary>
+ Creates a new file as part of a transaction, write the specified string array to the file, and then closes the file. If the target file already exists, it is overwritten.
+ </summary>
+ <param name="transaction">The transaction.</param>
+ <param name="path">The file to write to.</param>
+ <param name="contents">The string array to write to the file.</param>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.File.WriteAllLines(Alphaleonis.Win32.Filesystem.KernelTransaction,System.String,System.String[],System.Text.Encoding)">
+ <summary>
+ Creates a new file as part of a transaction, writes the specified string array to the file using the specified encoding, and then closes the file. If the target file already exists, it is overwritten.
+ </summary>
+ <param name="transaction">The transaction.</param>
+ <param name="path">The file to write to.</param>
+ <param name="contents">he string array to write to the file.</param>
+ <param name="encoding">An <see cref="T:System.Text.Encoding"/> object that represents the character encoding applied to the string array.</param>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.File.WriteAllText(System.String,System.String)">
+ <overloads>
+ Creates a new file, write the contents to the file, and then closes the file. If the target file already exists, it is overwritten.
+ </overloads>
+ <summary>
+ Creates a new file, write the contents to the file, and then closes the file. If the target file already exists, it is overwritten.
+ </summary>
+ <param name="path">The file to write to.</param>
+ <param name="contents">The string to write to the file.</param>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.File.WriteAllText(System.String,System.String,System.Text.Encoding)">
+ <summary>
+ Creates a new file, writes the specified string to the file using the specified encoding, and then closes the file. If the target file already exists, it is overwritten.
+ </summary>
+ <param name="path">The file to write to.</param>
+ <param name="contents">The string to write to the file.</param>
+ <param name="encoding">An <see cref="T:System.Text.Encoding"/> object that represents the encoding to apply to the string.</param>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.File.WriteAllText(Alphaleonis.Win32.Filesystem.KernelTransaction,System.String,System.String)">
+ <summary>
+ Creates a new file as part of a transaction, write the contents to the file, and then closes the file. If the target file already exists, it is overwritten.
+ </summary>
+ <param name="transaction">The transaction.</param>
+ <param name="path">The file to write to.</param>
+ <param name="contents">The string to write to the file.</param>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.File.WriteAllText(Alphaleonis.Win32.Filesystem.KernelTransaction,System.String,System.String,System.Text.Encoding)">
+ <summary>
+ Creates a new file as part of a transaction, writes the specified string to the file using the specified encoding, and then closes the file. If the target file already exists, it is overwritten.
+ </summary>
+ <param name="transaction">The transaction.</param>
+ <param name="path">The file to write to.</param>
+ <param name="contents">The string to write to the file.</param>
+ <param name="encoding">An <see cref="T:System.Text.Encoding"/> object that represents the encoding to apply to the string.</param>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.File.CreateHardlink(System.String,System.String)">
+ <overloads>
+ Establishes a hard link between an existing file and a new file. This function is only supported on the NTFS file system, and only for files, not directories.
+ </overloads>
+ <summary>
+ Establishes a hard link between an existing file and a new file. This function is only supported on the NTFS file system, and only for files, not directories.
+ </summary>
+ <param name="sourceFile">The source file.</param>
+ <param name="destinationFile">The destination file.</param>
+ <exception cref="T:Alphaleonis.Win32.Filesystem.AlreadyExistsException">The destination file already exists.</exception>
+ <exception cref="T:System.NotSupportedException">An attempt to create a hard-link on a non-supported filesystem</exception>
+ <exception cref="T:System.IO.FileNotFoundException"><paramref name="sourceFile"/> could not be found</exception>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.File.CreateHardlink(Alphaleonis.Win32.Filesystem.KernelTransaction,System.String,System.String)">
+ <summary>
+ Establishes a hard link between an existing file and a new file. This function is only supported on the NTFS file system, and only for files, not directories.
+ </summary>
+ <param name="sourceFile">The source file.</param>
+ <param name="destinationFile">The destination file.</param>
+ <param name="transaction">The transaction to use.</param>
+ <exception cref="T:Alphaleonis.Win32.Filesystem.AlreadyExistsException">The destination file already exists.</exception>
+ <exception cref="T:System.NotSupportedException">An attempt to create a hard-link on a non-supported filesystem</exception>
+ <exception cref="T:System.IO.FileNotFoundException"><paramref name="sourceFile"/> could not be found</exception>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.File.CreateSymbolicLink(System.String,System.String,Alphaleonis.Win32.Filesystem.SymbolicLinkTarget)">
+ <overloads>
+ Creates a symbolic link.
+ </overloads>
+ <summary>
+ Creates a symbolic link.
+ </summary>
+ <param name="sourceFile">The name of the target for the symbolic link to be created.</param>
+ <param name="destinationFile">The symbolic link to be created.</param>
+ <param name="targetType">Indicates whether the link target, <paramref name="destinationFile"/>, is a file or directory.</param>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.File.CreateSymbolicLink(Alphaleonis.Win32.Filesystem.KernelTransaction,System.String,System.String,Alphaleonis.Win32.Filesystem.SymbolicLinkTarget)">
+ <summary>
+ Creates a symbolic link as part of a transaction.
+ </summary>
+ <param name="sourceFile">The name of the target for the symbolic link to be created.</param>
+ <param name="destinationFile">The symbolic link to be created.</param>
+ <param name="targetType">Indicates whether the link target, <paramref name="destinationFile"/>, is a file or directory.</param>
+ <param name="transaction">The transaction to use.</param>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.File.GetLinkTargetInfo(System.String)">
+ <summary>
+ Gets information about the target of a mount point or symbolic link on an NTFS file system.
+ </summary>
+ <param name="sourceFile">The path to the reparse point.</param>
+ <returns>An instance of <see cref="T:Alphaleonis.Win32.Filesystem.LinkTargetInfo"/> or <see cref="T:Alphaleonis.Win32.Filesystem.SymbolicLinkTargetInfo"/> containing
+ information about the symbolic link or mount point pointed to by <paramref name="sourceFile"/>.</returns>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.File.GetLinkTargetInfo(Alphaleonis.Win32.Filesystem.KernelTransaction,System.String)">
+ <summary>
+ Gets information about the target of a mount point or symbolic link on an NTFS file system as part of a transaction.
+ </summary>
+ <param name="transaction">The transaction.</param>
+ <param name="sourceFile">The path to the reparse point.</param>
+ <returns>
+ An instance of <see cref="T:Alphaleonis.Win32.Filesystem.LinkTargetInfo"/> or <see cref="T:Alphaleonis.Win32.Filesystem.SymbolicLinkTargetInfo"/> containing
+ information about the symbolic link or mount point pointed to by <paramref name="sourceFile"/>.
+ </returns>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.File.GetHardlinks(System.String)">
+ <overloads>
+ <summary>Enumerates all hard links to the specified file.</summary>
+ </overloads>
+ <summary>
+ Creates an enumeration of all the hard links to the specified <paramref name="fileName"/>.
+ </summary>
+ <remarks><b>Required Windows Vista or later.</b></remarks>
+ <param name="fileName">The name of the file.</param>
+ <returns>An enumeration of all the hard links to the specified <paramref name="fileName"/></returns>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.File.GetHardlinks(Alphaleonis.Win32.Filesystem.KernelTransaction,System.String)">
+ <summary>
+ Creates an enumeration of all the hard links to the specified <paramref name="fileName"/> as part
+ of the specified <paramref name="transaction"/>.
+ </summary>
+ <param name="transaction">The transaction to use.</param>
+ <param name="fileName">The name of the file.</param>
+ <returns>
+ An enumeration of all the hard links to the specified <paramref name="fileName"/>
+ </returns>
+ <remarks><b>Required Windows Vista or later.</b></remarks>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.File.GetCompressedSize(System.String)">
+ <overloads>
+ Retrieves the actual number of bytes of disk storage used to store a specified file.
+ </overloads>
+ <summary>
+ Retrieves the actual number of bytes of disk storage used to store a specified file.
+ </summary>
+ <remarks>
+ If the file is located on a volume that
+ supports compression and the file is compressed, the value obtained is the compressed size of the specified file.
+ If the file is located on a volume that supports sparse files and the file is a sparse file, the value obtained is the sparse
+ size of the specified file.
+ </remarks>
+ <param name="fileName"><para>The name of the file.</para>
+ <para>Do not specify the name of a file on a nonseeking device, such as a pipe or a communications device, as its file size has no meaning.</para></param>
+ <returns>
+ the actual number of bytes of disk storage used to store the specified file.
+ </returns>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.File.GetCompressedSize(Alphaleonis.Win32.Filesystem.KernelTransaction,System.String)">
+ <summary>
+ Retrieves the actual number of bytes of disk storage used to store a specified file as part of a transaction. If the file is located on a volume that
+ supports compression and the file is compressed, the value obtained is the compressed size of the specified file.
+ If the file is located on a volume that supports sparse files and the file is a sparse file, the value obtained is the sparse
+ size of the specified file.
+ </summary>
+ <param name="transaction">The transaction.</param>
+ <param name="fileName"><para>The name of the file.</para>
+ <para>Do not specify the name of a file on a nonseeking device, such as a pipe or a communications device, as its file size has no meaning.</para></param>
+ <returns>
+ the actual number of bytes of disk storage used to store the specified file.
+ </returns>
+ </member>
+ <member name="T:Alphaleonis.Win32.Filesystem.DriveType">
+ <summary>
+ Specifies the type of a drive.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Filesystem.DriveType.Unknown">
+ <summary>
+ The drive type cannot be determined.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Filesystem.DriveType.NoRootDir">
+ <summary>
+ The root path is invalid; for example, there is no volume is mounted at the path.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Filesystem.DriveType.Removable">
+ <summary>
+ The drive has removable media; for example, a floppy drive, thumb drive, or flash card reader.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Filesystem.DriveType.Fixed">
+ <summary>
+ The drive has fixed media; for example, a hard drive or flash drive.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Filesystem.DriveType.Remote">
+ <summary>
+ The drive is a remote (network) drive.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Filesystem.DriveType.CDRom">
+ <summary>
+ The drive is a CD-ROM drive.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Filesystem.DriveType.RamDisk">
+ <summary>
+ The drive is a RAM disk.
+ </summary>
+ </member>
+ <member name="T:Alphaleonis.Win32.Filesystem.CopyOptions">
+ <summary>
+ Flags that specify how a file is to be copied.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Filesystem.CopyOptions.None">
+ <summary>
+ None of the other flags.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Filesystem.CopyOptions.FailIfExists">
+ <summary>
+ The copy operation fails immediately if the target file already exists.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Filesystem.CopyOptions.Restartable">
+ <summary>
+ Progress of the copy is tracked in the target file in case the copy fails.
+ The failed copy can be restarted at a later time by specifying the same values for
+ existing file name and new file name as those used in the call that failed.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Filesystem.CopyOptions.OpenSourceForWrite">
+ <summary>
+ The file is copied and the original file is opened for write access.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Filesystem.CopyOptions.AllowDecryptedDestination">
+ <summary>
+ An attempt to copy an encrypted file will succeed even if the destination copy cannot be encrypted.
+ </summary>
+ <remarks>
+ <list type="table">
+ <term>Windows 2000:</term>
+ <description>This value is not supported</description>
+ </list>
+ </remarks>
+ </member>
+ <member name="F:Alphaleonis.Win32.Filesystem.CopyOptions.CopySymlink">
+ <summary>
+ If the source file is a symbolic link, the destination file is also a symbolic link pointing to the same file that the source symbolic link is pointing to.
+ </summary>
+ <remarks>
+ <list type="table">
+ <term>Windows Server 2003 and Windows XP/2000:</term>
+ <description>This value is not supported</description>
+ </list>
+ </remarks>
+ </member>
+ <member name="T:Alphaleonis.Win32.Filesystem.FileSystemEntryInfo">
+ <summary>
+ Represents information about a file system entry. Used together with <see cref="T:Alphaleonis.Win32.Filesystem.FileSystemEntryEnumerator"/>.
+ </summary>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.FileSystemEntryInfo.#ctor">
+ <summary>
+ Initializes a new instance of the <see cref="T:Alphaleonis.Win32.Filesystem.FileSystemEntryInfo"/> class.
+ </summary>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.FileSystemEntryInfo.#ctor(Alphaleonis.Win32.Filesystem.NativeMethods.WIN32_FILE_ATTRIBUTE_DATA)">
+ <summary>
+ Initializes a new instance of the <see cref="T:Alphaleonis.Win32.Filesystem.FileSystemEntryInfo"/> class.
+ </summary>
+ <param name="winFileAttribData">The WIN32_FILE_ATTRIBUTE_DATA.</param>
+ </member>
+ <member name="P:Alphaleonis.Win32.Filesystem.FileSystemEntryInfo.Attributes">
+ <summary>
+ Gets the attributes.
+ </summary>
+ <value>The attributes.</value>
+ </member>
+ <member name="P:Alphaleonis.Win32.Filesystem.FileSystemEntryInfo.FileName">
+ <summary>
+ Gets the name of the file.
+ </summary>
+ <value>The name of the file.</value>
+ </member>
+ <member name="P:Alphaleonis.Win32.Filesystem.FileSystemEntryInfo.FileSize">
+ <summary>
+ Gets the size of the file.
+ </summary>
+ <value>The size of the file.</value>
+ </member>
+ <member name="P:Alphaleonis.Win32.Filesystem.FileSystemEntryInfo.AlternateFileName">
+ <summary>
+ Gets the 8.3 version of the filename.
+ </summary>
+ <value>the 8.3 version of the filename.</value>
+ </member>
+ <member name="P:Alphaleonis.Win32.Filesystem.FileSystemEntryInfo.Created">
+ <summary>
+ Gets the time this entry was created.
+ </summary>
+ <value>The time this entry was created.</value>
+ </member>
+ <member name="P:Alphaleonis.Win32.Filesystem.FileSystemEntryInfo.LastAccessed">
+ <summary>
+ Gets the time this entry was last accessed.
+ </summary>
+ <value>The time this entry was last accessed.</value>
+ </member>
+ <member name="P:Alphaleonis.Win32.Filesystem.FileSystemEntryInfo.LastModified">
+ <summary>
+ Gets the time this entry was last modified.
+ </summary>
+ <value>The time this entry was last modified.</value>
+ </member>
+ <member name="P:Alphaleonis.Win32.Filesystem.FileSystemEntryInfo.IsDirectory">
+ <summary>
+ Gets a value indicating whether this instance represents a directory.
+ </summary>
+ <value>
+ <c>true</c> if this instance represents a directory; otherwise, <c>false</c>.
+ </value>
+ </member>
+ <member name="P:Alphaleonis.Win32.Filesystem.FileSystemEntryInfo.IsFile">
+ <summary>
+ Gets a value indicating whether this instance is definitely a file.
+ </summary>
+ <value><c>true</c> if this instance is file; otherwise, <c>false</c>.</value>
+ <remarks>Definite file is NOT a directory and NOT a device.</remarks>
+ </member>
+ <member name="P:Alphaleonis.Win32.Filesystem.FileSystemEntryInfo.IsReparsePoint">
+ <summary>
+ Gets a value indicating whether this instance is a reparse point.
+ </summary>
+ <value>
+ <c>true</c> if this instance is a reparse point; otherwise, <c>false</c>.
+ </value>
+ </member>
+ <member name="P:Alphaleonis.Win32.Filesystem.FileSystemEntryInfo.IsMountPoint">
+ <summary>
+ Gets a value indicating whether this instance is a mount point.
+ </summary>
+ <value>
+ <c>true</c> if this instance is a mount point; otherwise, <c>false</c>.
+ </value>
+ </member>
+ <member name="P:Alphaleonis.Win32.Filesystem.FileSystemEntryInfo.IsSymbolicLink">
+ <summary>
+ Gets a value indicating whether this instance is a symbolic link.
+ </summary>
+ <value>
+ <c>true</c> if this instance is a symbolic link; otherwise, <c>false</c>.
+ </value>
+ </member>
+ <member name="P:Alphaleonis.Win32.Filesystem.FileSystemEntryInfo.ReparsePointTag">
+ <summary>
+ Gets the reparse point tag of this entry.
+ </summary>
+ <value>The reparse point tag of this entry.</value>
+ </member>
+ <member name="T:Alphaleonis.Win32.Filesystem.PathInfo">
+ <summary>
+ A representation of a path, providing convenient access to the individual components
+ of the path.
+ </summary>
+ <remarks>Note that no methods in this class verifies whether the path actually exists or not.</remarks>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.PathInfo.#ctor(System.String)">
+ <overloads>
+ <summary>
+ Initializes a new instance of the <see cref="T:Alphaleonis.Win32.Filesystem.PathInfo"/> class.
+ </summary>
+ </overloads>
+ <param name="path">The path.</param>
+ <exception cref="T:System.ArgumentNullException"><paramref name="path"/> is <see langword="null"/></exception>
+ <exception cref="T:Alphaleonis.Win32.Filesystem.IllegalPathException">The path is not a legal path in the Win32 file system.</exception>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.PathInfo.#ctor(System.String,System.Boolean)">
+ <summary>
+ Initializes a new instance of the <see cref="T:Alphaleonis.Win32.Filesystem.PathInfo"/> class specifying whether wildcards
+ should be accepted or not.
+ </summary>
+ <param name="path">The path.</param>
+ <param name="allowWildcardsInFileName">if set to <c>true</c> wildcards are allowed in the file
+ name part of the path. If set to <c>false</c>, wildcards are not allowed and an
+ <see cref="T:System.ArgumentException"/> will be thrown if they are present.</param>
+ <exception cref="T:System.ArgumentNullException"><paramref name="path"/> is <see langword="null"/></exception>
+ <remarks>
+ <para>Note that under no circumstances will this class accept wildcards in
+ the directory part of the path, only in the file-name, i.e. the component
+ after the last backslash or separator.
+ </para>
+ <para>
+ Extended length unicode paths (also referred to as long paths) (those starting with \\?\) will <b>not</b> be
+ parsed for wildcards etc., regardless of the setting of this parameter.
+ In such a path any character is valid and backslashes alone are considered
+ to be separators.
+ </para>
+ </remarks>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.PathInfo.#ctor(System.String,System.Collections.Generic.List{System.Int32},System.Int32)">
+ <summary>
+ Initializes a new instance of the <see cref="T:Alphaleonis.Win32.Filesystem.PathInfo"/> class.
+ </summary>
+ <param name="path">The path.</param>
+ <param name="indices">The indices.</param>
+ <param name="extensionIndex">Position of the beginning of the file extension in the path.</param>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.PathInfo.GetLongPath">
+ <summary>
+ Retrieves the full long (or extended) unicode version of the path represented by this <see cref="T:Alphaleonis.Win32.Filesystem.PathInfo"/> instance.
+ </summary>
+ <remarks>
+ <para>
+ This method takes care of different path conversions to be usable in Unicode
+ variants of the Win32 funcitons (which are internally used throughout AlphaFS).
+ </para>
+ <para>
+ Regular paths are changed like the following:
+ <list type="table">
+ <item>
+ <term><c>C:\Somewhere\Something.txt</c></term>
+ <description><c>\\?\C:\Somewhere\Something.txt</c></description>
+ </item>
+ <item>
+ <term><c>\\Somewhere\Something.txt</c></term>
+ <description><c>\\?\UNC\Somewhere\Something.txt</c></description>
+ </item>
+ </list>
+ </para>
+ <para>
+ Already processed paths are preserved untouched so to avoid mistakes of double prefixing.
+ </para>
+ <para>
+ If the path represented by this instance is not an absolute path, or is not rooted, the path of the
+ current directory (and drive) is combined with this path to form
+ an absolute path.
+ </para>
+ </remarks>
+ <returns>The full long (or extended) unicode version of the specified <paramref name="path"/>.</returns>
+ <seealso cref="M:Alphaleonis.Win32.Filesystem.PathInfo.GetFullPath"/>
+ <seealso cref="M:Alphaleonis.Win32.Filesystem.Path.GetLongPath(System.String)"/>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.PathInfo.GetFullPath">
+ <summary>
+ Gets the full absolute path of the path represented by this instance.
+ This is done by "applying" the path to the current directory if the path
+ does not contain a root, or the volume of the current directory if the
+ path does not contain any drive information.
+ </summary>
+ <returns>The full absolute path.</returns>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.PathInfo.ToString">
+ <summary>
+ Returns a <see cref="T:System.String"/> that represents the current <see cref="T:System.Object"/>.
+ </summary>
+ <returns>
+ A <see cref="T:System.String"/> that represents the current <see cref="T:System.Object"/>.
+ </returns>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.PathInfo.CompareTo(Alphaleonis.Win32.Filesystem.PathInfo)">
+ <summary>
+ Performs a lexiographical comparison of the string representations of this and
+ the other path, ignoring case.
+ </summary>
+ <param name="other">A <see cref="T:Alphaleonis.Win32.Filesystem.PathInfo"/> to compare with this object.</param>
+ <returns>
+ A 32-bit signed integer that indicates the relative order of the objects being compared. The return value has the following meanings: Value Meaning Less than zero This object is less than the <paramref name="other"/> parameter.Zero This object is equal to <paramref name="other"/>. Greater than zero This object is greater than <paramref name="other"/>.
+ </returns>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.PathInfo.Equals(Alphaleonis.Win32.Filesystem.PathInfo)">
+ <summary>
+ Performs a lexiographical comparison for equality of the string representations of this and
+ the other path, ignoring case.
+ </summary>
+ <param name="other">An object to compare with this object.</param>
+ <returns>
+ true if the current object is equal to the <paramref name="other"/> parameter; otherwise, false.
+ </returns>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.PathInfo.Equals(System.Object)">
+ <summary>
+ Performs a lexiographical comparison for equality of the string representations of this and
+ the other path, ignoring case.
+ </summary>
+ <param name="obj">The <see cref="T:System.Object"/> to compare with the current <see cref="T:System.Object"/>.</param>
+ <returns>
+ true if the specified <see cref="T:System.Object"/> is equal to the current <see cref="T:System.Object"/>; otherwise, false.
+ </returns>
+ <exception cref="T:System.NullReferenceException">The <paramref name="obj"/> parameter is null.</exception>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.PathInfo.GetHashCode">
+ <summary>
+ Serves as a hash function for a particular type.
+ </summary>
+ <returns>
+ A hash code for the current <see cref="T:System.Object"/>.
+ </returns>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.PathInfo.Combine(Alphaleonis.Win32.Filesystem.PathInfo,Alphaleonis.Win32.Filesystem.PathInfo)">
+ <summary>
+ Combines two paths.
+ </summary>
+ <param name="path1">The first path. </param>
+ <param name="path2">The second path.</param>
+ <returns>A string containing the combined paths. If one of the specified paths is a zero-length string, this method returns the other path. If path2 contains an absolute path, this method returns path2.</returns>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.PathInfo.op_Addition(Alphaleonis.Win32.Filesystem.PathInfo,Alphaleonis.Win32.Filesystem.PathInfo)">
+ <summary>
+ Combines two paths.
+ </summary>
+ <param name="path1">The first path. </param>
+ <param name="path2">The second path.</param>
+ <returns>A string containing the combined paths. If one of the specified paths is a zero-length string, this method returns the other path. If path2 contains an absolute path, this method returns path2.</returns>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.PathInfo.op_Equality(Alphaleonis.Win32.Filesystem.PathInfo,Alphaleonis.Win32.Filesystem.PathInfo)">
+ <summary>
+ Implements the operator ==.
+ </summary>
+ <param name="path1">The path1.</param>
+ <param name="path2">The path2.</param>
+ <returns>The result of the operator.</returns>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.PathInfo.op_Inequality(Alphaleonis.Win32.Filesystem.PathInfo,Alphaleonis.Win32.Filesystem.PathInfo)">
+ <summary>
+ Implements the operator !=.
+ </summary>
+ <param name="path1">The path1.</param>
+ <param name="path2">The path2.</param>
+ <returns>The result of the operator.</returns>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.PathInfo.op_LessThan(Alphaleonis.Win32.Filesystem.PathInfo,Alphaleonis.Win32.Filesystem.PathInfo)">
+ <summary>
+ Implements the operator &lt;.
+ </summary>
+ <param name="path1">The path1.</param>
+ <param name="path2">The path2.</param>
+ <returns>The result of the operator.</returns>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.PathInfo.op_GreaterThan(Alphaleonis.Win32.Filesystem.PathInfo,Alphaleonis.Win32.Filesystem.PathInfo)">
+ <summary>
+ Implements the operator &gt;.
+ </summary>
+ <param name="path1">The path1.</param>
+ <param name="path2">The path2.</param>
+ <returns>The result of the operator.</returns>
+ </member>
+ <member name="P:Alphaleonis.Win32.Filesystem.PathInfo.Parent">
+ <summary>
+ Retrieves the parent directory of the specified path, including both absolute and relative paths.
+ </summary>
+ <returns>The parent directory, or <see langword="null"/> if path is the root directory, including the root of a UNC server or share name.</returns>
+ </member>
+ <member name="P:Alphaleonis.Win32.Filesystem.PathInfo.SuffixedPath">
+ <summary>
+ Gets the full normalized path, with a trailing backslash if the path denotes a directory.
+ </summary>
+ <value>The full normalized path, with a trailing backslash if the path denotes a directory.</value>
+ <seealso cref="P:Alphaleonis.Win32.Filesystem.PathInfo.Path"/>
+ </member>
+ <member name="P:Alphaleonis.Win32.Filesystem.PathInfo.Path">
+ <summary>
+ Gets the full normalized path.
+ </summary>
+ <value>The full path.</value>
+ <seealso cref="P:Alphaleonis.Win32.Filesystem.PathInfo.SuffixedPath"/>
+ </member>
+ <member name="P:Alphaleonis.Win32.Filesystem.PathInfo.FileName">
+ <summary>
+ Gets the file name part of the path.
+ </summary>
+ <value>The file name part of the path, or an empty string if the path does not contain a file name.</value>
+ </member>
+ <member name="P:Alphaleonis.Win32.Filesystem.PathInfo.Root">
+ <summary>
+ Gets the root of the path.
+ </summary>
+ <value>The root of the path, which may be a drive (eg. "C:\"), a remote computer as part of
+ an UNC path (eg. "\\OtherComputer\"), a unique volume name
+ (eg. "\\?\Volume{c00fa7c5-63eb-11dd-b6ed-806e6f6e6963}\") or a single directory
+ separator ("\") if no drive or volume is present in the path. If does not contain
+ any root, an empty string is returned.</value>
+ </member>
+ <member name="P:Alphaleonis.Win32.Filesystem.PathInfo.IsRooted">
+ <summary>
+ Gets a value indicating whether the path is rooted.
+ </summary>
+ <value><c>true</c> if this instance is rooted; otherwise, <c>false</c>.</value>
+ </member>
+ <member name="P:Alphaleonis.Win32.Filesystem.PathInfo.HasFileName">
+ <summary>
+ Gets a value indicating whether this instance has file name.
+ </summary>
+ <value>
+ <c>true</c> if this instance has file name; otherwise, <c>false</c>.
+ </value>
+ </member>
+ <member name="P:Alphaleonis.Win32.Filesystem.PathInfo.Extension">
+ <summary>
+ Gets the extension of the file name of this path.
+ </summary>
+ <value>The extension of the file name of this path, or an empty string if the path does
+ not contain a file name or the file name does not have an extension.</value>
+ </member>
+ <member name="P:Alphaleonis.Win32.Filesystem.PathInfo.HasExtension">
+ <summary>
+ Gets a value indicating whether the file name in this path has an extension.
+ </summary>
+ <value>
+ <c>true</c> if the file name in this path has an extension; otherwise, <c>false</c>.
+ </value>
+ </member>
+ <member name="P:Alphaleonis.Win32.Filesystem.PathInfo.FileNameWithoutExtension">
+ <summary>
+ Gets the file name without extension.
+ </summary>
+ <value>The file name without extension or an empty string if the
+ path does not contain a file name.</value>
+ </member>
+ <member name="P:Alphaleonis.Win32.Filesystem.PathInfo.SuffixedDirectoryName">
+ <summary>
+ Returns the directory information for the path with a trailing directory separator.
+ </summary>
+ <value>The name of the suffixed directory with a trailing directory separator.</value>
+ <seealso cref="P:Alphaleonis.Win32.Filesystem.PathInfo.DirectoryName"/>
+ </member>
+ <member name="P:Alphaleonis.Win32.Filesystem.PathInfo.SuffixedDirectoryNameWithoutRoot">
+ <summary>
+ Returns the directory information for the path without the root information, and with a trailing backslash.
+ </summary>
+ <value>The path without the root and file name part (if any) and with a trailing backslash.</value>
+ <seealso cref="P:Alphaleonis.Win32.Filesystem.PathInfo.DirectoryNameWithoutRoot"/>
+ <seealso cref="P:Alphaleonis.Win32.Filesystem.PathInfo.DirectoryName"/>
+ <seealso cref="P:Alphaleonis.Win32.Filesystem.PathInfo.SuffixedDirectoryName"/>
+ </member>
+ <member name="P:Alphaleonis.Win32.Filesystem.PathInfo.DirectoryName">
+ <summary>
+ Returns the directory information for the path.
+ </summary>
+ <value>The path without the file name part (if any).</value>
+ <seealso cref="P:Alphaleonis.Win32.Filesystem.PathInfo.SuffixedDirectoryName"/>
+ </member>
+ <member name="P:Alphaleonis.Win32.Filesystem.PathInfo.DirectoryNameWithoutRoot">
+ <summary>
+ Returns the directory information for the path with the root stripped off.
+ </summary>
+ <value>The path without the root and file name part (if any).</value>
+ </member>
+ <member name="P:Alphaleonis.Win32.Filesystem.PathInfo.DirectoryComponents">
+ <summary>
+ Gets a list exposing the individual components of the directory part of this path.
+ </summary>
+ <value>The directory components of this path.</value>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.PathInfo.ComponentList.IndexOf(System.String)">
+ <summary>
+ Determines the index of a specific item in the <see cref="T:System.Collections.Generic.IList`1"/>.
+ </summary>
+ <param name="item">The object to locate in the <see cref="T:System.Collections.Generic.IList`1"/>.</param>
+ <returns>
+ The index of <paramref name="item"/> if found in the list; otherwise, -1.
+ </returns>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.PathInfo.ComponentList.Insert(System.Int32,System.String)">
+ <summary>
+ Inserts an item to the <see cref="T:System.Collections.Generic.IList`1"/> at the specified index.
+ </summary>
+ <param name="index">The zero-based index at which <paramref name="item"/> should be inserted.</param>
+ <param name="item">The object to insert into the <see cref="T:System.Collections.Generic.IList`1"/>.</param>
+ <exception cref="T:System.ArgumentOutOfRangeException">
+ <paramref name="index"/> is not a valid index in the <see cref="T:System.Collections.Generic.IList`1"/>.</exception>
+ <exception cref="T:System.NotSupportedException">The <see cref="T:System.Collections.Generic.IList`1"/> is read-only.</exception>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.PathInfo.ComponentList.RemoveAt(System.Int32)">
+ <summary>
+ Removes the <see cref="T:System.Collections.Generic.IList`1"/> item at the specified index.
+ </summary>
+ <param name="index">The zero-based index of the item to remove.</param>
+ <exception cref="T:System.ArgumentOutOfRangeException">
+ <paramref name="index"/> is not a valid index in the <see cref="T:System.Collections.Generic.IList`1"/>.</exception>
+ <exception cref="T:System.NotSupportedException">The <see cref="T:System.Collections.Generic.IList`1"/> is read-only.</exception>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.PathInfo.ComponentList.Add(System.String)">
+ <summary>
+ Adds an item to the <see cref="T:System.Collections.Generic.ICollection`1"/>.
+ </summary>
+ <param name="item">The object to add to the <see cref="T:System.Collections.Generic.ICollection`1"/>.</param>
+ <exception cref="T:System.NotSupportedException">The <see cref="T:System.Collections.Generic.ICollection`1"/> is read-only.</exception>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.PathInfo.ComponentList.Clear">
+ <summary>
+ Removes all items from the <see cref="T:System.Collections.Generic.ICollection`1"/>.
+ </summary>
+ <exception cref="T:System.NotSupportedException">The <see cref="T:System.Collections.Generic.ICollection`1"/> is read-only. </exception>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.PathInfo.ComponentList.Contains(System.String)">
+ <summary>
+ Determines whether the <see cref="T:System.Collections.Generic.ICollection`1"/> contains a specific value.
+ </summary>
+ <param name="item">The object to locate in the <see cref="T:System.Collections.Generic.ICollection`1"/>.</param>
+ <returns>
+ true if <paramref name="item"/> is found in the <see cref="T:System.Collections.Generic.ICollection`1"/>; otherwise, false.
+ </returns>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.PathInfo.ComponentList.CopyTo(System.String[],System.Int32)">
+ <summary>
+ Copies the elements of the <see cref="T:System.Collections.Generic.ICollection`1"/> to an <see cref="T:System.Array"/>, starting at a particular <see cref="T:System.Array"/> index.
+ </summary>
+ <param name="array">The one-dimensional <see cref="T:System.Array"/> that is the destination of the elements copied from <see cref="T:System.Collections.Generic.ICollection`1"/>. The <see cref="T:System.Array"/> must have zero-based indexing.</param>
+ <param name="arrayIndex">The zero-based index in <paramref name="array"/> at which copying begins.</param>
+ <exception cref="T:System.ArgumentNullException">
+ <paramref name="array"/> is null.</exception>
+ <exception cref="T:System.ArgumentOutOfRangeException">
+ <paramref name="arrayIndex"/> is less than 0.</exception>
+ <exception cref="T:System.ArgumentException">
+ <paramref name="array"/> is multidimensional.-or-<paramref name="arrayIndex"/> is equal to or greater than the length of <paramref name="array"/>.-or-The number of elements in the source <see cref="T:System.Collections.Generic.ICollection`1"/> is greater than the available space from <paramref name="arrayIndex"/> to the end of the destination <paramref name="array"/>.-or-Type <paramref name="T"/> cannot be cast automatically to the type of the destination <paramref name="array"/>.</exception>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.PathInfo.ComponentList.Remove(System.String)">
+ <summary>
+ Removes the first occurrence of a specific object from the <see cref="T:System.Collections.Generic.ICollection`1"/>.
+ </summary>
+ <param name="item">The object to remove from the <see cref="T:System.Collections.Generic.ICollection`1"/>.</param>
+ <returns>
+ true if <paramref name="item"/> was successfully removed from the <see cref="T:System.Collections.Generic.ICollection`1"/>; otherwise, false. This method also returns false if <paramref name="item"/> is not found in the original <see cref="T:System.Collections.Generic.ICollection`1"/>.
+ </returns>
+ <exception cref="T:System.NotSupportedException">The <see cref="T:System.Collections.Generic.ICollection`1"/> is read-only.</exception>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.PathInfo.ComponentList.GetEnumerator">
+ <summary>
+ Returns an enumerator that iterates through the collection.
+ </summary>
+ <returns>
+ A <see cref="T:System.Collections.Generic.IEnumerator`1"/> that can be used to iterate through the collection.
+ </returns>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.PathInfo.ComponentList.System#Collections#IEnumerable#GetEnumerator">
+ <summary>
+ Returns an enumerator that iterates through a collection.
+ </summary>
+ <returns>
+ An <see cref="T:System.Collections.IEnumerator"/> object that can be used to iterate through the collection.
+ </returns>
+ </member>
+ <member name="P:Alphaleonis.Win32.Filesystem.PathInfo.ComponentList.Item(System.Int32)">
+ <summary>
+ Gets the <see cref="T:System.String"/> at the specified index.
+ </summary>
+ <value>The component of the directory at the specified index</value>
+ <exception cref="T:System.ArgumentOutOfRangeException">If <paramref name="index"/> is out of range.</exception>
+ </member>
+ <member name="P:Alphaleonis.Win32.Filesystem.PathInfo.ComponentList.Count">
+ <summary>
+ Gets the number of elements contained in the <see cref="T:System.Collections.Generic.ICollection`1"/>.
+ </summary>
+ <value></value>
+ <returns>The number of elements contained in the <see cref="T:System.Collections.Generic.ICollection`1"/>.</returns>
+ </member>
+ <member name="P:Alphaleonis.Win32.Filesystem.PathInfo.ComponentList.IsReadOnly">
+ <summary>
+ Gets a value indicating whether the <see cref="T:System.Collections.Generic.ICollection`1"/> is read-only.
+ </summary>
+ <value></value>
+ <returns>true</returns>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.PathInfo.Parser.ResolveParentReference">
+ <summary>
+ Removes a reference to the parent directory ("..") if possible.
+ This must be called *before* the reference to the parent directory has been
+ added.
+ </summary>
+ <returns><c>true</c> if the reference was removed, and <c>false</c> if it was kept.</returns>
+ </member>
+ <member name="T:Alphaleonis.Win32.Filesystem.Path">
+ <summary>
+ Performs operations on String instances that contain file or directory path information.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Filesystem.Path.UncPrefix">
+ <summary>
+ Provides standard Windows UNC path prefix
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Filesystem.Path.LongPathPrefix">
+ <summary>
+ Provides standard Windows long path prefix
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Filesystem.Path.LongPathUncPrefix">
+ <summary>
+ Provides standard Windows long path UNC prefix
+ </summary>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.Path.ChangeExtension(System.String,System.String)">
+ <summary>
+ Changes the extension of a path string.
+ </summary>
+ <param name="path">The path information to modify. The path cannot contain any of the characters defined in GetInvalidPathChars.</param>
+ <param name="extension">The new extension (with a leading period). Specify <see langword="null"/> to remove an existing extension from path.</param>
+ <returns>The <paramref name="path"/> specified with the extension of the file name changed to the specified <paramref name="extension"/>.</returns>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.Path.Combine(System.String,System.String)">
+ <summary>
+ Combines two path strings.
+ </summary>
+ <param name="path1">The path1.</param>
+ <param name="path2">The path2.</param>
+ <returns>A string containing the combined paths. If one of the specified paths is a zero-length string, this method returns the other path. If <paramref ref="path2"/> contains an absolute path, this method returns <paramref ref="path2"/>.</returns>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.Path.GetSuffixedDirectoryName(System.String)">
+ <summary>
+ Returns the directory information for the specified <paramref name="path"/> with a trailing directory separator.
+ </summary>
+ <param name="path">The path.</param>
+ <returns>The directory information for the specified <paramref name="path"/> with a trailing directory separator.</returns>
+ <seealso cref="P:Alphaleonis.Win32.Filesystem.PathInfo.SuffixedDirectoryName"/>
+ <seealso cref="M:Alphaleonis.Win32.Filesystem.Path.GetDirectoryName(System.String)"/>
+ <seealso cref="M:Alphaleonis.Win32.Filesystem.Path.GetDirectoryNameWithoutRoot(System.String)"/>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.Path.GetSuffixedDirectoryNameWithoutRoot(System.String)">
+ <summary>
+ Returns the directory information for the specified <paramref name="path"/> without the root and with a trailing directory separator.
+ </summary>
+ <param name="path">The path.</param>
+ <returns>The directory information for the specified <paramref name="path"/> without the root and with a trailing directory separator.</returns>
+ <seealso cref="P:Alphaleonis.Win32.Filesystem.PathInfo.SuffixedDirectoryNameWithoutRoot"/>
+ <seealso cref="M:Alphaleonis.Win32.Filesystem.Path.GetDirectoryName(System.String)"/>
+ <seealso cref="M:Alphaleonis.Win32.Filesystem.Path.GetDirectoryNameWithoutRoot(System.String)"/>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.Path.GetDirectoryName(System.String)">
+ <summary>
+ Returns the directory information for the specified path string.
+ </summary>
+ <param name="path">The path.</param>
+ <returns>The path without the file name part (if any).</returns>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.Path.GetDirectoryNameWithoutRoot(System.String)">
+ <summary>
+ Returns the directory information for the specified path string without the root information.
+ </summary>
+ <param name="path">The path.</param>
+ <returns>The path without the file name part and without the root information (if any).</returns>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.Path.GetExtension(System.String)">
+ <summary>
+ Returns the extension of the specified path string.
+ </summary>
+ <param name="path">The path string from which to get the extension.</param>
+ <returns>The extension of the specified <paramref name="path"/>, or an empty string
+ if the path contains no extension. If the path is <see langword="null"/>, this method
+ returns <see langword="null"/>.</returns>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.Path.GetFileName(System.String)">
+ <summary>
+ Returns the file name and extension of the specified path string.
+ </summary>
+ <param name="path">The path string from which to obtain the file name and extension.</param>
+ <returns>A String consisting of the characters after the last directory character in path.
+ If the last character of path is a directory or volume separator character,
+ this method returns Empty. If path is a null reference, this method returns
+ <see langword="null"/>.</returns>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.Path.GetFileNameWithoutExtension(System.String)">
+ <summary>
+ Returns the file name without extension of the specified path string.
+ </summary>
+ <param name="path">The path string from which to obtain the file name.</param>
+ <returns>A String consisting of the characters after the last directory character in path
+ up to the extension.
+ If the last character of path is a directory or volume separator character,
+ this method returns an empty string. If path is a null reference, this method returns
+ <see langword="null"/>.</returns>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.Path.GetFullPath(System.String)">
+ <summary>
+ Returns the absolute path for the specified path string.
+ </summary>
+ <param name="path">The file or directory for which to obtain absolute path information.</param>
+ <returns>A string containing the fully qualified location of path, such as "C:\MyFile.txt".</returns>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.Path.GetInvalidFileNameChars">
+ <summary>
+ Gets an array containing the characters that are not allowed in file names.
+ </summary>
+ <returns>An array containing the characters that are not allowed in file names.</returns>
+ <remarks>See also <see cref="M:System.IO.Path.GetInvalidFileNameChars"/></remarks>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.Path.GetInvalidPathChars">
+ <summary>
+ Gets an array containing the characters that are not allowed in path names.
+ </summary>
+ <returns>An array containing the characters that are not allowed in path names.</returns>
+ <remarks>See also <see cref="M:System.IO.Path.GetInvalidPathChars"/></remarks>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.Path.GetPathRoot(System.String)">
+ <summary>
+ Gets the path root.
+ </summary>
+ <param name="path">The path.</param>
+ <returns>A string containing the root directory of path, such as "C:\", or <see langword="null"/>
+ if <paramref name="path"/> is <see langword="null"/>, or an empty string if path does not
+ contain root directory information.</returns>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.Path.GetRandomFileName">
+ <summary>
+ Returns a random folder name or file name.
+ </summary>
+ <returns>A random folder name or file name.</returns>
+ <remarks>This is equivalent to <see cref="M:System.IO.Path.GetRandomFileName"/>.</remarks>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.Path.GetTempFileName">
+ <summary>
+ Creates a uniquely named, zero-byte temporary file on disk and returns the full path of that file.
+ </summary>
+ <returns>A <see cref="T:System.String"/> containing the full path of the temporary file.</returns>
+ <remarks>This is equivalent to <see cref="M:System.IO.Path.GetTempFileName"/></remarks>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.Path.GetTempPath">
+ <summary>
+ Returns the path of the current system's temporary folder.
+ </summary>
+ <returns>A <see cref="T:System.String"/> containing the path information of a temporary directory.</returns>
+ <remarks>This is equivalent to <see cref="M:System.IO.Path.GetTempPath"/></remarks>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.Path.GetMappedConnectionName(System.String)">
+ <summary>
+ Gets the connection name of the locally mapped drive.
+ </summary>
+ <param name="path">The local path with drive name. This method does not support long path prefixes.</param>
+ <returns>String which has the following format <c>\\servername\sharename</c>.</returns>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.Path.GetMappedUncName(System.String)">
+ <summary>
+ Gets the UNC name from the locally mapped path.
+ </summary>
+ <param name="path">The local path with drive name. </param>
+ <returns>String in which drive name being replaced with it's UNC connection name.</returns>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.Path.GetMappedInfoInternal(System.String)">
+ <summary>
+ Gets the mapped info internal.
+ This method uses NativeMethods.RemoteNameInfo level to retieve more info :)
+ </summary>
+ <param name="path">The local path with drive name.</param>
+ <returns><see cref="T:Alphaleonis.Win32.Filesystem.NativeMethods.RemoteNameInfo"/></returns>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.Path.HasExtension(System.String)">
+ <summary>
+ Determines whether a path includes a file name extension.
+ </summary>
+ <param name="path">The path to search for an extension. </param>
+ <returns>
+ <c>true</c> if the specified path has extension; otherwise, <c>false</c>.
+ </returns>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.Path.IsPathRooted(System.String)">
+ <summary>
+ Gets a value indicating whether the specified path string contains absolute or relative path information.
+ </summary>
+ <param name="path">The path to test. </param>
+ <returns>
+ <c>true</c> if <paramref ref="path"/> contains an absolute path; otherwise, <c>false</c>.
+ </returns>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.Path.IsValidName(System.String)">
+ <summary>
+ Check if file or folder name has any invalid characters.
+ </summary>
+ <param name="name">File or folder name.</param>
+ <returns>True or False</returns>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.Path.IsValidPath(System.String)">
+ <summary>
+ Verifies that the specified <paramref name="path"/> is valid and does not contain any wildcards.
+ </summary>
+ <param name="path">The string to test if it contains a valid path.</param>
+ <returns><see langword="true"/> if <paramref name="path"/> is a valid path, <see langword="false"/> otherwise.</returns>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.Path.IsValidPath(System.String,System.Boolean)">
+ <summary>
+ Verifies that the specified <paramref name="path"/> is valid and optionally may contain wildcards.
+ </summary>
+ <param name="path">The string to test if it contains a valid path.</param>
+ <param name="allowWildcards">if set to <c>true</c> wildcards are allowed in the filename part of the path, otherwise the
+ presence of wildcards will render the path invalid.</param>
+ <returns>
+ <see langword="true"/> if <paramref name="path"/> is a valid path, <see langword="false"/> otherwise.
+ </returns>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.Path.IsLongPath(System.String)">
+ <summary>
+ Check if the given path is has the specific long path prefix.
+ </summary>
+ <param name="path">File or folder full path.</param>
+ <returns><c>true</c> if has long path prefix, otherwise <c>false</c>.</returns>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.Path.GetLongPath(System.String)">
+ <summary>
+ Retrieves the full long (or extended) unicode version of the specified <paramref name="path"/>.
+ </summary>
+ <remarks>
+ <para>
+ This method takes care of different path conversions to be usable in Unicode
+ variants of the Win32 funcitons (which are internally used throughout AlphaFS).
+ </para>
+ <para>
+ Regular paths are changed like the following:
+ <list type="table">
+ <item>
+ <term><c>C:\Somewhere\Something.txt</c></term>
+ <description><c>\\?\C:\Somewhere\Something.txt</c></description>
+ </item>
+ <item>
+ <term><c>\\Somewhere\Something.txt</c></term>
+ <description><c>\\?\UNC\Somewhere\Something.txt</c></description>
+ </item>
+ </list>
+ </para>
+ <para>
+ Already processed paths are preserved untouched so to avoid mistakes of double prefixing.
+ </para>
+ <para>
+ If the <paramref name="path"/> is not an absolute path, or is not rooted, the path of the
+ current directory (and drive) is combined with the specified <paramref name="path"/> to form
+ an absolute path.
+ </para>
+ </remarks>
+ <param name="path">File or Folder name to sanitize and prefix with proper standard.</param>
+ <returns>The full long (or extended) unicode version of the specified <paramref name="path"/>.</returns>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.Path.GetRegularPath(System.String)">
+ <summary>
+ Gets the regular path from long prefixed one. i.e. \\?\C:\Temp\file.txt to C:\Temp\file.txt
+ \\?\UNC\Server\share\file.txt to \\Server\share\file.txt
+ </summary>
+ <param name="path">The path.</param>
+ <returns>Regular form path string.</returns>
+ <remarks>This method does not handle paths with volume names, eg. \\?\Volume{c00fa7c5-63eb-11dd-b6ed-806e6f6e6963}\Folder\file.txt </remarks>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.Path.IsUnc(System.String)">
+ <summary>
+ Determines whether the specified path is UNC path.
+ Supports long path prefix.
+ </summary>
+ <param name="path">The path.</param>
+ <returns>
+ <c>true</c> if the specified path is UNC; otherwise, <c>false</c>.
+ </returns>
+ </member>
+ <member name="F:Alphaleonis.Win32.Filesystem.Path.AltDirectorySeparatorChar">
+ <summary>
+ Provides a platform-specific alternate character used to separate directory levels in a path string that reflects a hierarchical file system organization.
+ </summary>
+ <value>The alt directory separator char.</value>
+ <remarks>Equivalent to <see cref="F:System.IO.Path.AltDirectorySeparatorChar"/></remarks>
+ </member>
+ <member name="F:Alphaleonis.Win32.Filesystem.Path.DirectorySeparatorChar">
+ <summary>
+ Provides a platform-specific character used to separate directory levels in a path string that reflects a hierarchical file system organization.
+ </summary>
+ <value>The directory separator char.</value>
+ <remarks>Equivalent to <see cref="F:System.IO.Path.DirectorySeparatorChar"/></remarks>
+ </member>
+ <member name="F:Alphaleonis.Win32.Filesystem.Path.PathSeparator">
+ <summary>
+ A platform-specific separator character used to separate path strings in environment variables..
+ </summary>
+ <value>The path separator.</value>
+ <remarks>Equivalent to <see cref="F:System.IO.Path.PathSeparator"/></remarks>
+ </member>
+ <member name="F:Alphaleonis.Win32.Filesystem.Path.VolumeSeparatorChar">
+ <summary>
+ Provides a platform-specific volume separator character.
+ </summary>
+ <value>The volume separator char.</value>
+ <remarks>Equivalent to <see cref="F:System.IO.Path.VolumeSeparatorChar"/></remarks>
+ </member>
+ <member name="T:Alphaleonis.Win32.Filesystem.FileSystemEntryEnumerator">
+ <summary>
+ Enumerator used to enumerate file system entries (i.e. files and directories).
+ </summary>
+ <remarks>The enumerator can only be used to enumerate through the items once,
+ and cannot be reset.</remarks>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.FileSystemEntryEnumerator.#ctor(System.String)">
+ <summary>
+ Initializes a new instance of the <see cref="T:Alphaleonis.Win32.Filesystem.FileSystemEntryEnumerator"/> class.
+ </summary>
+ <param name="path">The directory or path, and the file name, which can include
+ wildcard characters, for example, an asterisk (*) or a question mark (?).</param>
+ <remarks>Note that no validation is done whether or not the path actually exists when
+ the enumerator is constructed. This instead occurs during the first call
+ to <see cref="M:Alphaleonis.Win32.Filesystem.FileSystemEntryEnumerator.MoveNext"/>.</remarks>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.FileSystemEntryEnumerator.#ctor(System.String,System.Boolean)">
+ <summary>
+ Initializes a new instance of the <see cref="T:Alphaleonis.Win32.Filesystem.FileSystemEntryEnumerator"/> class.
+ </summary>
+ <param name="path">The directory or path, and the file name, which can include
+ wildcard characters, for example, an asterisk (*) or a question mark (?).</param>
+ <param name="directoriesOnly">if set to <c>true</c> enumerate only directories.</param>
+ <remarks>Note that no validation is done whether or not the path actually exists when
+ the enumerator is constructed. This instead occurs during the first call
+ to <see cref="M:Alphaleonis.Win32.Filesystem.FileSystemEntryEnumerator.MoveNext"/>.</remarks>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.FileSystemEntryEnumerator.#ctor(Alphaleonis.Win32.Filesystem.KernelTransaction,System.String)">
+ <summary>
+ Initializes a new instance of the <see cref="T:Alphaleonis.Win32.Filesystem.FileSystemEntryEnumerator"/> for
+ enumeration as part of a transaction.
+ </summary>
+ <param name="transaction">The transaction.</param>
+ <param name="path">The directory or path, and the file name, which can include
+ wildcard characters, for example, an asterisk (*) or a question mark (?).</param>
+ <remarks><para>Note that no validation is done whether or not the path actually exists when
+ the enumerator is constructed. This instead occurs during the first call
+ to <see cref="M:Alphaleonis.Win32.Filesystem.FileSystemEntryEnumerator.MoveNext"/>.</para>
+ <para>If <paramref name="transaction"/> is <see langword="null"/>, this constructor is equivalent
+ to <see cref="M:Alphaleonis.Win32.Filesystem.FileSystemEntryEnumerator.#ctor(System.String)"/>, leading to an untransacted operation.</para></remarks>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.FileSystemEntryEnumerator.#ctor(Alphaleonis.Win32.Filesystem.KernelTransaction,System.String,System.Boolean)">
+ <summary>
+ Initializes a new instance of the <see cref="T:Alphaleonis.Win32.Filesystem.FileSystemEntryEnumerator"/> for
+ enumeration as part of a transaction.
+ </summary>
+ <param name="transaction">The transaction.</param>
+ <param name="path">The directory or path, and the file name, which can include
+ wildcard characters, for example, an asterisk (*) or a question mark (?).</param>
+ <param name="directoriesOnly">if set to <c>true</c> enumerate only directories.</param>
+ <remarks><para>Note that no validation is done whether or not the path actually exists when
+ the enumerator is constructed. This instead occurs during the first call
+ to <see cref="M:Alphaleonis.Win32.Filesystem.FileSystemEntryEnumerator.MoveNext"/>.</para>
+ <para>If <paramref name="transaction"/> is <see langword="null"/>, this constructor is equivalent
+ to <see cref="M:Alphaleonis.Win32.Filesystem.FileSystemEntryEnumerator.#ctor(System.String)"/>, leading to an untransacted operation.</para></remarks>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.FileSystemEntryEnumerator.MoveNext">
+ <summary>
+ Advances the enumerator to the next file system entry matching the specified pattern.
+ </summary>
+ <returns>
+ <see langword="true"/> if the enumerator was successfully advanced to the next element;
+ <see langword="false"/> if the enumerator has passed the end of the collection.
+ </returns>
+ <exception cref="T:System.InvalidOperationException">The collection was modified after the enumerator was created. </exception>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.FileSystemEntryEnumerator.Filter">
+ <summary>
+ Filters the current and parent folders WIN32 notations ("." and "..").
+ </summary>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.FileSystemEntryEnumerator.Reset">
+ <summary>
+ This method is not supported.
+ </summary>
+ <exception cref="T:System.NotSupportedException">always.</exception>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.FileSystemEntryEnumerator.Dispose">
+ <summary>
+ Performs application-defined tasks associated with freeing, releasing, or
+ resetting unmanaged resources.
+ </summary>
+ </member>
+ <member name="P:Alphaleonis.Win32.Filesystem.FileSystemEntryEnumerator.Current">
+ <summary>
+ Gets the <see cref="T:Alphaleonis.Win32.Filesystem.FileSystemEntryInfo"/> representing the file system entry
+ at the current position of the enumerator.
+ </summary>
+ <value>the <see cref="T:Alphaleonis.Win32.Filesystem.FileSystemEntryInfo"/> representing the file system entry
+ at the current position of the enumerator.</value>
+ <returns>The element in the collection at the current position of the enumerator.</returns>
+ </member>
+ <member name="P:Alphaleonis.Win32.Filesystem.FileSystemEntryEnumerator.System#Collections#IEnumerator#Current">
+ <summary>
+ Gets the element in the collection at the current position of the enumerator.
+ </summary>
+ <value></value>
+ <returns>The element in the collection at the current position of the enumerator.</returns>
+ </member>
+ <member name="P:Alphaleonis.Win32.Filesystem.FileSystemEntryEnumerator.OnlyFolders">
+ <summary>
+ Gets or sets a value indicating whether to enumerate only folders.
+ </summary>
+ <value><c>true</c> if only folders should be enumerated; otherwise, <c>false</c>.</value>
+ </member>
+ <member name="T:Alphaleonis.Win32.Filesystem.SafeFindFileHandle">
+ <summary>
+ Represents a wrapper class for a handle used by the FindFirstFile/FindNextFile methods of the Win32 API
+ </summary>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.SafeFindFileHandle.#ctor">
+ <summary>
+ Initializes a new instance of the <see cref="T:Alphaleonis.Win32.Filesystem.SafeFindFileHandle"/> class.
+ </summary>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.SafeFindFileHandle.#ctor(System.IntPtr,System.Boolean)">
+ <summary>
+ Initializes a new instance of the <see cref="T:Alphaleonis.Win32.Filesystem.SafeFindFileHandle"/> class.
+ </summary>
+ <param name="handle">The handle.</param>
+ <param name="ownsHandle">if set to <c>true</c> [owns handle].</param>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.SafeFindFileHandle.ReleaseHandle">
+ <summary>
+ When overridden in a derived class, executes the code required to free the handle.
+ </summary>
+ <returns>
+ true if the handle is released successfully; otherwise, in the event of a catastrophic failure, false. In this case, it generates a ReleaseHandleFailed Managed Debugging Assistant.
+ </returns>
+ </member>
+ <member name="T:Alphaleonis.Win32.Filesystem.LinkTargetInfo">
+ <summary>
+ Information about the target of a symbolic link or mount point.
+ </summary>
+ </member>
+ <member name="P:Alphaleonis.Win32.Filesystem.LinkTargetInfo.SubstituteName">
+ <summary>
+ The substitute name
+ </summary>
+ </member>
+ <member name="P:Alphaleonis.Win32.Filesystem.LinkTargetInfo.PrintName">
+ <summary>
+ The print name
+ </summary>
+ </member>
+ <member name="T:Alphaleonis.Win32.Filesystem.DiskSpaceInfo">
+ <summary>
+ Represents information about free and used space on a disk.
+ </summary>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.DiskSpaceInfo.#ctor(System.UInt64,System.UInt64,System.UInt64)">
+ <summary>
+ Initializes the structure
+ </summary>
+ <param name="freeBytes">The free bytes available</param>
+ <param name="totalBytes">The total number of bytes</param>
+ <param name="totalFreeBytes">The total number of free bytes</param>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.DiskSpaceInfo.Equals(System.Object)">
+ <summary>
+ Indicates whether this instance and a specified object are equal.
+ </summary>
+ <param name="obj">Another object to compare to.</param>
+ <returns>
+ true if <paramref name="obj"/> and this instance are the same type and represent the same value; otherwise, false.
+ </returns>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.DiskSpaceInfo.GetHashCode">
+ <summary>
+ Returns the hash code for this instance.
+ </summary>
+ <returns>
+ A 32-bit signed integer that is the hash code for this instance.
+ </returns>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.DiskSpaceInfo.op_Equality(Alphaleonis.Win32.Filesystem.DiskSpaceInfo,Alphaleonis.Win32.Filesystem.DiskSpaceInfo)">
+ <summary>
+ Implements the operator ==.
+ </summary>
+ <param name="left">A.</param>
+ <param name="right">B.</param>
+ <returns>The result of the operator.</returns>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.DiskSpaceInfo.op_Inequality(Alphaleonis.Win32.Filesystem.DiskSpaceInfo,Alphaleonis.Win32.Filesystem.DiskSpaceInfo)">
+ <summary>
+ Implements the operator !=.
+ </summary>
+ <param name="left">A.</param>
+ <param name="right">B.</param>
+ <returns>The result of the operator.</returns>
+ </member>
+ <member name="P:Alphaleonis.Win32.Filesystem.DiskSpaceInfo.FreeBytesAvailable">
+ <summary>
+ Gets or sets the free bytes available.
+ </summary>
+ <value>The free bytes available.</value>
+ </member>
+ <member name="P:Alphaleonis.Win32.Filesystem.DiskSpaceInfo.TotalNumberOfBytes">
+ <summary>
+ Gets or sets the total number of bytes.
+ </summary>
+ <value>The total number of bytes.</value>
+ </member>
+ <member name="P:Alphaleonis.Win32.Filesystem.DiskSpaceInfo.TotalNumberOfFreeBytes">
+ <summary>
+ Gets or sets the total number of free bytes.
+ </summary>
+ <value>The total number of free bytes.</value>
+ </member>
+ <member name="F:Alphaleonis.Win32.Win32Errors.ERROR_TRANSACTION_NOT_ACTIVE">
+ <summary>
+ The requested operation was made in the context of a transaction that is no longer active.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Win32Errors.ERROR_TRANSACTION_REQUEST_NOT_VALID">
+ <summary>
+ The requested operation is not valid on the Transaction object in its current state.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Win32Errors.ERROR_TRANSACTIONAL_CONFLICT">
+ <summary>
+ The function attempted to use a name that is reserved for use by another transaction.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Win32Errors.ERROR_TRANSACTIONS_UNSUPPORTED_REMOTE">
+ <summary>
+ The remote server or share does not support transacted file operations.
+ </summary>
+ </member>
+ <member name="T:Alphaleonis.Win32.Filesystem.TransactionException">
+ <summary>
+ The exception that is thrown when an attempt to create a directory or file that already exists was made.
+ </summary>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.TransactionException.#ctor">
+ <summary>
+ Initializes a new instance of the <see cref="T:Alphaleonis.Win32.Filesystem.TransactionException"/> class.
+ </summary>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.TransactionException.#ctor(System.String)">
+ <summary>
+ Initializes a new instance of the <see cref="T:Alphaleonis.Win32.Filesystem.TransactionException"/> class.
+ </summary>
+ <param name="message">The message.</param>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.TransactionException.#ctor(System.String,System.Exception)">
+ <summary>
+ Initializes a new instance of the <see cref="T:Alphaleonis.Win32.Filesystem.TransactionException"/> class.
+ </summary>
+ <param name="message">The message.</param>
+ <param name="innerException">The inner exception.</param>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.TransactionException.#ctor(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">
+ <summary>
+ Initializes a new instance of the <see cref="T:Alphaleonis.Win32.Filesystem.TransactionException"/> class.
+ </summary>
+ <param name="info">The data for serializing or deserializing the object.</param>
+ <param name="context">The source and destination for the object.</param>
+ </member>
+ <member name="T:Alphaleonis.Win32.Filesystem.FileInfo">
+ <summary>
+ Provides instance methods for the creation, copying, deletion, moving, and opening of files, and aids in the creation of FileStream objects.
+ This class cannot be inherited.
+ </summary>
+ </member>
+ <member name="T:Alphaleonis.Win32.Filesystem.FileSystemInfo">
+ <summary>
+ Provides the base class for both FileInfo and DirectoryInfo objects.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Filesystem.FileSystemInfo.mExists">
+ <summary>
+ Indicator of file existence. It refreshes each time Refresh() has been called.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Filesystem.FileSystemInfo.mFileSystemEntryInfo">
+ <summary>
+ Represents extended file information.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Filesystem.FileSystemInfo.FullPath">
+ <summary>
+ Represents the fully qualified path of the directory or file.
+ </summary>
+ <remarks>
+ Notes to Inheritors:
+ Classes derived from FileSystemInfo can use the FullPath field to determine the full path of the object being manipulated.
+ </remarks>
+ </member>
+ <member name="F:Alphaleonis.Win32.Filesystem.FileSystemInfo.OriginalPath">
+ <summary>
+ The path originally specified by the user, whether relative or absolute.
+ </summary>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.FileSystemInfo.Delete">
+ <summary>
+ Deletes a file or directory.
+ </summary>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.FileSystemInfo.Refresh">
+ <summary>
+ Refreshes the state of the object.
+ </summary>
+ <remarks>
+ FileSystemInfo.Refresh takes a snapshot of the file from the current file system. Refresh cannot correct the underlying file system even if the file system returns incorrect or outdated information. This can happen on platforms such as Windows 98.
+ Calls must be made to Refresh before attempting to get the attribute information, or the information will be outdated.
+ </remarks>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.FileSystemInfo.ToString">
+ <summary>
+ Returns a String that represents the current Object.
+ </summary>
+ <returns>String</returns>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.FileSystemInfo.ThrowDoesNotExistsException">
+ <summary>
+ Throws the does not exists exception.
+ </summary>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.FileSystemInfo.Initialize(System.String)">
+ <summary>
+ Initializes the specified file name.
+ </summary>
+ <param name="fileName">Name of the file.</param>
+ </member>
+ <member name="P:Alphaleonis.Win32.Filesystem.FileSystemInfo.DirectoryName">
+ <summary>
+ Gets a full path string representing the file's parent directory.
+ </summary>
+ <value>A string representing the parent directory full path.</value>
+ </member>
+ <member name="P:Alphaleonis.Win32.Filesystem.FileSystemInfo.Attributes">
+ <summary>
+ Gets or sets the <see cref="T:Alphaleonis.Win32.Filesystem.FileAttributes"/> of the current <see cref="T:Alphaleonis.Win32.Filesystem.FileSystemInfo"/>.
+ </summary>
+ </member>
+ <member name="P:Alphaleonis.Win32.Filesystem.FileSystemInfo.CreationTime">
+ <summary>
+ Gets or sets the creation time of the current <see cref="T:Alphaleonis.Win32.Filesystem.FileSystemInfo"/> object.
+ </summary>
+ <returns>The creation date and time of the current System.IO.FileSystemInfo object.</returns>
+ </member>
+ <member name="P:Alphaleonis.Win32.Filesystem.FileSystemInfo.CreationTimeUtc">
+ <summary>
+ Gets or sets the creation time, in coordinated universal time (UTC), of the current FileSystemInfo object.
+ </summary>
+ </member>
+ <member name="P:Alphaleonis.Win32.Filesystem.FileSystemInfo.Exists">
+ <summary>
+ Gets a value indicating whether the file or directory exists.
+ </summary>
+ </member>
+ <member name="P:Alphaleonis.Win32.Filesystem.FileSystemInfo.Extension">
+ <summary>
+ The Extension property returns the FileSystemInfo extension, including the period (.). For example, for a file c:\NewFile.txt, this property returns ".txt".
+ </summary>
+ </member>
+ <member name="P:Alphaleonis.Win32.Filesystem.FileSystemInfo.FullName">
+ <summary>
+ A string containing the name with full path.
+ </summary>
+ </member>
+ <member name="P:Alphaleonis.Win32.Filesystem.FileSystemInfo.SystemInfo">
+ <summary>
+ Gets the system info.
+ </summary>
+ <value>The system info.</value>
+ </member>
+ <member name="P:Alphaleonis.Win32.Filesystem.FileSystemInfo.LastAccessTime">
+ <summary>
+ Gets or sets the time the current file or directory was last accessed.
+ </summary>
+ <remarks>When first called, <see cref="T:Alphaleonis.Win32.Filesystem.FileSystemInfo"/> calls Refresh and returns the cached information on APIs to get attributes and so on. On subsequent calls, you must call Refresh to get the latest copy of the information.
+ If the file described in the <see cref="T:Alphaleonis.Win32.Filesystem.FileSystemInfo"/> object does not exist, this property will return 12:00 midnight, January 1, 1601 A.D. (C.E.) Coordinated Universal Time (UTC), adjusted to local time.
+ </remarks>
+ </member>
+ <member name="P:Alphaleonis.Win32.Filesystem.FileSystemInfo.LastAccessTimeUtc">
+ <summary>
+ Gets or sets the time, in coordinated universal time (UTC), that the current file or directory was last accessed
+ </summary>
+ <remarks>When first called, <see cref="T:Alphaleonis.Win32.Filesystem.FileSystemInfo"/> calls Refresh and returns the cached information on APIs to get attributes and so on. On subsequent calls, you must call Refresh to get the latest copy of the information.
+ If the file described in the <see cref="T:Alphaleonis.Win32.Filesystem.FileSystemInfo"/> object does not exist, this property will return 12:00 midnight, January 1, 1601 A.D. (C.E.) Coordinated Universal Time (UTC), adjusted to local time.
+ </remarks>
+ </member>
+ <member name="P:Alphaleonis.Win32.Filesystem.FileSystemInfo.LastWriteTime">
+ <summary>
+ Gets or sets the time when the current file or directory was last written to.
+ </summary>
+ </member>
+ <member name="P:Alphaleonis.Win32.Filesystem.FileSystemInfo.LastWriteTimeUtc">
+ <summary>
+ Gets or sets the time, in coordinated universal time (UTC), when the current file or directory was last written to.
+ </summary>
+ </member>
+ <member name="P:Alphaleonis.Win32.Filesystem.FileSystemInfo.Name">
+ <summary>
+ For files, gets the name of the file. For directories, gets the name of the last directory in the hierarchy if a hierarchy exists. Otherwise, the Name property gets the name of the directory.
+ </summary>
+ <remarks>
+ For a directory, Name returns only the name of the parent directory, such as Dir, not c:\Dir. For a subdirectory, Name returns only the name of the subdirectory, such as Sub1, not c:\Dir\Sub1.
+ For a file, Name returns only the file name and file name extension, such as MyFile.txt, not c:\Dir\Myfile.txt.
+ </remarks>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.FileInfo.#ctor(System.String)">
+ <summary>
+ Initializes a new instance of the FileInfo class, which acts as a wrapper for a file path.
+ </summary>
+ <param name="fileName">The path to the file.</param>
+ <exception cref="T:System.ArgumentNullException"><paramref name="fileName"/> is a <see langword="null"/> reference.</exception>
+ <remarks>
+ You can specify either the fully qualified or the relative file name, but the security check gets the fully qualified name.
+ </remarks>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.FileInfo.Refresh">
+ <summary>
+ Refreshes the state of the object.
+ </summary>
+ <remarks>
+ FileSystemInfo.Refresh takes a snapshot of the file from the current file system. Refresh cannot correct the underlying file system even if the file system returns incorrect or outdated information. This can happen on platforms such as Windows 98.
+ Calls must be made to Refresh before attempting to get the attribute information, or the information will be outdated.
+ </remarks>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.FileInfo.Delete">
+ <summary>
+ Deletes a file.
+ </summary>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.FileInfo.ToString">
+ <summary>
+ Returns the path as a string.
+ </summary>
+ <returns>A string representing the path.</returns>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.FileInfo.AppendText">
+ <summary>
+ Creates a <see cref="T:System.IO.StreamWriter"/> that appends text to the file represented by this instance of the <see cref="T:Alphaleonis.Win32.Filesystem.FileInfo"/>.
+ </summary>
+ <returns>A <see cref="T:System.IO.StreamWriter"/> that appends UTF-8 encoded text to an existing file.</returns>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.FileInfo.CopyTo(System.String)">
+ <summary>
+ Copies an existing file to a new file, disallowing the overwriting of an existing file.
+ </summary>
+ <param name="destFileName">The name of the new file to copy to.</param>
+ <returns><typeparamref name="FileInfo"/>A new file with a fully qualified path.</returns>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.FileInfo.CopyTo(System.String,System.Boolean)">
+ <summary>
+ Copies an existing file to a new file, allowing the overwriting of an existing file.
+ </summary>
+ <param name="destFileName">The name of the new file to copy to.</param>
+ <param name="overwrite"><c>true</c> to allow an existing file to be overwritten; otherwise, <c>false</c>.</param>
+ <returns><typeparamref name="FileInfo"/>A new file, or an overwrite of an existing file if overwrite is true. If the file exists and overwrite is false, an IOException is thrown.</returns>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.FileInfo.Create">
+ <summary>
+ Creates a file.
+ </summary>
+ <returns><typeparamref name="System.IO.FileStream"/>A new file.</returns>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.FileInfo.CreateText">
+ <summary>
+ Creates a <typeparamref name="System.IO.StreamWriter"/> that writes a new text file.
+ </summary>
+ <returns>A new <typeparamref name="System.IO.StreamWriter"/></returns>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.FileInfo.Decrypt">
+ <summary>
+ Decrypts a file that was encrypted by the current account using the <see cref="M:Alphaleonis.Win32.Filesystem.FileInfo.Encrypt"/> method.
+ </summary>
+ <remarks>The Decrypt method allows you to decrypt a file that was encrypted using the Encrypt method.
+ The Decrypt method can decrypt only files that were encrypted using the current user account.
+ Both the Encrypt method and the Decrypt method use the cryptographic service provider (CSP) installed on the computer and the file encryption keys of the process calling the method.
+ The current file system must be formatted as NTFS and the current operating system must be Microsoft Windows NT or later.
+ </remarks>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.FileInfo.Encrypt">
+ <summary>
+ Encrypts a file so that only the account used to encrypt the file can decrypt it.
+ </summary>
+ <remarks>
+ The Encrypt method allows you to encrypt a file so that only the account used to call this method can decrypt it. Use the Decrypt method to decrypt a file encrypted by the Encrypt method.
+ Both the Encrypt method and the Decrypt method use the cryptographic service provider (CSP) installed on the computer and the file encryption keys of the process calling the method.
+ The current file system must be formatted as NTFS and the current operating system must be Microsoft Windows NT or later.
+ </remarks>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.FileInfo.GetAccessControl">
+ <summary>
+ Gets a <see cref="T:System.Security.AccessControl.FileSecurity"/> object that encapsulates the access control list (ACL) entries for the file described by the current <see cref="T:Alphaleonis.Win32.Filesystem.FileInfo"/> object.
+ </summary>
+ <returns><typeparamref name="System.Security.AccessControl.FileSecurity"/>A FileSecurity object that encapsulates the access control rules for the current file. </returns>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.FileInfo.GetAccessControl(System.Security.AccessControl.AccessControlSections)">
+ <summary>
+ Gets a <see cref="T:System.Security.AccessControl.FileSecurity"/> object that encapsulates the specified type of access control list (ACL) entries for the file described by the current FileInfo object.
+ </summary>
+ <param name="includeSections">The include sections.</param>
+ <returns><typeparamref name="System.Security.AccessControl.FileSecurity"/> object that encapsulates the specified type of access control list (ACL) entries for the file described by the current FileInfo object.</returns>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.FileInfo.MoveTo(System.String)">
+ <summary>
+ Moves a specified file to a new location, providing the option to specify a new file name.
+ </summary>
+ <param name="destFileName">The path to move the file to, which can specify a different file name.</param>
+ <remarks>This method works across disk volumes. For example, the file c:\MyFile.txt can be moved to d:\public and renamed NewFile.txt.</remarks>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.FileInfo.Open(Alphaleonis.Win32.Filesystem.FileMode)">
+ <summary>
+ Opens a file in the specified mode.
+ </summary>
+ <param name="mode">A FileMode constant specifying the mode (for example, Open or Append) in which to open the file.</param>
+ <returns><typeparamref name="System.IO.FileStream"/>A file opened in the specified mode, with read/write access and unshared.</returns>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.FileInfo.Open(Alphaleonis.Win32.Filesystem.FileMode,Alphaleonis.Win32.Filesystem.FileAccess)">
+ <summary>
+ Opens a file in the specified mode with read, write, or read/write access.
+ </summary>
+ <param name="mode">A FileMode constant specifying the mode (for example, Open or Append) in which to open the file.</param>
+ <param name="access"><typeparamref name="System.IO.FileAccess"/>A FileAccess constant specifying whether to open the file with Read, Write, or ReadWrite file access. </param>
+ <returns><typeparamref name="System.IO.FileStream"/>A file opened in the specified mode, with read/write access and unshared.</returns>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.FileInfo.Open(Alphaleonis.Win32.Filesystem.FileMode,Alphaleonis.Win32.Filesystem.FileAccess,Alphaleonis.Win32.Filesystem.FileShare)">
+ <summary>
+ Opens a file in the specified mode with read, write, or read/write access.
+ </summary>
+ <param name="mode">A FileMode constant specifying the mode (for example, Open or Append) in which to open the file.</param>
+ <param name="access"><typeparamref name="System.IO.FileAccess"/>A FileAccess constant specifying whether to open the file with Read, Write, or ReadWrite file access.</param>
+ <param name="share">A FileShare constant specifying the type of access other FileStream objects have to this file.</param>
+ <returns>
+ <typeparamref name="System.IO.FileStream"/>A file opened in the specified mode, with read/write access and unshared.
+ </returns>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.FileInfo.OpenRead">
+ <summary>
+ Creates a read-only FileStream.
+ </summary>
+ <returns>A new read-only FileStream object.</returns>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.FileInfo.OpenText">
+ <summary>
+ Creates a StreamReader with UTF8 encoding that reads from an existing text file.
+ </summary>
+ <returns>A new StreamReader with UTF8 encoding.</returns>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.FileInfo.OpenWrite">
+ <summary>
+ Creates a write-only FileStream.
+ </summary>
+ <returns>A new write-only unshared FileStream object.</returns>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.FileInfo.Replace(System.String,System.String)">
+ <summary>
+ Replaces the contents of a specified file with the file described by the current FileInfo object, deleting the original file, and creating a backup of the replaced file.
+ </summary>
+ <param name="destinationFileName"><typeparamref name="System.String"/>The name of a file to replace with the current file.</param>
+ <param name="destinationBackupFileName"><typeparamref name="System.String"/>The name of a file with which to create a backup of the file described by the destFileName parameter.</param>
+ <returns><typeparamref name="FileInfo"/>A FileInfo object that encapsulates information about the file described by the destFileName parameter.</returns>
+ <remarks>The Replace method replaces the contents of a specified file with the contents of the file described by the current FileInfo object. It also creates a backup of the file that was replaced. Finally, it returns a new FileInfo object that describes the overwritten file.</remarks>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.FileInfo.Replace(System.String,System.String,System.Boolean)">
+ <summary>
+ Replaces the specified destination file name.
+ </summary>
+ <param name="destinationFileName"><typeparamref name="System.String"/>The name of a file to replace with the current file.</param>
+ <param name="destinationBackupFileName"><typeparamref name="System.String"/>The name of a file with which to create a backup of the file described by the destFileName parameter.</param>
+ <param name="ignoreMetadataErrors">true to ignore merge errors (such as attributes and ACLs) from the replaced file to the replacement file; otherwise false.</param>
+ <returns><typeparamref name="FileInfo"/>A FileInfo object that encapsulates information about the file described by the destFileName parameter.</returns>
+ <remarks>The Replace method replaces the contents of a specified file with the contents of the file described by the current FileInfo object. It also creates a backup of the file that was replaced. Finally, it returns a new FileInfo object that describes the overwritten file.
+ The last parameter <paramref name="ignoreMetadataErrors"/> is not supported yet.
+ </remarks>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.FileInfo.SetAccessControl(System.Security.AccessControl.FileSecurity)">
+ <summary>
+ Applies access control list (ACL) entries described by a FileSecurity object to the file described by the current FileInfo object.
+ </summary>
+ <param name="fileSecurity"><typeparamref name="System.Security.AccessControl"/>A FileSecurity object that describes an access control list (ACL) entry to apply to the current file.</param>
+ <remarks>The SetAccessControl method applies access control list (ACL) entries to the current file that represents the noninherited ACL list.
+ Use the SetAccessControl method whenever you need to add or remove ACL entries from a file.
+ </remarks>
+ </member>
+ <member name="P:Alphaleonis.Win32.Filesystem.FileInfo.Directory">
+ <summary>
+ Gets an instance of the parent directory.
+ </summary>
+ <value>A <see cref="T:Alphaleonis.Win32.Filesystem.DirectoryInfo"/> object representing the parent directory of this file.</value>
+ <remarks>To get the parent directory as a string, use the DirectoryName property.</remarks>
+
+ </member>
+ <member name="P:Alphaleonis.Win32.Filesystem.FileInfo.Exists">
+ <summary>
+ Gets a value indicating whether the file or directory exists.
+ </summary>
+ <value><c>true</c> if the file exists; otherwise, <c>false</c>.</value>
+ </member>
+ <member name="P:Alphaleonis.Win32.Filesystem.FileInfo.IsReadOnly">
+ <summary>
+ Gets or sets a value that determines if the current file is read only.
+ </summary>
+ <value>
+ <c>true</c> if the current file is read only; otherwise, <c>false</c>.
+ </value>
+ </member>
+ <member name="P:Alphaleonis.Win32.Filesystem.FileInfo.Name">
+ <summary>
+ Gets the name of the file with extension.
+ </summary>
+ <value>File name with extension.</value>
+ <remarks>
+ For a file, Name returns only the file name and file name extension, such as MyFile.txt, not c:\Dir\Myfile.txt.
+ </remarks>
+ </member>
+ <member name="P:Alphaleonis.Win32.Filesystem.FileInfo.Length">
+ <summary>
+ Gets the file size.
+ </summary>
+ <value>The file size.</value>
+ </member>
+ <member name="T:Alphaleonis.Win32.Filesystem.Directory">
+ <summary>
+ Exposes static methods for creating, moving, and enumerating through directories and subdirectories.
+ </summary>
+ <remarks>
+ <para>As opposed to <see cref="T:System.IO.Directory"/> this class supports the use of extenden length unicode paths, such as
+ <c>\\?\Volume{c00fa7c5-63eb-11dd-b6ed-806e6f6e6963}\Program Files\Internet Explorer</c>. In addition, support for transacted file operation
+ using the kernel transaction manager is provided. (See also <see cref="T:Alphaleonis.Win32.Filesystem.KernelTransaction"/>).</para>
+ <para>Note that no methods in this class perform any validation of the supplied paths. They are passed as is to the corresponding
+ native kernel functions, meaning that invalid paths may result in exceptions of a type other than the expected for a certain operation.
+ </para>
+ </remarks>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.Directory.CreateDirectory(System.String)">
+ <overloads>
+ <summary>Creates a new directory.</summary>
+ </overloads>
+ <summary>
+ Creates a new directory. If the underlying file system supports security on files and directories, the function applies a default security descriptor to the new directory.
+ </summary>
+ <param name="pathName">The path of the directory to be created.</param>
+ <exception cref="T:Alphaleonis.Win32.Filesystem.AlreadyExistsException">The specified directory already exists.</exception>
+ <exception cref="T:System.IO.DirectoryNotFoundException">One or more intermediate directories do not exist; this function will only create the final directory in the path.</exception>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.Directory.CreateDirectory(System.String,System.Security.AccessControl.DirectorySecurity)">
+ <summary>
+ Creates a new directory. If the underlying file system supports security on files and directories, the function applies a security descriptor to the new directory.
+ </summary>
+ <param name="pathName">The path of the directory to be created.</param>
+ <param name="security">The seurity descriptor to apply to the directory</param>
+ <exception cref="T:Alphaleonis.Win32.Filesystem.AlreadyExistsException">The specified directory already exists.</exception>
+ <exception cref="T:System.IO.DirectoryNotFoundException">One or more intermediate directories do not exist; this function will only create the final directory in the path.</exception>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.Directory.CreateDirectory(System.String,System.String)">
+ <summary>
+ Creates a new directory with the attributes of a specified template directory.
+ If the underlying file system supports security on files and directories, the function
+ applies a default security descriptor to the new directory. The new directory retains
+ the other attributes of the specified template directory.
+ </summary>
+ <param name="templatePathName">The path of the directory to use as a template when creating the new directory. </param>
+ <param name="newPathName">The path of the directory to be created. </param>
+ <exception cref="T:Alphaleonis.Win32.Filesystem.AlreadyExistsException">The specified directory already exists.</exception>
+ <exception cref="T:System.IO.DirectoryNotFoundException">One or more intermediate directories do not exist; this function will only create the final directory in the path.</exception>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.Directory.CreateDirectory(System.String,System.String,System.Security.AccessControl.DirectorySecurity)">
+ <summary>
+ Creates a new directory with the attributes of a specified template directory.
+ If the underlying file system supports security on files and directories, the function
+ applies the specified security descriptor to the new directory. The new directory retains
+ the other attributes of the specified template directory.
+ </summary>
+ <param name="templatePathName">The path of the directory to use as a template when creating the new directory. </param>
+ <param name="newPathName">The path of the directory to be created. </param>
+ <param name="security">The seurity descriptor to apply to the directory.</param>
+ <exception cref="T:Alphaleonis.Win32.Filesystem.AlreadyExistsException">The specified directory already exists.</exception>
+ <exception cref="T:System.IO.DirectoryNotFoundException">One or more intermediate directories do not exist; this function will only create the final directory in the path.</exception>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.Directory.CreateDirectory(Alphaleonis.Win32.Filesystem.KernelTransaction,System.String)">
+ <summary>
+ Creates a new directory as a transacted operation.
+ If the underlying file system supports security on files and directories, the function applies a
+ default security descriptor to the new directory.
+ </summary>
+ <param name="transaction">The transaction to use.</param>
+ <param name="newPathName">The path of the directory to be created.</param>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.Directory.CreateDirectory(Alphaleonis.Win32.Filesystem.KernelTransaction,System.String,System.Security.AccessControl.DirectorySecurity)">
+ <summary>
+ Creates a new directory as a transacted operation.
+ If the underlying file system supports security on files and directories, the function
+ applies a specified security descriptor to the new directory.
+ </summary>
+ <param name="transaction">The transaction to use.</param>
+ <param name="newPathName">The path of the directory to be created. </param>
+ <param name="security">
+ <para>
+ If <paramref name="security"/> is <see langword="null"/>, the directory gets a default security descriptor.
+ The access control lists (ACL) in the default security descriptor for a directory are inherited from its parent directory.
+ </para>
+ <para>
+ The target file system must support security on files and directories for this parameter to have an effect.
+ This is indicated when <see cref="M:Alphaleonis.Win32.Filesystem.Volume.GetVolumeInformation(System.String)"/> returns an object with <see cref="P:Alphaleonis.Win32.Filesystem.VolumeInfo.HasPersistentAccessControlLists"/>
+ set to <c>true</c>.
+ </para>
+ </param>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.Directory.CreateDirectory(Alphaleonis.Win32.Filesystem.KernelTransaction,System.String,System.String)">
+ <summary>
+ Creates a new directory as a transacted operation, with the attributes of a specified template directory.
+ If the underlying file system supports security on files and directories, the function applies a default security descriptor to the new directory.
+ The new directory retains the other attributes of the specified template directory.
+ </summary>
+ <param name="templatePathName">
+ <para>The path of the directory to use as a template when creating the new directory. This parameter can be <see langword="null"/>. </para>
+ <para>The directory must reside on the local computer; otherwise, the an exception of type <see cref="T:Alphaleonis.Win32.Filesystem.UnsupportedRemoteTransactionException"/> is thrown.</para>
+ </param>
+ <param name="transaction">The transaction to use.</param>
+ <param name="newPathName">The path of the directory to be created. </param>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.Directory.CreateDirectory(Alphaleonis.Win32.Filesystem.KernelTransaction,System.String,System.String,System.Security.AccessControl.DirectorySecurity)">
+ <summary>
+ Creates a new directory as a transacted operation, with the attributes of a specified template directory. If the underlying file system supports security on files and directories, the function applies a specified security descriptor to the new directory. The new directory retains the other attributes of the specified template directory.
+ </summary>
+ <param name="templatePathName">
+ <para>The path of the directory to use as a template when creating the new directory. This parameter can be <see langword="null"/>. </para>
+ <para>The directory must reside on the local computer; otherwise, the an exception of type <see cref="T:Alphaleonis.Win32.Filesystem.UnsupportedRemoteTransactionException"/> is thrown.</para>
+ </param>
+ <param name="transaction">The transaction to use.</param>
+ <param name="newPathName">The path of the directory to be created. </param>
+ <param name="security">
+ <para>
+ If <paramref name="security"/> is <see langword="null"/>, the directory gets a default security descriptor.
+ The access control lists (ACL) in the default security descriptor for a directory are inherited from its parent directory.
+ </para>
+ <para>
+ The target file system must support security on files and directories for this parameter to have an effect.
+ This is indicated when <see cref="M:Alphaleonis.Win32.Filesystem.Volume.GetVolumeInformation(System.String)"/> returns an object with <see cref="P:Alphaleonis.Win32.Filesystem.VolumeInfo.HasPersistentAccessControlLists"/>
+ set to <c>true</c>.
+ </para>
+ </param>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.Directory.Delete(System.String)">
+ <overloads>
+ <summary>
+ Deletes an existing directory.
+ </summary>
+ </overloads>
+ <summary>
+ Deletes an existing empty directory.
+ </summary>
+ <param name="path">The path of the directory to be removed. This path must specify an empty directory, and the calling process must have delete access to the directory.</param>
+ <exception cref="T:System.ArgumentNullException"><paramref name="path"/> is <see langword="null"/></exception>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.Directory.Delete(System.String,System.Boolean)">
+ <summary>
+ Deletes the specified directory and, if indicated, any subdirectories in the directory.
+ </summary>
+ <param name="path">The name of the directory to remove.</param>
+ <param name="recursive"><c>true</c> to remove directories, subdirectories, and files in path; otherwise, <c>false</c>.</param>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.Directory.Delete(System.String,System.Boolean,System.Boolean)">
+ <summary>
+ Deletes the specified directory and, if indicated, any subdirectories in the directory.
+ </summary>
+ <param name="path">The name of the directory to remove.</param>
+ <param name="recursive"><c>true</c> to remove directories, subdirectories, and files in path; otherwise, <c>false</c>.</param>
+ <param name="ignoreReadOnly">if set to <c>true</c> ignores read only attribute of files and directories.</param>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.Directory.Delete(Alphaleonis.Win32.Filesystem.KernelTransaction,System.String)">
+ <summary>
+ Deletes an existing empty directory as a transacted operation.
+ </summary>
+ <param name="pathName">
+ <para>The path of the directory to be removed. </para>
+ <para>The path must specify an empty directory, and the calling process must have delete access to the directory.</para>
+ <para>The path of the directory to be removed. This path must specify an empty directory, and the calling process must have delete access to the directory.</para>
+ <para>The directory must reside on the local computer; otherwise, the function throws <see cref="T:Alphaleonis.Win32.Filesystem.UnsupportedRemoteTransactionException"/>.</para>
+ </param>
+ <param name="transaction">The transaction to use</param>
+ <exception cref="T:System.ArgumentNullException"><paramref name="pathName"/> or <paramref name="transaction"/> is <see langword="null"/></exception>
+ <exception cref="T:Alphaleonis.Win32.Filesystem.UnsupportedRemoteTransactionException">The directory <paramref name="pathName"/> does not reside on the local computer.</exception>
+ <exception cref="T:Alphaleonis.Win32.Filesystem.InvalidTransactionException">The transaction object is not valid for this operation.</exception>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.Directory.Exists(System.String)">
+ <overloads>
+ <summary>
+ Determines whether the given path refers to an existing directory on disk.
+ </summary>
+ </overloads>
+ <summary>
+ Determines whether the given path refers to an existing directory on disk.
+ </summary>
+ <param name="path">The path to test.</param>
+ <returns><c>true</c> if path refers to an existing directory; otherwise, <c>false</c>.</returns>
+ <remarks>Possible performance improvement may be achieved by utilizing <c>FINDEX_SEARCH_OPS.FindExSearchLimitToDirectories</c>.</remarks>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.Directory.Exists(Alphaleonis.Win32.Filesystem.KernelTransaction,System.String)">
+ <summary>
+ Determines whether the given path refers to an existing directory on disk as part of a transaction.
+ </summary>
+ <param name="transaction">The transaction.</param>
+ <param name="path">The path to test.</param>
+ <returns>
+ <c>true</c> if path refers to an existing directory; otherwise, <c>false</c>.
+ </returns>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.Directory.GetAccessControl(System.String)">
+ <overloads>
+ <summary>
+ Gets a <see cref="T:System.Security.AccessControl.DirectorySecurity"/> object that encapsulates the access control list (ACL) entries for a specified directory.
+ </summary>
+ </overloads>
+ <summary>
+ Gets a <see cref="T:System.Security.AccessControl.DirectorySecurity"/> object that encapsulates the access control list (ACL) entries for the specified directory.
+ </summary>
+ <param name="path">The path to a directory containing a <see cref="T:System.Security.AccessControl.DirectorySecurity"/> object that describes the file's access control list (ACL) information.</param>
+ <returns>A <see cref="T:System.Security.AccessControl.DirectorySecurity"/> object that encapsulates the access control rules for the file described by the <paramref name="path"/> parameter.</returns>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.Directory.GetAccessControl(System.String,System.Security.AccessControl.AccessControlSections)">
+ <summary>
+ Gets a <see cref="T:System.Security.AccessControl.DirectorySecurity"/> object that encapsulates the specified type of access control list (ACL) entries for a particular directory.
+ </summary>
+ <param name="path">The path to a directory containing a <see cref="T:System.Security.AccessControl.DirectorySecurity"/> object that describes the directory's access control list (ACL) information.</param>
+ <param name="includeSections">One (or more) of the <see cref="T:System.Security.AccessControl.AccessControlSections"/> values that specifies the type of access control list (ACL) information to receive.</param>
+ <returns>A <see cref="T:System.Security.AccessControl.DirectorySecurity"/> object that encapsulates the access control rules for the directory described by the <paramref name="path"/> parameter. </returns>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.Directory.GetCreationTime(System.String)">
+ <overloads>
+ <summary>
+ Gets the creation date and time, in local time, of a directory.
+ </summary>
+ </overloads>
+ <summary>
+ Gets the creation date and time, in local time, of a directory.
+ </summary>
+ <param name="path">The path of the directory. </param>
+ <returns>A <see cref="T:System.DateTime"/> structure set to the creation date and time for the specified directory. This value is expressed in local time.</returns>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.Directory.GetCreationTimeUtc(System.String)">
+ <overloads>
+ <summary>
+ Gets the creation date and time, in Coordinated Universal Time (UTC) format, of a directory.
+ </summary>
+ </overloads>
+ <summary>
+ Gets the creation date and time, in Coordinated Universal Time (UTC) format, of a directory.
+ </summary>
+ <param name="path">The path of the directory. </param>
+ <returns>A <see cref="T:System.DateTime"/> structure set to the creation date and time for the specified directory. This value is expressed in UTC time.</returns>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.Directory.GetLastAccessTime(System.String)">
+ <overloads>
+ Returns the date and time the specified file or directory was last accessed.
+ </overloads>
+ <summary>
+ Returns the date and time the specified file or directory was last accessed.
+ </summary>
+ <param name="path">The file or directory for which to obtain creation date and time information. </param>
+ <returns>A <see cref="T:System.DateTime"/> structure set to the date and time that the specified file or directory was last accessed. This value is expressed in local time.</returns>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.Directory.GetLastAccessTimeUtc(System.String)">
+ <summary>
+ Returns the date and time, in coordinated universal time (UTC), that the specified file or directory was last accessed.
+ </summary>
+ <param name="path">The path.</param>
+ <returns>A <see cref="T:System.DateTime"/> structure set to the date and time that the specified file or directory was last accessed. This value is expressed in UTC time.</returns>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.Directory.GetLastWriteTime(System.String)">
+ <overloads>
+ Returns the date and time the specified file or directory was last written to.
+ </overloads>
+ <summary>
+ Returns the date and time the specified file or directory was last written to.
+ </summary>
+ <param name="path">The path.</param>
+ <returns>A <see cref="T:System.DateTime"/> structure set to the date and time that the specified file or directory was last written to. This value is expressed in local time.</returns>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.Directory.GetLastWriteTimeUtc(System.String)">
+ <overloads>
+ Returns the date and time, in coordinated universal time (UTC), that the specified file or directory was last written to.
+ </overloads>
+ <summary>
+ Returns the date and time, in coordinated universal time (UTC), that the specified file or directory was last written to.
+ </summary>
+ <param name="path">The file or directory for which to obtain write date and time information. </param>
+ <returns>A <see cref="T:System.DateTime"/> structure set to the date and time that the specified file or directory was last written. This value is expressed in UTC time.</returns>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.Directory.GetCreationTime(Alphaleonis.Win32.Filesystem.KernelTransaction,System.String)">
+ <summary>
+ Returns the creation date and time of the specified file or directory as part of a transaction.
+ </summary>
+ <param name="transaction">The transaction to use.</param>
+ <param name="path">The file or directory for which to obtain creation date and time information.</param>
+ <returns>
+ A <see cref="T:System.DateTime"/> structure set to the creation date and time for the specified file or directory. This value is expressed in local time.
+ </returns>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.Directory.GetCreationTimeUtc(Alphaleonis.Win32.Filesystem.KernelTransaction,System.String)">
+ <summary>
+ Returns the creation date and time, in coordinated universal time (UTC), of the specified file or directory as part of a transaction.
+ </summary>
+ <param name="path">The file or directory for which to obtain creation date and time information. </param>
+ <param name="transaction">The transaction to use.</param>
+ <returns>A <see cref="T:System.DateTime"/> structure set to the creation date and time for the specified file or directory. This value is expressed in UTC time.</returns>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.Directory.GetLastAccessTime(Alphaleonis.Win32.Filesystem.KernelTransaction,System.String)">
+ <summary>
+ Returns the date and time the specified file or directory was last accessed as part of a transaction.
+ </summary>
+ <param name="path">The file or directory for which to obtain creation date and time information. </param>
+ <param name="transaction">The transaction to use.</param>
+ <returns>A <see cref="T:System.DateTime"/> structure set to the date and time that the specified file or directory was last accessed. This value is expressed in local time.</returns>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.Directory.GetLastAccessTimeUtc(Alphaleonis.Win32.Filesystem.KernelTransaction,System.String)">
+ <summary>
+ Returns the date and time, in coordinated universal time (UTC), that the specified file or directory was last accessed as part of a transaction.
+ </summary>
+ <param name="path">The path.</param>
+ <returns>A <see cref="T:System.DateTime"/> structure set to the date and time that the specified file or directory was last accessed. This value is expressed in UTC time.</returns>
+ <param name="transaction">The transaction to use.</param>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.Directory.GetLastWriteTime(Alphaleonis.Win32.Filesystem.KernelTransaction,System.String)">
+ <summary>
+ Returns the date and time the specified file or directory was last written to as part of a transaction.
+ </summary>
+ <param name="path">The path.</param>
+ <param name="transaction">The transaction to use.</param>
+ <returns>A <see cref="T:System.DateTime"/> structure set to the date and time that the specified file or directory was last written to. This value is expressed in local time.</returns>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.Directory.GetLastWriteTimeUtc(Alphaleonis.Win32.Filesystem.KernelTransaction,System.String)">
+ <summary>
+ Returns the date and time, in coordinated universal time (UTC), that the specified file or directory was last written to as part of a transaction.
+ </summary>
+ <param name="path">The file or directory for which to obtain write date and time information. </param>
+ <param name="transaction">The transaction to use.</param>
+ <returns>A <see cref="T:System.DateTime"/> structure set to the date and time that the specified file or directory was last written. This value is expressed in UTC time.</returns>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.Directory.GetCurrentDirectory">
+ <summary>
+ Gets the current working directory of the application.
+ </summary>
+ <returns>A string containing the path of the current working directory.</returns>
+ <exception cref="T:System.UnauthorizedAccessException">The caller does not have the required permission.</exception>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.Directory.SetCurrentDirectory(System.String)">
+ <summary>
+ Sets the application's current working directory to the specified directory.
+ </summary>
+ <param name="path">The path to which the current working directory is set. </param>
+ <exception cref="T:System.IO.IOException">An IO error occurred.</exception>
+ <exception cref="T:System.ArgumentException"><paramref name="path"/> is a zero-length string, contains only white space, or contains one or more invalid characters as defined by InvalidPathChars.</exception>
+ <exception cref="T:System.ArgumentNullException"><paramref name="path"/> is <see langword="null"/></exception>
+ <exception cref="T:System.IO.PathTooLongException">The specified path, file name, or both exceed the system-defined maximum length. For example, on Windows-based platforms, paths must be less than 248 characters and file names must be less than 260 characters.</exception>
+ <exception cref="T:System.Security.SecurityException">The caller does not have the required permission to access unmanaged code.</exception>
+ <exception cref="T:System.IO.FileNotFoundException">The specified path was not found.</exception>
+ <exception cref="T:System.IO.DirectoryNotFoundException">The specified directory was not found.</exception>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.Directory.SetAccessControl(System.String,System.Security.AccessControl.DirectorySecurity,System.Security.AccessControl.AccessControlSections)">
+ <summary>
+ Applies access control list (ACL) entries described by a <see cref="T:System.Security.AccessControl.DirectorySecurity"/> DirectorySecurity object to the specified directory.
+ </summary>
+ <remarks>Note that unlike <see cref="M:System.IO.File.SetAccessControl(System.String,System.Security.AccessControl.FileSecurity)"/> this method does <b>not</b> automatically
+ determine what parts of the specified <see cref="T:System.Security.AccessControl.DirectorySecurity"/> instance has been modified. Instead, the
+ parameter <paramref name="includeSections"/> is used to specify what entries from <paramref name="DirectorySecurity"/> to
+ apply to <paramref name="path"/>.</remarks>
+ <param name="path">A directory to add or remove access control list (ACL) entries from.</param>
+ <param name="directorySecurity">A <see cref="T:System.Security.AccessControl.DirectorySecurity"/> object that describes an ACL entry to apply to the directory described by the <paramref name="path"/> parameter.</param>
+ <param name="includeSections">One or more of the <see cref="T:System.Security.AccessControl.AccessControlSections"/> values that specifies the type of access control
+ list (ACL) information to set.</param>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.Directory.Move(System.String,System.String)">
+ <overloads>
+ Moves a file or a directory and its contents to a new location.
+ </overloads>
+ <summary>
+ Moves a file or a directory and its contents to a new location.
+ </summary>
+ <param name="sourceDirName">The path of the file or directory to move. </param>
+ <param name="destDirName">The path to the new location for <paramref name="sourceDirName"/>. If <paramref name="sourceDirName"/> is a file, then <paramref name="destDirName"/> must also be a file name.</param>
+ <remarks>For more options, see the Move methods of <see cref="T:Alphaleonis.Win32.Filesystem.File"/>.</remarks>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.Directory.Move(Alphaleonis.Win32.Filesystem.KernelTransaction,System.String,System.String)">
+ <summary>
+ Moves a file or a directory and its contents to a new location as part of a transaction.
+ </summary>
+ <param name="transaction">The transaction.</param>
+ <param name="sourceDirName">The path of the file or directory to move.</param>
+ <param name="destDirName">The path to the new location for <paramref name="sourceDirName"/>. If <paramref name="sourceDirName"/> is a file, then <paramref name="destDirName"/> must also be a file name.</param>
+ <remarks>For more options, see the Move methods of <see cref="T:Alphaleonis.Win32.Filesystem.File"/>.</remarks>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.Directory.GetDirectories(System.String,System.String,System.IO.SearchOption)">
+ <overloads>
+ Gets an array of directories contained within a directory or drive.
+ </overloads>
+ <summary>
+ Gets an array of directories matching the specified search pattern from the current directory, using a value to determine whether to search subdirectories.
+ </summary>
+ <param name="path">The directory to search.</param>
+ <param name="searchPattern">The search string to match against the names of directories in <paramref ref="path"/>. The parameter cannot
+ end in two periods ("..") or contain two periods ("..") followed by <see cref="F:Alphaleonis.Win32.Filesystem.Path.DirectorySeparatorChar"/> or
+ <see cref="F:Alphaleonis.Win32.Filesystem.Path.AltDirectorySeparatorChar"/>, nor can it contain any of the characters in <see cref="M:Alphaleonis.Win32.Filesystem.Path.GetInvalidPathChars"/>.</param>
+ <param name="searchOption">One of the <see cref="T:System.IO.SearchOption"/> values that specifies whether the
+ search operation should include all subdirectories or only the current directory.</param>
+ <returns>
+ A String array of directories matching the search pattern. Directory names include the full path.
+ </returns>
+ <remarks>This method may consume a lot of memory if a large tree of files, directories and subdirectories
+ are searched. Consider using <see cref="T:Alphaleonis.Win32.Filesystem.FileSystemEntryEnumerator"/> instead if possible.</remarks>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.Directory.GetDirectories(System.String,System.String)">
+ <summary>
+ Gets an array of directories matching the specified search pattern from the current directory.
+ </summary>
+ <param name="path">The directory to search.</param>
+ <param name="searchPattern">The search string to match against the names of directories in <paramref ref="path"/>. The parameter cannot
+ end in two periods ("..") or contain two periods ("..") followed by <see cref="F:Alphaleonis.Win32.Filesystem.Path.DirectorySeparatorChar"/> or
+ <see cref="F:Alphaleonis.Win32.Filesystem.Path.AltDirectorySeparatorChar"/>, nor can it contain any of the characters in <see cref="M:Alphaleonis.Win32.Filesystem.Path.GetInvalidPathChars"/>.</param>
+ <returns>
+ A String array of directories matching the search pattern. Directory names include the full path.
+ </returns>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.Directory.GetDirectories(System.String)">
+ <summary>
+ Gets the names of subdirectories in the specified directory.
+ </summary>
+ <param name="path">The directory to search.</param>
+ <returns>
+ An array of type String containing the names of subdirectories in <paramref name="path"/>.
+ </returns>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.Directory.GetDirectories(Alphaleonis.Win32.Filesystem.KernelTransaction,System.String,System.String,System.IO.SearchOption)">
+ <summary>
+ Gets an array of directories matching the specified search pattern from the current directory,
+ using a value to determine whether to search subdirectories. The search is performed as part of a transaction.
+ </summary>
+ <param name="transaction">The transaction.</param>
+ <param name="path">The directory to search.</param>
+ <param name="searchPattern">The search string to match against the names of directories in <paramref ref="path"/>. The parameter cannot
+ end in two periods ("..") or contain two periods ("..") followed by <see cref="F:Alphaleonis.Win32.Filesystem.Path.DirectorySeparatorChar"/> or
+ <see cref="F:Alphaleonis.Win32.Filesystem.Path.AltDirectorySeparatorChar"/>, nor can it contain any of the characters in <see cref="M:Alphaleonis.Win32.Filesystem.Path.GetInvalidPathChars"/>.</param>
+ <param name="searchOption">One of the <see cref="T:System.IO.SearchOption"/> values that specifies whether the
+ search operation should include all subdirectories or only the current directory.</param>
+ <returns>
+ A String array of directories matching the search pattern. Directory names include the full path.
+ </returns>
+ <remarks>This method may consume a lot of memory if a large tree of files, directories and subdirectories
+ are searched. Consider using <see cref="T:Alphaleonis.Win32.Filesystem.FileSystemEntryEnumerator"/> instead if possible.</remarks>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.Directory.GetDirectories(Alphaleonis.Win32.Filesystem.KernelTransaction,System.String,System.String)">
+ <summary>
+ Gets an array of directories matching the specified search pattern from the current directory. The search is performed as part of a transaction.
+ </summary>
+ <param name="transaction">The transaction.</param>
+ <param name="path">The directory to search.</param>
+ <param name="searchPattern">The search string to match against the names of directories in <paramref ref="path"/>. The parameter cannot
+ end in two periods ("..") or contain two periods ("..") followed by <see cref="F:Alphaleonis.Win32.Filesystem.Path.DirectorySeparatorChar"/> or
+ <see cref="F:Alphaleonis.Win32.Filesystem.Path.AltDirectorySeparatorChar"/>, nor can it contain any of the characters in <see cref="M:Alphaleonis.Win32.Filesystem.Path.GetInvalidPathChars"/>.</param>
+ <returns>
+ A String array of directories matching the search pattern. Directory names include the full path.
+ </returns>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.Directory.GetDirectories(Alphaleonis.Win32.Filesystem.KernelTransaction,System.String)">
+ <summary>
+ Gets the names of subdirectories in the specified directory. The search is performed as part of a transaction.
+ </summary>
+ <param name="transaction">The transaction.</param>
+ <param name="path">The directory to search.</param>
+ <returns>
+ An array of type String containing the names of subdirectories in <paramref name="path"/>.
+ </returns>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.Directory.GetFiles(System.String,System.String,System.IO.SearchOption)">
+ <overloads>
+ Retrieves the names of files contained within a directory.
+ </overloads>
+ <summary>
+ Returns the names of files in the specified directory that match the specified search pattern, using a
+ value to determine whether to search subdirectories.
+ </summary>
+ <param name="path">The directory to search. </param>
+ <param name="searchPattern">The search string to match against the names of files in path. The parameter cannot
+ end in two periods ("..") or contain two periods ("..") followed by <see cref="F:Alphaleonis.Win32.Filesystem.Path.DirectorySeparatorChar"/> or
+ <see cref="F:Alphaleonis.Win32.Filesystem.Path.AltDirectorySeparatorChar"/>, nor can it contain any of the characters in <see cref="M:Alphaleonis.Win32.Filesystem.Path.GetInvalidPathChars"/>.</param>
+ <param name="searchOption">One of the <see cref="T:System.IO.SearchOption"/> values that specifies whether the
+ search operation should include all subdirectories or only the current directory.</param>
+ <returns>A String array containing the names of files in the specified
+ directory that match the specified search pattern. File names include the full path.</returns>
+ <remarks>This method may consume a lot of memory if a large tree of files, directories and subdirectories
+ are searched. Consider using <see cref="T:Alphaleonis.Win32.Filesystem.FileSystemEntryEnumerator"/> instead if possible.</remarks>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.Directory.GetFiles(System.String,System.String)">
+ <summary>
+ Returns the names of files in the specified directory that match the specified search pattern.
+ </summary>
+ <param name="path">The directory to search. </param>
+ <param name="searchPattern">The search string to match against the names of files in path. The parameter cannot
+ end in two periods ("..") or contain two periods ("..") followed by <see cref="F:Alphaleonis.Win32.Filesystem.Path.DirectorySeparatorChar"/> or
+ <see cref="F:Alphaleonis.Win32.Filesystem.Path.AltDirectorySeparatorChar"/>, nor can it contain any of the characters in <see cref="M:Alphaleonis.Win32.Filesystem.Path.GetInvalidPathChars"/>.</param>
+ <returns>A String array containing the names of files in the specified directory that match the specified search pattern.</returns>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.Directory.GetFiles(System.String)">
+ <summary>
+ Returns the names of files in the specified directory.
+ </summary>
+ <param name="path">The directory from which to retrieve the files.</param>
+ <returns>A String array of file names in the specified directory.</returns>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.Directory.GetFiles(Alphaleonis.Win32.Filesystem.KernelTransaction,System.String,System.String,System.IO.SearchOption)">
+ <summary>
+ Returns the names of files in the specified directory that match the specified search pattern, using a
+ value to determine whether to search subdirectories. The search will be performed as part of a transaction.
+ </summary>
+ <param name="transaction">The transaction.</param>
+ <param name="path">The directory to search.</param>
+ <param name="searchPattern">The search string to match against the names of files in path. The parameter cannot
+ end in two periods ("..") or contain two periods ("..") followed by <see cref="F:Alphaleonis.Win32.Filesystem.Path.DirectorySeparatorChar"/> or
+ <see cref="F:Alphaleonis.Win32.Filesystem.Path.AltDirectorySeparatorChar"/>, nor can it contain any of the characters in <see cref="M:Alphaleonis.Win32.Filesystem.Path.GetInvalidPathChars"/>.</param>
+ <param name="searchOption">One of the <see cref="T:System.IO.SearchOption"/> values that specifies whether the
+ search operation should include all subdirectories or only the current directory.</param>
+ <returns>
+ A String array containing the names of files in the specified
+ directory that match the specified search pattern. File names include the full path.
+ </returns>
+ <remarks>This method may consume a lot of memory if a large tree of files, directories and subdirectories
+ are searched. Consider using <see cref="T:Alphaleonis.Win32.Filesystem.FileSystemEntryEnumerator"/> instead if possible.</remarks>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.Directory.GetFiles(Alphaleonis.Win32.Filesystem.KernelTransaction,System.String,System.String)">
+ <summary>
+ Returns the names of files in the specified directory that match the specified search pattern. The search will be performed as part of a transaction.
+ </summary>
+ <param name="transaction">The transaction.</param>
+ <param name="path">The directory to search.</param>
+ <param name="searchPattern">The search string to match against the names of files in path. The parameter cannot
+ end in two periods ("..") or contain two periods ("..") followed by <see cref="F:Alphaleonis.Win32.Filesystem.Path.DirectorySeparatorChar"/> or
+ <see cref="F:Alphaleonis.Win32.Filesystem.Path.AltDirectorySeparatorChar"/>, nor can it contain any of the characters in <see cref="M:Alphaleonis.Win32.Filesystem.Path.GetInvalidPathChars"/>.</param>
+ <returns>
+ A String array containing the names of files in the specified directory that match the specified search pattern.
+ </returns>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.Directory.GetFiles(Alphaleonis.Win32.Filesystem.KernelTransaction,System.String)">
+ <summary>
+ Returns the names of files in the specified directory. The search will be performed as part of a transaction.
+ </summary>
+ <param name="transaction">The transaction.</param>
+ <param name="path">The directory from which to retrieve the files.</param>
+ <returns>
+ A String array of file names in the specified directory.
+ </returns>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.Directory.GetDirectoryRoot(System.String)">
+ <summary>
+ Returns the volume information, root information, or both for the specified path.
+ </summary>
+ <param name="path">The path of a file or directory. </param>
+ <returns>A string containing the volume information, root information, or both for the specified path.</returns>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.Directory.GetFileSystemEntries(System.String,System.String)">
+ <summary>
+ Returns an array of file system entries matching the specified search criteria.
+ </summary>
+ <param name="path">The directory for which file and subdirectory names are returned.</param>
+ <param name="searchPattern">The search string to match against the names of files in path.
+ The <paramref name="searchPattern"/> parameter cannot end in two periods ("..") or
+ contain two periods ("..") followed by <see cref="F:Alphaleonis.Win32.Filesystem.Path.DirectorySeparatorChar"/> or
+ <see cref="F:Alphaleonis.Win32.Filesystem.Path.AltDirectorySeparatorChar"/>, nor can it contain any of the characters in
+ <see cref="M:Alphaleonis.Win32.Filesystem.Path.GetInvalidPathChars"/>.</param>
+ <returns>
+ A String array containing the names of file system entries matching the specified pattern
+ in the specified directory.
+ </returns>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.Directory.GetFileSystemEntries(Alphaleonis.Win32.Filesystem.KernelTransaction,System.String,System.String)">
+ <summary>
+ Returns an array of file system entries matching the specified search criteria.
+ The file system entries are retrieved as part of a transaction.
+ </summary>
+ <param name="transaction">The transaction.</param>
+ <param name="path">The directory for which file and subdirectory names are returned.</param>
+ <param name="searchPattern">The search string to match against the names of files in path.
+ The <paramref name="searchPattern"/> parameter cannot end in two periods ("..") or
+ contain two periods ("..") followed by <see cref="F:Alphaleonis.Win32.Filesystem.Path.DirectorySeparatorChar"/> or
+ <see cref="F:Alphaleonis.Win32.Filesystem.Path.AltDirectorySeparatorChar"/>, nor can it contain any of the characters in
+ <see cref="M:Alphaleonis.Win32.Filesystem.Path.GetInvalidPathChars"/>.</param>
+ <returns>
+ A String array containing the names of file system entries matching the specified pattern
+ in the specified directory.
+ </returns>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.Directory.GetFileSystemEntries(System.String)">
+ <summary>
+ Returns the names of all files and subdirectories in the specified directory.
+ </summary>
+ <param name="path">The directory for which file and subdirectory names are returned.</param>
+ <returns>
+ A String array containing the names of file system entries in the specified directory.
+ </returns>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.Directory.GetFileSystemEntries(Alphaleonis.Win32.Filesystem.KernelTransaction,System.String)">
+ <summary>
+ Returns the names of all files and subdirectories in the specified directory.
+ The file system entries are retrieved as part of a transaction.
+ </summary>
+ <param name="transaction">The transaction.</param>
+ <param name="path">The directory for which file and subdirectory names are returned.</param>
+ <returns>
+ A String array containing the names of file system entries in the specified directory.
+ </returns>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.Directory.GetFullFileSystemEntries(System.String)">
+ <overloads>
+ Enumerates file system entries contained in a specified path as <see cref="T:Alphaleonis.Win32.Filesystem.FileSystemEntryInfo"/> instances.
+ </overloads>
+ <summary>
+ Enumerates all file system entries as <see cref="T:Alphaleonis.Win32.Filesystem.FileSystemEntryInfo"/> instances
+ in the specified <paramref name="path"/>.
+ </summary>
+ <remarks>This is a convenience method for using the <see cref="T:Alphaleonis.Win32.Filesystem.FileSystemEntryEnumerator"/> for enumeration.</remarks>
+ <param name="path">The directory or path containing the file system entries to enumerate.</param>
+ <returns>An enumerable containing the file system entries for the specified <paramref name="path"/></returns>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.Directory.GetFullFileSystemEntries(System.String,System.String)">
+ <summary>
+ Enumerates the file system entries in the specified <paramref name="path"/> matching
+ the specified <paramref name="searchPattern"/> as <see cref="T:Alphaleonis.Win32.Filesystem.FileSystemEntryInfo"/> instances.
+ </summary>
+ <remarks>This is a convenience method for using the <see cref="T:Alphaleonis.Win32.Filesystem.FileSystemEntryEnumerator"/> for enumeration.</remarks>
+ <param name="path">The directory or path, and the file name, which can include
+ wildcard characters, for example, an asterisk (*) or a question mark (?).</param>
+ <param name="searchPattern">The search string to match against the names of files in path.
+ The <paramref name="searchPattern"/> parameter cannot end in two periods ("..") or
+ contain two periods ("..") followed by <see cref="F:Alphaleonis.Win32.Filesystem.Path.DirectorySeparatorChar"/> or
+ <see cref="F:Alphaleonis.Win32.Filesystem.Path.AltDirectorySeparatorChar"/>, nor can it contain any of the characters in
+ <see cref="M:Alphaleonis.Win32.Filesystem.Path.GetInvalidPathChars"/>.</param>
+ <returns>An enumerable containing the file system entries for the specified <paramref name="path"/></returns>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.Directory.GetFullFileSystemEntries(System.String,System.Boolean)">
+ <summary>
+ Enumerates all file system entries as <see cref="T:Alphaleonis.Win32.Filesystem.FileSystemEntryInfo"/> instances
+ in the specified <paramref name="path"/>, optionally enumerating
+ directories only.
+ </summary>
+ <remarks>This is a convenience method for using the <see cref="T:Alphaleonis.Win32.Filesystem.FileSystemEntryEnumerator"/> for enumeration.</remarks>
+ <param name="path">The directory or path, and the file name, which can include
+ wildcard characters, for example, an asterisk (*) or a question mark (?).</param>
+ <param name="directoriesOnly">if set to <c>true</c> enumerate only directories.</param>
+ <returns>An enumerable containing the file system entries for the specified <paramref name="path"/></returns>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.Directory.GetFullFileSystemEntries(System.String,System.String,System.Boolean)">
+ <summary>
+ Enumerates the file system entries in the specified <paramref name="path"/> matching
+ the specified <paramref name="searchPattern"/> as <see cref="T:Alphaleonis.Win32.Filesystem.FileSystemEntryInfo"/> instances,
+ optionally enumerating directories only.
+ </summary>
+ <remarks>This is a convenience method for using the <see cref="T:Alphaleonis.Win32.Filesystem.FileSystemEntryEnumerator"/> for enumeration.</remarks>
+ <param name="path">The directory or path, and the file name, which can include
+ wildcard characters, for example, an asterisk (*) or a question mark (?).</param>
+ <param name="directoriesOnly">if set to <c>true</c> enumerate only directories.</param>
+ <param name="searchPattern">The search string to match against the names of files in path.
+ The <paramref name="searchPattern"/> parameter cannot end in two periods ("..") or
+ contain two periods ("..") followed by <see cref="F:Alphaleonis.Win32.Filesystem.Path.DirectorySeparatorChar"/> or
+ <see cref="F:Alphaleonis.Win32.Filesystem.Path.AltDirectorySeparatorChar"/>, nor can it contain any of the characters in
+ <see cref="M:Alphaleonis.Win32.Filesystem.Path.GetInvalidPathChars"/>.</param>
+ <returns>An enumerable containing the file system entries for the specified <paramref name="path"/></returns>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.Directory.GetFullFileSystemEntries(Alphaleonis.Win32.Filesystem.KernelTransaction,System.String)">
+ <summary>
+ Enumerates all file system entries as <see cref="T:Alphaleonis.Win32.Filesystem.FileSystemEntryInfo"/> instances
+ in the specified <paramref name="path"/> as part of a transaction.
+ </summary>
+ <param name="transaction">The transaction.</param>
+ <param name="path">The directory or path containing the file system entries to enumerate.</param>
+ <returns>
+ An enumerable containing the file system entries for the specified <paramref name="path"/>
+ </returns>
+ <remarks>This is a convenience method for using the <see cref="T:Alphaleonis.Win32.Filesystem.FileSystemEntryEnumerator"/> for enumeration.</remarks>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.Directory.GetFullFileSystemEntries(Alphaleonis.Win32.Filesystem.KernelTransaction,System.String,System.String)">
+ <summary>
+ Enumerates the file system entries in the specified <paramref name="path"/> matching
+ the specified <paramref name="searchPattern"/> as <see cref="T:Alphaleonis.Win32.Filesystem.FileSystemEntryInfo"/> instances as part
+ of a transaction.
+ </summary>
+ <param name="transaction">The transaction.</param>
+ <param name="path">The directory or path, and the file name, which can include
+ wildcard characters, for example, an asterisk (*) or a question mark (?).</param>
+ <param name="searchPattern">The search string to match against the names of files in path.
+ The <paramref name="searchPattern"/> parameter cannot end in two periods ("..") or
+ contain two periods ("..") followed by <see cref="F:Alphaleonis.Win32.Filesystem.Path.DirectorySeparatorChar"/> or
+ <see cref="F:Alphaleonis.Win32.Filesystem.Path.AltDirectorySeparatorChar"/>, nor can it contain any of the characters in
+ <see cref="M:Alphaleonis.Win32.Filesystem.Path.GetInvalidPathChars"/>.</param>
+ <returns>
+ An enumerable containing the file system entries for the specified <paramref name="path"/>
+ </returns>
+ <remarks>This is a convenience method for using the <see cref="T:Alphaleonis.Win32.Filesystem.FileSystemEntryEnumerator"/> for enumeration.</remarks>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.Directory.GetFullFileSystemEntries(Alphaleonis.Win32.Filesystem.KernelTransaction,System.String,System.Boolean)">
+ <summary>
+ Enumerates all file system entries as <see cref="T:Alphaleonis.Win32.Filesystem.FileSystemEntryInfo"/> instances
+ in the specified <paramref name="path"/> as part of a transaction, optionally enumerating
+ directories only.
+ </summary>
+ <param name="transaction">The transaction.</param>
+ <param name="path">The directory or path, and the file name, which can include
+ wildcard characters, for example, an asterisk (*) or a question mark (?).</param>
+ <param name="directoriesOnly">if set to <c>true</c> enumerate only directories.</param>
+ <returns>
+ An enumerable containing the file system entries for the specified <paramref name="path"/>
+ </returns>
+ <remarks>This is a convenience method for using the <see cref="T:Alphaleonis.Win32.Filesystem.FileSystemEntryEnumerator"/> for enumeration.</remarks>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.Directory.GetFullFileSystemEntries(Alphaleonis.Win32.Filesystem.KernelTransaction,System.String,System.String,System.Boolean)">
+ <summary>
+ Enumerates the file system entries in the specified <paramref name="path"/> matching
+ the specified <paramref name="searchPattern"/> as <see cref="T:Alphaleonis.Win32.Filesystem.FileSystemEntryInfo"/> instances as part
+ of a transaction, optionally enumerating directories only.
+ </summary>
+ <param name="transaction">The transaction.</param>
+ <param name="path">The directory or path, and the file name, which can include
+ wildcard characters, for example, an asterisk (*) or a question mark (?).</param>
+ <param name="searchPattern">The search string to match against the names of files in path.
+ The <paramref name="searchPattern"/> parameter cannot end in two periods ("..") or
+ contain two periods ("..") followed by <see cref="F:Alphaleonis.Win32.Filesystem.Path.DirectorySeparatorChar"/> or
+ <see cref="F:Alphaleonis.Win32.Filesystem.Path.AltDirectorySeparatorChar"/>, nor can it contain any of the characters in
+ <see cref="M:Alphaleonis.Win32.Filesystem.Path.GetInvalidPathChars"/>.</param>
+ <param name="directoriesOnly">if set to <c>true</c> enumerate only directories.</param>
+ <returns>
+ An enumerable containing the file system entries for the specified <paramref name="path"/>
+ </returns>
+ <remarks>This is a convenience method for using the <see cref="T:Alphaleonis.Win32.Filesystem.FileSystemEntryEnumerator"/> for enumeration.</remarks>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.Directory.GetParent(System.String)">
+ <summary>
+ Retrieves the parent directory of the specified path, including both absolute and relative paths.
+ </summary>
+ <param name="path">The path for which to retrieve the parent directory.</param>
+ <returns>The parent directory or a <see langword="null"/> reference if the path is the root.</returns>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.Directory.EnableEncryption(System.String)">
+ <summary>
+ Enables encryption of the specified directory and the files in it. It does not affect encryption of subdirectories below the indicated directory.
+ </summary>
+ <param name="directory">The name of the directory for which to enable encryption.</param>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.Directory.DisableEncryption(System.String)">
+ <summary>
+ Disables encryption of the specified directory and the files in it. It does not affect encryption of subdirectories below the indicated directory.
+ </summary>
+ <param name="directory">The name of the directory for which to disable encryption.</param>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.Directory.CreateDirectoryInternal(System.String,System.String,System.Security.AccessControl.DirectorySecurity)">
+ <summary>
+ Creates a new directory with the attributes of a specified template directory (if one is specified).
+ If the underlying file system supports security on files and directories, the function
+ applies the specified security descriptor to the new directory. The new directory retains
+ the other attributes of the specified template directory.
+ </summary>
+ <param name="templatePathName">The path of the directory to use as a template when creating the new directory. May be <see langword="null"/> to indicate
+ that no template should be used.</param>
+ <param name="newPathName">The path of the directory to be created.</param>
+ <param name="security">The security descriptor to apply to the newly created directory. May be <see langword="null"/> in which case a default
+ security descriptor will be applied.</param>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.Directory.GetFilesOrDirectoriesInternal(Alphaleonis.Win32.Filesystem.KernelTransaction,System.String,System.String,System.IO.SearchOption,System.Boolean)">
+ <summary>
+ Gets the files or directories for use with <see cref="M:GetFiles"/> or <see cref="M:GetDirectories"/>.
+ </summary>
+ <param name="transaction">The transaction (or null to work untransacted).</param>
+ <param name="path">The path.</param>
+ <param name="searchPattern">The search pattern.</param>
+ <param name="searchOption">The search option.</param>
+ <param name="directories">if set to <c>true</c> only directories will be included, if <c>false</c> only files will be included.</param>
+ <returns>An array with all the requested entries.</returns>
+ </member>
+ <member name="T:Alphaleonis.Win32.Filesystem.AlreadyExistsException">
+ <summary>
+ The exception that is thrown when an attempt to create a directory or file that already exists was made.
+ </summary>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.AlreadyExistsException.#ctor">
+ <summary>
+ Initializes a new instance of the <see cref="T:Alphaleonis.Win32.Filesystem.AlreadyExistsException"/> class.
+ </summary>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.AlreadyExistsException.#ctor(System.String)">
+ <summary>
+ Initializes a new instance of the <see cref="T:Alphaleonis.Win32.Filesystem.AlreadyExistsException"/> class.
+ </summary>
+ <param name="message">The message.</param>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.AlreadyExistsException.#ctor(System.String,System.String)">
+ <summary>
+ Initializes a new instance of the <see cref="T:Alphaleonis.Win32.Filesystem.AlreadyExistsException"/> class.
+ </summary>
+ <param name="message">The message.</param>
+ <param name="path">The path.</param>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.AlreadyExistsException.#ctor(System.String,System.Exception)">
+ <summary>
+ Initializes a new instance of the <see cref="T:Alphaleonis.Win32.Filesystem.AlreadyExistsException"/> class.
+ </summary>
+ <param name="message">The message.</param>
+ <param name="innerException">The inner exception.</param>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.AlreadyExistsException.#ctor(System.String,System.String,System.Exception)">
+ <summary>
+ Initializes a new instance of the <see cref="T:Alphaleonis.Win32.Filesystem.AlreadyExistsException"/> class.
+ </summary>
+ <param name="message">The message.</param>
+ <param name="path">The path.</param>
+ <param name="innerException">The inner exception.</param>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.AlreadyExistsException.#ctor(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">
+ <summary>
+ Initializes a new instance of the <see cref="T:Alphaleonis.Win32.Filesystem.AlreadyExistsException"/> class.
+ </summary>
+ <param name="info">The data for serializing or deserializing the object.</param>
+ <param name="context">The source and destination for the object.</param>
+ </member>
+ <member name="T:Alphaleonis.Win32.Filesystem.FileType">
+ <summary>
+ Specifies the type of a file.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Filesystem.FileType.Unknown">
+ <summary>
+ The type of the specified file is unknown.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Filesystem.FileType.DiskFile">
+ <summary>
+ The specified file is a disk file.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Filesystem.FileType.CharacterFile">
+ <summary>
+ The specified file is a character file, typically an LPT device or a console.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Filesystem.FileType.Pipe">
+ <summary>
+ The specified file is a socket, a named pipe, or an anonymous pipe.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Filesystem.FileType.Remote">
+ <summary>
+ Unused.
+ </summary>
+ </member>
+ <member name="T:Alphaleonis.Win32.Filesystem.CopyProgressResult">
+ <summary>
+ The <see cref="T:Alphaleonis.Win32.Filesystem.CopyProgressRoutine"/> function should return one of the following values.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Filesystem.CopyProgressResult.Continue">
+ <summary>
+ Continue the copy operation.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Filesystem.CopyProgressResult.Cancel">
+ <summary>
+ Cancel the copy operation and delete the destination file.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Filesystem.CopyProgressResult.Stop">
+ <summary>
+ Stop the copy operation. It can be restarted at a later time.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Filesystem.CopyProgressResult.Quiet">
+ <summary>
+ Continue the copy operation, but stop invoking <see cref="T:Alphaleonis.Win32.Filesystem.CopyProgressRoutine"/> to report progress.
+ </summary>
+ </member>
+ <member name="T:Alphaleonis.Win32.Filesystem.NativeMethods.SecurityAttributes">
+ <summary>
+ Class used to represent the SECURITY_ATTRIBUES native win32 structure.
+ It provides initialization function from an ObjectSecurity object.
+ </summary>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.NativeMethods.SecurityAttributes.Initialize(Alphaleonis.Win32.SafeGlobalMemoryBufferHandle@,System.Security.AccessControl.ObjectSecurity)">
+ <summary>
+ Initializes the SecurityAttributes structure from an instance of <see cref="T:System.Security.AccessControl.ObjectSecurity"/>.
+ </summary>
+ <param name="memoryHandle">A handle that will refer to the memory allocated by this object for storage of the
+ security descriptor. As long as this object is used, the memory handle should be kept alive, and afterwards it
+ should be disposed as soon as possible.</param>
+ <param name="securityDescriptor">The security descriptor to assign to this object. This parameter may be <see langword="null"/>.</param>
+ </member>
+ <member name="T:Alphaleonis.Win32.Filesystem.MoveFileOptions">
+ <summary>
+ The move options for a file move operation.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Filesystem.MoveFileOptions.ReplaceExisting">
+ <summary>
+ If the destination file name already exists, the function replaces its contents with the contents of the
+ source file.
+ </summary>
+ <remark>This value cannot be used if either source or destination names a directory.</remark>
+ </member>
+ <member name="F:Alphaleonis.Win32.Filesystem.MoveFileOptions.CopyAllowed">
+ <summary>
+ If the file is to be moved to a different volume, the function simulates the move by using the CopyFile and DeleteFile functions.
+ </summary>
+ <remarks>This value cannot be used with <see cref="F:Alphaleonis.Win32.Filesystem.MoveFileOptions.DelayUntilReboot"/>.</remarks>
+ </member>
+ <member name="F:Alphaleonis.Win32.Filesystem.MoveFileOptions.DelayUntilReboot">
+ <summary>
+ <para>The system does not move the file until the operating system is restarted. The system moves the file immediately after AUTOCHK is executed, but before creating any paging files. Consequently, this parameter enables the function to delete paging files from previous startups.</para>
+ <para>This value can only be used if the process is in the context of a user who belongs to the administrators group or the LocalSystem account.</para>
+ </summary>
+ <remarks>This value cannot be used with <see cref="F:Alphaleonis.Win32.Filesystem.MoveFileOptions.CopyAllowed"/>.</remarks>
+ </member>
+ <member name="F:Alphaleonis.Win32.Filesystem.MoveFileOptions.WriteThrough">
+ <summary>
+ <para>The function does not return until the file has actually been moved on the disk.</para>
+ <para>Setting this value guarantees that a move performed as a copy and delete operation is flushed
+ to disk before the function returns. The flush occurs at the end of the copy operation.</para>
+ </summary>
+ <remarks>This value has no effect if <see cref="F:Alphaleonis.Win32.Filesystem.MoveFileOptions.DelayUntilReboot"/> is set.</remarks>
+ </member>
+ <member name="F:Alphaleonis.Win32.Filesystem.MoveFileOptions.CreateHardlink">
+ <summary>
+ Reserved for future use.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Filesystem.MoveFileOptions.FailIfNotTrackable">
+ <summary>
+ The function fails if the source file is a link source, but the file cannot be tracked after the move.
+ This situation can occur if the destination is a volume formatted with the FAT file system.
+ </summary>
+ </member>
+ <member name="T:Alphaleonis.Win32.Filesystem.IllegalPathException">
+ <summary>
+ The exception that is thrown when a pathname or filename is illegal.
+ </summary>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.IllegalPathException.#ctor">
+ <summary>
+ Initializes a new instance of the <see cref="T:Alphaleonis.Win32.Filesystem.IllegalPathException"/> class.
+ </summary>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.IllegalPathException.#ctor(System.String)">
+ <summary>
+ Initializes a new instance of the <see cref="T:Alphaleonis.Win32.Filesystem.IllegalPathException"/> class.
+ </summary>
+ <param name="path">The path.</param>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.IllegalPathException.#ctor(System.String,System.Exception)">
+ <summary>
+ Initializes a new instance of the <see cref="T:Alphaleonis.Win32.Filesystem.IllegalPathException"/> class.
+ </summary>
+ <param name="path">The path.</param>
+ <param name="innerException">The inner exception.</param>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.IllegalPathException.#ctor(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">
+ <summary>
+ Initializes a new instance of the <see cref="T:Alphaleonis.Win32.Filesystem.IllegalPathException"/> class.
+ </summary>
+ <param name="info">The data for serializing or deserializing the object.</param>
+ <param name="context">The source and destination for the object.</param>
+ </member>
+ <member name="T:Alphaleonis.Win32.Filesystem.CopyProgressCallbackReason">
+ <summary>
+ The reason that <see cref="T:Alphaleonis.Win32.Filesystem.CopyProgressRoutine"/> was called.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Filesystem.CopyProgressCallbackReason.ChunkFinished">
+ <summary>
+ Another part of the data file was copied.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Filesystem.CopyProgressCallbackReason.StreamSwitch">
+ <summary>
+ Another stream was created and is about to be copied. This is the callback reason given when the callback routine is first invoked.
+ </summary>
+ </member>
+ <member name="T:Alphaleonis.Win32.Filesystem.KernelTransaction">
+ <summary>
+ A KTM transaction object for use with the transacted operations in <see cref="N:Alphaleonis.Win32.Filesystem"/>
+ </summary>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.KernelTransaction.#ctor(System.Transactions.Transaction)">
+ <summary>
+ Initializes a new instance of the <see cref="T:Alphaleonis.Win32.Filesystem.KernelTransaction"/> class, internally using the
+ specified <see cref="T:System.Transactions.Transaction"/>. This method allows the usage of methods accepting a
+ <see cref="T:Alphaleonis.Win32.Filesystem.KernelTransaction"/> with an instance of <see cref="T:System.Transactions.Transaction"/>.
+ </summary>
+ <param name="transaction">The transaction to use for any transactional operations.</param>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.KernelTransaction.#ctor">
+ <summary>
+ Initializes a new instance of the <see cref="T:Alphaleonis.Win32.Filesystem.KernelTransaction"/> class with a default security descriptor,
+ infinite timeout and no description.
+ </summary>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.KernelTransaction.#ctor(System.UInt32,System.String)">
+ <summary>
+ Initializes a new instance of the <see cref="T:Alphaleonis.Win32.Filesystem.KernelTransaction"/> class with a default security descriptor.
+ </summary>
+ <param name="timeout"><para>The time, in milliseconds, when the transaction will be aborted if it has not already reached the prepared state.</para></param>
+ <param name="description">A user-readable description of the transaction. May be <c>null.</c></param>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.KernelTransaction.#ctor(System.Security.AccessControl.ObjectSecurity,System.UInt32,System.String)">
+ <summary>
+ Initializes a new instance of the <see cref="T:Alphaleonis.Win32.Filesystem.KernelTransaction"/> class.
+ </summary>
+ <param name="securityDescriptor">The security descriptor.</param>
+ <param name="timeout"><para>The time, in milliseconds, when the transaction will be aborted if it has not already reached the prepared state.</para>
+ <para>Specify <c>0</c> to provide an infinite timeout.</para></param>
+ <param name="description">A user-readable description of the transaction. May be <c>null.</c></param>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.KernelTransaction.Commit">
+ <summary>
+ Requests that the specified transaction be committed.
+ </summary>
+ <exception cref="T:Alphaleonis.Win32.Filesystem.TransactionAlreadyCommittedException">The transaction was already committed.</exception>
+ <exception cref="T:Alphaleonis.Win32.Filesystem.TransactionAlreadyAbortedException">The transaction was already aborted.</exception>
+ <exception cref="T:System.ComponentModel.Win32Exception">An error occured</exception>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.KernelTransaction.Rollback">
+ <summary>
+ Requests that the specified transaction be rolled back. This function is synchronous.
+ </summary>
+ <exception cref="T:Alphaleonis.Win32.Filesystem.TransactionAlreadyCommittedException">The transaction was already committed.</exception>
+ <exception cref="T:System.ComponentModel.Win32Exception">An error occured</exception>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.KernelTransaction.Dispose">
+ <summary>
+ Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources.
+ </summary>
+ </member>
+ <member name="P:Alphaleonis.Win32.Filesystem.KernelTransaction.SafeHandle">
+ <summary>
+ Gets the safe handle.
+ </summary>
+ <value>The safe handle.</value>
+ </member>
+ <member name="T:Alphaleonis.Win32.SafeGlobalMemoryBufferHandle">
+ <summary>
+ IntPtr wrapper which can be used as result of
+ Marshal.AllocHGlobal operation.
+ Calls Marshal.FreeHGlobal when disposed or finalized.
+ </summary>
+ </member>
+ <member name="M:Alphaleonis.Win32.SafeGlobalMemoryBufferHandle.#ctor">
+ <summary>
+ Creates new instance with zero IntPtr
+ </summary>
+ </member>
+ <member name="M:Alphaleonis.Win32.SafeGlobalMemoryBufferHandle.#ctor(System.Int32)">
+ <summary>
+ Creates new instance which allocates unmanaged memory of given size
+ Can throw OutOfMemoryException
+ </summary>
+ </member>
+ <member name="M:Alphaleonis.Win32.SafeGlobalMemoryBufferHandle.CopyFrom(System.Byte[],System.Int32,System.Int32)">
+ <summary>
+ Copies data from a one-dimensional, managed 8-bit unsigned integer array to the unmanaged memory pointer referenced by this instance-
+ </summary>
+ <param name="source">The one-dimensional array to copy from. </param>
+ <param name="startIndex">The zero-based index into the array where Copy should start.</param>
+ <param name="length">The number of array elements to copy.</param>
+ </member>
+ <member name="M:Alphaleonis.Win32.SafeGlobalMemoryBufferHandle.ReleaseHandle">
+ <summary>
+ Called when object is disposed or finalized.
+ </summary>
+ </member>
+ <member name="T:Alphaleonis.Win32.Filesystem.NotAReparsePointException">
+ <summary>
+ The file or directory was not a reparse point.
+ </summary>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.NotAReparsePointException.#ctor">
+ <summary>
+ Initializes a new instance of the <see cref="T:Alphaleonis.Win32.Filesystem.NotAReparsePointException"/> class.
+ </summary>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.NotAReparsePointException.#ctor(System.String)">
+ <summary>
+ Initializes a new instance of the <see cref="T:Alphaleonis.Win32.Filesystem.NotAReparsePointException"/> class.
+ </summary>
+ <param name="message">The message.</param>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.NotAReparsePointException.#ctor(System.String,System.Exception)">
+ <summary>
+ Initializes a new instance of the <see cref="T:Alphaleonis.Win32.Filesystem.NotAReparsePointException"/> class.
+ </summary>
+ <param name="message">The message.</param>
+ <param name="innerException">The inner exception.</param>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.NotAReparsePointException.#ctor(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">
+ <summary>
+ Initializes a new instance of the <see cref="T:Alphaleonis.Win32.Filesystem.NotAReparsePointException"/> class.
+ </summary>
+ <param name="info">The info.</param>
+ <param name="context">The context.</param>
+ </member>
+ <member name="T:Alphaleonis.Win32.Filesystem.FileOptions">
+ <summary>
+ Specifies how the operating system should open a file.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Filesystem.FileOptions.None">
+ <summary>
+ None of the options specified.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Filesystem.FileOptions.Archive">
+ <summary>
+ The file should be archived. Applications use this attribute to mark files for backup or removal.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Filesystem.FileOptions.Encrypted">
+ <summary>
+ The file or directory is encrypted. For a file, this means that all data in the file is encrypted. For a directory, this means that encryption is the default for newly created files and subdirectories.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Filesystem.FileOptions.Hidden">
+ <summary>
+ The file is hidden. Do not include it in an ordinary directory listing.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Filesystem.FileOptions.Normal">
+ <summary>
+ The file does not have other attributes set. This attribute is valid only if used alone.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Filesystem.FileOptions.Offline">
+ <summary>
+ The data of a file is not immediately available. This attribute indicates that file data is physically moved to offline storage. This attribute is used by Remote Storage, the hierarchical storage management software. Applications should not arbitrarily change this attribute.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Filesystem.FileOptions.ReadOnly">
+ <summary>
+ The file is read only. Applications can read the file, but cannot write to or delete it.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Filesystem.FileOptions.System">
+ <summary>
+ The file is part of or used exclusively by an operating system.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Filesystem.FileOptions.Temporary">
+ <summary>
+ The file is being used for temporary storage.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Filesystem.FileOptions.BackupSemantics">
+ <summary>
+ The file is being opened or created for a backup or restore operation. The system ensures that the calling process
+ overrides file security checks when the process has SE_BACKUP_NAME and SE_RESTORE_NAME privileges.
+ You must set this flag to obtain a handle to a directory. A directory handle can be passed to some functions instead of a file handle.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Filesystem.FileOptions.DeleteOnClose">
+ <summary>
+ <para>The file is to be deleted immediately after all of its handles are closed, which includes the specified handle and any other open or duplicated handles.</para>
+ <para>If there are existing open handles to a file, the call fails unless they were all opened with the <see cref="F:Alphaleonis.Win32.Filesystem.FileShare.Delete"/> share mode.</para>
+ <para>Subsequent open requests for the file fail, unless the <see cref="F:Alphaleonis.Win32.Filesystem.FileShare.Delete"/> share mode is specified.</para>
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Filesystem.FileOptions.NoBuffering">
+ <summary>
+ There are strict requirements for successfully working with files opened with the <see cref="F:Alphaleonis.Win32.Filesystem.FileOptions.NoBuffering"/> flag, for
+ details see the section on "File Buffering" in the online MSDN documentation.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Filesystem.FileOptions.OpenNoRecall">
+ <summary>
+ The file data is requested, but it should continue to be located in remote storage. It should not be transported back to local storage. This flag is for use by remote storage systems.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Filesystem.FileOptions.OpenReparsePoint">
+ <summary>
+ <para>Normal reparse point processing will not occur; an attempt to open the reparse point will be made.
+ When a file is opened, a file handle is returned, whether or not the filter that controls the reparse
+ point is operational. See MSDN documentation for more information.</para>
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Filesystem.FileOptions.Overlapped">
+ <summary>
+ The file or device is being opened or created for asynchronous I/O.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Filesystem.FileOptions.PosixSemantics">
+ <summary>
+ Access will occur according to POSIX rules. This includes allowing multiple files with names, differing only in case, for file systems that support that naming. Use care when using this option, because files created with this flag may not be accessible by applications that are written for MS-DOS or 16-bit Windows.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Filesystem.FileOptions.RandomAccess">
+ <summary>
+ Access is intended to be random. The system can use this as a hint to optimize file caching.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Filesystem.FileOptions.SequentialScan">
+ <summary>
+ Access is intended to be sequential from beginning to end. The system can use this as a hint to optimize file caching.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Filesystem.FileOptions.WriteThrough">
+ <summary>
+ Write operations will not go through any intermediate cache, they will go directly to disk.
+ </summary>
+ </member>
+ <member name="T:Alphaleonis.Win32.Filesystem.CopyProgressRoutine">
+ <summary>
+ Callback used by MoveFile and CopyFile to report progress about the
+ operation.
+ </summary>
+ </member>
+ <member name="T:Alphaleonis.Win32.Filesystem.DirectoryInfo">
+ <summary>
+ Exposes instance methods for creating, moving, and enumerating through directories and subdirectories. This class cannot be inherited.
+ </summary>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.DirectoryInfo.#ctor(System.String)">
+ <summary>
+ Initializes a new instance of the <see cref="T:Alphaleonis.Win32.Filesystem.DirectoryInfo"/> class on the specified path.
+ </summary>
+ <param name="path">A string specifying the path on which to create the DirectoryInfo.</param>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.DirectoryInfo.Refresh">
+ <summary>
+ Refreshes the state of the object.
+ </summary>
+ <remarks>
+ FileSystemInfo.Refresh takes a snapshot of the file from the current file system. Refresh cannot correct the underlying file system even if the file system returns incorrect or outdated information. This can happen on platforms such as Windows 98.
+ Calls must be made to Refresh before attempting to get the attribute information, or the information will be outdated.
+ </remarks>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.DirectoryInfo.Delete">
+ <summary>
+ Deletes a file or directory.
+ </summary>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.DirectoryInfo.Delete(System.Boolean)">
+ <summary>
+ Deletes this instance of a DirectoryInfo, specifying whether to delete subdirectories and files.
+ </summary>
+ <param name="recursive"><c>true</c> to remove directories, subdirectories, and files in path; otherwise, <c>false</c>.</param>
+ <remarks>
+ If the DirectoryInfo has no files or subdirectories, this method deletes the DirectoryInfo even if recursive is false. Attempting to delete a DirectoryInfo that is not empty when recursive is false throws an IOException.
+ For a list of common I/O tasks, see Common I/O Tasks.
+ </remarks>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.DirectoryInfo.Delete(System.Boolean,System.Boolean)">
+ <summary>
+ Deletes this instance of a DirectoryInfo, specifying whether to delete subdirectories and files.
+ </summary>
+ <param name="recursive"><c>true</c> to remove directories, subdirectories, and files in path; otherwise, <c>false</c>.</param>
+ <param name="ignoreReadOnly">if set to <c>true</c> ignores read only attribute of files and directories.</param>
+ <remarks>
+ If the DirectoryInfo has no files or subdirectories, this method deletes the DirectoryInfo even if recursive is false. Attempting to delete a DirectoryInfo that is not empty when recursive is false throws an IOException.
+ For a list of common I/O tasks, see Common I/O Tasks.
+ </remarks>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.DirectoryInfo.ToString">
+ <summary>
+ Returns the original path that was passed by the user.
+ </summary>
+ <returns>Returns the original path that was passed by the user.</returns>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.DirectoryInfo.GetAccessControl">
+ <summary>
+ Gets a DirectorySecurity object that encapsulates the access control list (ACL) entries for the directory described by the current DirectoryInfo object.
+ </summary>
+ <returns>A DirectorySecurity object that encapsulates the access control rules for the directory.</returns>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.DirectoryInfo.GetAccessControl(System.Security.AccessControl.AccessControlSections)">
+ <summary>
+ Gets a DirectorySecurity object that encapsulates the specified type of access control list (ACL) entries for the directory described by the current DirectoryInfo object.
+ </summary>
+ <param name="includeSections">One of the AccessControlSections values that specifies the type of access control list (ACL) information to receive.</param>
+ <returns>A DirectorySecurity object that encapsulates the access control rules for the file described by the path parameter.</returns>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.DirectoryInfo.SetAccessControl(System.Security.AccessControl.DirectorySecurity)">
+ <summary>
+ Applies access control list (ACL) entries described by a DirectorySecurity object to the directory described by the current DirectoryInfo object.
+ </summary>
+ <param name="directorySecurity">A DirectorySecurity object that describes an ACL entry to apply to the directory described by the path parameter.</param>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.DirectoryInfo.GetDirectories">
+ <summary>
+ Returns the subdirectories of the current directory.
+ </summary>
+ <returns>An array of DirectoryInfo objects.</returns>
+ <remarks>If there are no subdirectories, this method returns an empty array. This method is not recursive.</remarks>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.DirectoryInfo.GetDirectories(System.String)">
+ <summary>
+ Returns an array of directories in the current DirectoryInfo matching the given search criteria.
+ </summary>
+ <param name="searchPattern">The search string, such as "System*", used to search for all directories beginning with the word "System".</param>
+ <returns>An array of type DirectoryInfo matching searchPattern.</returns>
+ <remarks>
+ Wildcards are permitted. For example, the searchPattern string "*t" searches for all directory names in path ending with the letter "t". The searchPattern string "s*" searches for all directory names in path beginning with the letter "s".
+ The string ".." can only be used in searchPattern if it is specified as a part of a valid directory name, such as in the directory name "a..b". It cannot be used to move up the directory hierarchy.
+ If there are no subdirectories, or no subdirectories match the searchPattern parameter, this method returns an empty array.
+ For a list of common I/O tasks, see Common I/O Tasks.
+ </remarks>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.DirectoryInfo.GetDirectories(System.String,System.IO.SearchOption)">
+ <summary>
+ Returns an array of directories in the current DirectoryInfo matching the given search criteria and using a value to determine whether to search subdirectories.
+ </summary>
+ <param name="searchPattern">The search string, such as "System*", used to search for all directories beginning with the word "System".</param>
+ <param name="searchOption">One of the values of the SearchOption enumeration that specifies whether the search operation should include only the current directory or should include all subdirectories.</param>
+ <returns>
+ An array of type DirectoryInfo matching searchPattern.
+ </returns>
+ <remarks>
+ Wildcards are permitted. For example, the searchPattern string "*t" searches for all directory names in path ending with the letter "t". The searchPattern string "s*" searches for all directory names in path beginning with the letter "s".
+ The string ".." can only be used in searchPattern if it is specified as a part of a valid directory name, such as in the directory name "a..b". It cannot be used to move up the directory hierarchy.
+ If there are no subdirectories, or no subdirectories match the searchPattern parameter, this method returns an empty array.
+ For a list of common I/O tasks, see Common I/O Tasks.
+ </remarks>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.DirectoryInfo.GetFiles">
+ <summary>
+ Returns a file list from the current directory.
+ </summary>
+ <returns>An array of type FileInfo.</returns>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.DirectoryInfo.GetFiles(System.String)">
+ <summary>
+ Returns a file list from the current directory matching the given searchPattern.
+ </summary>
+ <param name="searchPattern">The search string, such as "*.txt".</param>
+ <returns>An array of type FileInfo.</returns>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.DirectoryInfo.GetFiles(System.String,System.IO.SearchOption)">
+ <summary>
+ Returns a file list from the current directory matching the given searchPattern and using a value to determine whether to search subdirectories.
+ </summary>
+ <param name="searchPattern">The search string, such as "System*", used to search for all directories beginning with the word "System".</param>
+ <param name="searchOption">One of the values of the SearchOption enumeration that specifies whether the search operation should include only the current directory or should include all subdirectories.</param>
+ <returns>An array of type FileInfo.</returns>
+ <remarks>
+ The following wildcard specifiers are permitted in searchPattern: "*" and "?".
+ The order of the returned file names is not guaranteed; use the Sort()()() method if a specific sort order is required.
+ Wildcards are permitted. For example, the searchPattern string "*.txt" searches for all file names having an extension of "txt".
+ The searchPattern string "s*" searches for all file names beginning with the letter "s". If there are no files, or no files that match the searchPattern string in the DirectoryInfo, this method returns an empty array.
+ </remarks>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.DirectoryInfo.GetFileSystemInfos">
+ <summary>
+ Returns an array of strongly typed FileSystemInfo entries representing all the files and subdirectories in a directory.
+ </summary>
+ <returns>An array of strongly typed FileSystemInfo entries.</returns>
+ <remarks>
+ This method is not recursive.
+ For subdirectories, the FileSystemInfo objects returned by this method can be cast to the derived class DirectoryInfo. Use the FileAttributes value returned by the FileSystemInfo.Attributes property to determine whether the FileSystemInfo represents a file or a directory.
+ Wild cards are permitted. For example, the searchPattern string "*t" searches for all directory names in path ending with the letter "t". The searchPattern string "s*" searches for all directory names in path beginning with the letter "s".
+ The string ".." can only be used in searchPattern if it is specified as a part of a valid directory name, such as in the directory name "a..b". It cannot be used to move up the directory hierarchy. If there are no files or directories, or no files or directories that match the searchPattern string in the DirectoryInfo, this method returns an empty array.
+ For a list of common I/O tasks, see Common I/O Tasks.
+ </remarks>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.DirectoryInfo.GetFileSystemInfos(System.String)">
+ <summary>
+ Retrieves an array of strongly typed FileSystemInfo objects representing the files and subdirectories matching the specified search criteria.
+ </summary>
+ <param name="searchPattern">The search string, such as "System*", used to search for all directories beginning with the word "System".</param>
+ <returns>An array of strongly typed FileSystemInfo objects matching the search criteria.</returns>
+ <remarks>
+ This method is not recursive.
+ For subdirectories, the FileSystemInfo objects returned by this method can be cast to the derived class DirectoryInfo. Use the FileAttributes value returned by the FileSystemInfo.Attributes property to determine whether the FileSystemInfo represents a file or a directory.
+ Wild cards are permitted. For example, the searchPattern string "*t" searches for all directory names in path ending with the letter "t". The searchPattern string "s*" searches for all directory names in path beginning with the letter "s".
+ The string ".." can only be used in searchPattern if it is specified as a part of a valid directory name, such as in the directory name "a..b". It cannot be used to move up the directory hierarchy. If there are no files or directories, or no files or directories that match the searchPattern string in the DirectoryInfo, this method returns an empty array.
+ For a list of common I/O tasks, see Common I/O Tasks.
+ </remarks>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.DirectoryInfo.MoveTo(System.String)">
+ <summary>
+ Moves a DirectoryInfo instance and its contents to a new path.
+ </summary>
+ <param name="destDirName">The name and path to which to move this directory.
+ The destination cannot be directory with the identical name. It can be an existing directory to which you want to add this directory as a subdirectory.</param>
+ <remarks>
+ This method throws an IOException if, for example, you try to move c:\mydir to c:\public, and c:\public already exists. You must specify "c:\\public\\mydir" as the destDirName parameter, or specify a new directory name such as "c:\\newdir".
+ This method permits moving a directory to a read-only directory. The read/write attribute of neither directory is affected.
+ For a list of common I/O tasks, see Common I/O Tasks.
+ </remarks>
+ </member>
+ <member name="P:Alphaleonis.Win32.Filesystem.DirectoryInfo.Exists">
+ <summary>
+ Gets a value indicating whether the file or directory exists.
+ </summary>
+ <value><c>true</c> if the file exists; otherwise, <c>false</c>.</value>
+ </member>
+ <member name="P:Alphaleonis.Win32.Filesystem.DirectoryInfo.Name">
+ <summary>
+ Gets the name of the last directory in the hierarchy if a hierarchy exists. Otherwise, the Name property gets the name of the directory.
+ </summary>
+ <value></value>
+ <remarks>
+ For a directory, Name returns only the name of the parent directory, such as Dir, not c:\Dir. For a subdirectory, Name returns only the name of the subdirectory, such as Sub1, not c:\Dir\Sub1.
+ </remarks>
+ </member>
+ <member name="P:Alphaleonis.Win32.Filesystem.DirectoryInfo.Parent">
+ <summary>
+ Gets the parent directory of a specified subdirectory.
+ </summary>
+ <value>The parent directory, or nullNothingnullptra null reference (Nothing in Visual Basic) if the path is null or if the file path denotes a root (such as "\", "C:", or * "\\server\share").</value>
+ </member>
+ <member name="P:Alphaleonis.Win32.Filesystem.DirectoryInfo.Root">
+ <summary>
+ Gets the root portion of a path.
+ </summary>
+ <value>A DirectoryInfo object representing the root of a path.</value>
+ </member>
+ <member name="T:Alphaleonis.Win32.Security.PrivilegeEnabler">
+ <summary>
+ Used to enable one or more privileges. The privileges specified will be enabled during the
+ lifetime of the instance. Users create an instance of this object in a <c>using</c> statement
+ to ensure that it is properly disposed when the elevated privileges are no longer needed.
+ </summary>
+ </member>
+ <member name="M:Alphaleonis.Win32.Security.PrivilegeEnabler.#ctor(Alphaleonis.Win32.Security.Privilege,Alphaleonis.Win32.Security.Privilege[])">
+ <summary>
+ Initializes a new instance of the <see cref="T:Alphaleonis.Win32.Security.PrivilegeEnabler"/> class. This will enable the
+ privileges specified (unless already enabled), and ensure that they are disabled again when
+ the object is disposed. (Any privileges already enabled will not be disabled).
+ </summary>
+ <param name="privilege">The privilege to enable.</param>
+ <param name="privileges">Additional privileges to enable.</param>
+ </member>
+ <member name="M:Alphaleonis.Win32.Security.PrivilegeEnabler.Dispose">
+ <summary>
+ Makes sure any privileges enabled by this instance are disabled.
+ </summary>
+ </member>
+ <member name="P:Alphaleonis.Win32.Security.PrivilegeEnabler.EnabledPrivileges">
+ <summary>
+ Gets the enabled privileges. Note that this might not contain all privileges specified
+ to the constructor. Only the privileges actually enabled by this instance is returned.
+ </summary>
+ <value>The enabled privileges.</value>
+ </member>
+ <member name="T:Alphaleonis.Win32.Filesystem.UnsupportedRemoteTransactionException">
+ <summary>
+ The remote server or share does not support transacted file operations.
+ </summary>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.UnsupportedRemoteTransactionException.#ctor">
+ <summary>
+ Initializes a new instance of the <see cref="T:Alphaleonis.Win32.Filesystem.UnsupportedRemoteTransactionException"/> class.
+ </summary>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.UnsupportedRemoteTransactionException.#ctor(System.String)">
+ <summary>
+ Initializes a new instance of the <see cref="T:Alphaleonis.Win32.Filesystem.UnsupportedRemoteTransactionException"/> class.
+ </summary>
+ <param name="message">The message.</param>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.UnsupportedRemoteTransactionException.#ctor(System.String,System.Exception)">
+ <summary>
+ Initializes a new instance of the <see cref="T:Alphaleonis.Win32.Filesystem.UnsupportedRemoteTransactionException"/> class.
+ </summary>
+ <param name="message">The message.</param>
+ <param name="innerException">The inner exception.</param>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.UnsupportedRemoteTransactionException.#ctor(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">
+ <summary>
+ Initializes a new instance of the <see cref="T:Alphaleonis.Win32.Filesystem.UnsupportedRemoteTransactionException"/> class.
+ </summary>
+ <param name="info">The object that holds the serialized object data.</param>
+ <param name="context">The contextual information about the source or destination.</param>
+ </member>
+ <member name="T:Alphaleonis.Win32.Filesystem.UnrecognizedReparsePointException">
+ <summary>
+ The function attempted to use a name that is reserved for use by another transaction.
+ </summary>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.UnrecognizedReparsePointException.#ctor">
+ <summary>
+ Initializes a new instance of the <see cref="T:Alphaleonis.Win32.Filesystem.UnrecognizedReparsePointException"/> class.
+ </summary>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.UnrecognizedReparsePointException.#ctor(System.String)">
+ <summary>
+ Initializes a new instance of the <see cref="T:Alphaleonis.Win32.Filesystem.UnrecognizedReparsePointException"/> class.
+ </summary>
+ <param name="message">The message.</param>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.UnrecognizedReparsePointException.#ctor(System.String,System.Exception)">
+ <summary>
+ Initializes a new instance of the <see cref="T:Alphaleonis.Win32.Filesystem.UnrecognizedReparsePointException"/> class.
+ </summary>
+ <param name="message">The message.</param>
+ <param name="innerException">The inner exception.</param>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.UnrecognizedReparsePointException.#ctor(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">
+ <summary>
+ Initializes a new instance of the <see cref="T:Alphaleonis.Win32.Filesystem.UnrecognizedReparsePointException"/> class.
+ </summary>
+ <param name="info">The info.</param>
+ <param name="context">The context.</param>
+ </member>
+ <member name="T:Alphaleonis.Win32.Filesystem.SymbolicLinkTargetInfo">
+ <summary>
+ Represents information about a symbolic link.
+ </summary>
+ </member>
+ <member name="P:Alphaleonis.Win32.Filesystem.SymbolicLinkTargetInfo.LinkType">
+ <summary>
+ Gets the type of the link.
+ </summary>
+ <value>The type of the link.</value>
+ </member>
+ <member name="T:Alphaleonis.Win32.Filesystem.SymbolicLinkTarget">
+ <summary>
+ Indicates whether the link target is a file or directory.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Filesystem.SymbolicLinkTarget.File">
+ <summary>
+ The link target is a file.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Filesystem.SymbolicLinkTarget.Directory">
+ <summary>
+ The link target is a directory.
+ </summary>
+ </member>
+ <member name="T:Alphaleonis.Win32.Security.SafeLocalMemoryBufferHandle">
+ <summary>
+ IntPtr wrapper which can be used as result of
+ Marshal.AllocHGlobal operation.
+ Calls Marshal.FreeHGlobal when disposed or finalized.
+ </summary>
+ </member>
+ <member name="M:Alphaleonis.Win32.Security.SafeLocalMemoryBufferHandle.#ctor">
+ <summary>
+ Creates new instance with zero IntPtr
+ </summary>
+ </member>
+ <member name="M:Alphaleonis.Win32.Security.SafeLocalMemoryBufferHandle.CopyFrom(System.Byte[],System.Int32,System.Int32)">
+ <summary>
+ Copies data from a one-dimensional, managed 8-bit unsigned integer array to the unmanaged memory pointer referenced by this instance-
+ </summary>
+ <param name="source">The one-dimensional array to copy from. </param>
+ <param name="startIndex">The zero-based index into the array where Copy should start.</param>
+ <param name="length">The number of array elements to copy.</param>
+ </member>
+ <member name="M:Alphaleonis.Win32.Security.SafeLocalMemoryBufferHandle.ReleaseHandle">
+ <summary>
+ Called when object is disposed or finalized.
+ </summary>
+ </member>
+ <member name="T:Alphaleonis.Win32.Security.InternalPrivilegeEnabler">
+ <summary>
+ This object is used to enable a specific privilege for the currently running process during its lifetime.
+ It should be disposed as soon as the elevated privilege is no longer needed.
+ For more information see the documentation on AdjustTokenPrivileges on MSDN.
+ </summary>
+ </member>
+ <member name="M:Alphaleonis.Win32.Security.InternalPrivilegeEnabler.#ctor(Alphaleonis.Win32.Security.Privilege)">
+ <summary>
+ Initializes a new instance of the <see cref="T:Alphaleonis.Win32.Security.PrivilegeEnabler"/> class and enabling the specified privilege
+ for the currently running process.
+ </summary>
+ <param name="privilegeName">The name of the privilege.</param>
+ </member>
+ <member name="M:Alphaleonis.Win32.Security.InternalPrivilegeEnabler.Dispose">
+ <summary>
+ Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources.
+ In this case the privilege previously enabled will be disabled.
+ </summary>
+ </member>
+ <member name="M:Alphaleonis.Win32.Security.InternalPrivilegeEnabler.AdjustPrivilege(System.Boolean)">
+ <summary>
+ Adjusts the privilege.
+ </summary>
+ <param name="enable">if set to <c>true</c> the privilege will be enabled, otherwise disabled.</param>
+ </member>
+ <member name="T:Alphaleonis.Win32.Filesystem.TransactionalConflictException">
+ <summary>
+ The function attempted to use a name that is reserved for use by another transaction.
+ </summary>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.TransactionalConflictException.#ctor">
+ <summary>
+ Initializes a new instance of the <see cref="T:Alphaleonis.Win32.Filesystem.TransactionalConflictException"/> class.
+ </summary>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.TransactionalConflictException.#ctor(System.String)">
+ <summary>
+ Initializes a new instance of the <see cref="T:Alphaleonis.Win32.Filesystem.TransactionalConflictException"/> class.
+ </summary>
+ <param name="message">The message.</param>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.TransactionalConflictException.#ctor(System.String,System.Exception)">
+ <summary>
+ Initializes a new instance of the <see cref="T:Alphaleonis.Win32.Filesystem.TransactionalConflictException"/> class.
+ </summary>
+ <param name="message">The message.</param>
+ <param name="innerException">The inner exception.</param>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.TransactionalConflictException.#ctor(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">
+ <summary>
+ Initializes a new instance of the <see cref="T:Alphaleonis.Win32.Filesystem.TransactionalConflictException"/> class.
+ </summary>
+ <param name="info">The info.</param>
+ <param name="context">The context.</param>
+ </member>
+ <member name="T:Alphaleonis.Win32.Filesystem.ByHandleFileInfo">
+ <summary>
+ Represents information retrieved by <see cref="M:Alphaleonis.Win32.Filesystem.File.GetFileInformationByHandle(System.IO.FileStream)"/>.
+ </summary>
+ </member>
+ <member name="P:Alphaleonis.Win32.Filesystem.ByHandleFileInfo.Attributes">
+ <summary>
+ Gets the file attributes.
+ </summary>
+ <value>The file attributes.</value>
+ </member>
+ <member name="P:Alphaleonis.Win32.Filesystem.ByHandleFileInfo.CreationTime">
+ <summary>
+ Gets a <see cref="T:System.DateTime"/> structure that specified when a file or directory was created.
+ </summary>
+ <value>A <see cref="T:System.DateTime"/> structure that specified when a file or directory was created.</value>
+ </member>
+ <member name="P:Alphaleonis.Win32.Filesystem.ByHandleFileInfo.LastAccessTime">
+ <summary>
+ Gets a <see cref="T:System.DateTime"/> structure.
+ For a file, the structure specifies the last time that a file is read from or written to.
+ For a directory, the structure specifies when the directory is created.
+ For both files and directories, the specified date is correct, but the time of day is always set to midnight.
+ If the underlying file system does not support the last access time, this member is zero (0).
+ </summary>
+ <value>A <see cref="T:System.DateTime"/> structure that specified when a file was last written to or the directory created.</value>
+ </member>
+ <member name="P:Alphaleonis.Win32.Filesystem.ByHandleFileInfo.LastWriteTime">
+ <summary>
+ Gets a <see cref="T:System.DateTime"/> structure.
+ For a file, the structure specifies the last time that a file is written to.
+ For a directory, the structure specifies when the directory is created.
+ If the underlying file system does not support the last access time, this member is zero (0).
+ </summary>
+ <value>A <see cref="T:System.DateTime"/> structure that specified when a file was last written to or the directory created.</value>
+ </member>
+ <member name="P:Alphaleonis.Win32.Filesystem.ByHandleFileInfo.VolumeSerialNumber">
+ <summary>
+ Gets the the serial number of the volume that contains a file.
+ </summary>
+ <value>The serial number of the volume that contains a file.</value>
+ </member>
+ <member name="P:Alphaleonis.Win32.Filesystem.ByHandleFileInfo.FileSize">
+ <summary>
+ Gets the size of the file.
+ </summary>
+ <value>The size of the file.</value>
+ </member>
+ <member name="P:Alphaleonis.Win32.Filesystem.ByHandleFileInfo.NumberOfLinks">
+ <summary>
+ Gets the number of links to this file. For the FAT file system this member is always 1. For the NTFS file system, it can be more than 1.
+ </summary>
+ <value>The number of links to this file. </value>
+ </member>
+ <member name="P:Alphaleonis.Win32.Filesystem.ByHandleFileInfo.FileIndex">
+ <summary>
+ Gets the unique identifier associated with the file. The identifier and the volume serial number uniquely identify a
+ file on a single computer. To determine whether two open handles represent the same file, combine the identifier
+ and the volume serial number for each file and compare them.
+ </summary>
+ <value>The unique identifier of the file.</value>
+ </member>
+ <member name="T:Alphaleonis.Win32.Filesystem.DeviceNotReadyException">
+ <summary>
+ The requested operation could not be completed because the device was not ready.
+ </summary>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.DeviceNotReadyException.#ctor">
+ <summary>
+ Initializes a new instance of the <see cref="T:Alphaleonis.Win32.Filesystem.DeviceNotReadyException"/> class.
+ </summary>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.DeviceNotReadyException.#ctor(System.String)">
+ <summary>
+ Initializes a new instance of the <see cref="T:Alphaleonis.Win32.Filesystem.DeviceNotReadyException"/> class.
+ </summary>
+ <param name="message">The message.</param>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.DeviceNotReadyException.#ctor(System.String,System.Exception)">
+ <summary>
+ Initializes a new instance of the <see cref="T:Alphaleonis.Win32.Filesystem.DeviceNotReadyException"/> class.
+ </summary>
+ <param name="message">The message.</param>
+ <param name="innerException">The inner exception.</param>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.DeviceNotReadyException.#ctor(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">
+ <summary>
+ Initializes a new instance of the <see cref="T:Alphaleonis.Win32.Filesystem.DeviceNotReadyException"/> class.
+ </summary>
+ <param name="info">The data for serializing or deserializing the object.</param>
+ <param name="context">The source and destination for the object.</param>
+ </member>
+ <member name="T:Alphaleonis.Win32.Filesystem.TransactionAlreadyCommittedException">
+ <summary>
+ It is too late to perform the requested operation, since the Transaction has already been committed.
+ </summary>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.TransactionAlreadyCommittedException.#ctor">
+ <summary>
+ Initializes a new instance of the <see cref="T:Alphaleonis.Win32.Filesystem.TransactionAlreadyCommittedException"/> class.
+ </summary>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.TransactionAlreadyCommittedException.#ctor(System.String)">
+ <summary>
+ Initializes a new instance of the <see cref="T:Alphaleonis.Win32.Filesystem.TransactionAlreadyCommittedException"/> class.
+ </summary>
+ <param name="message">The message.</param>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.TransactionAlreadyCommittedException.#ctor(System.String,System.Exception)">
+ <summary>
+ Initializes a new instance of the <see cref="T:Alphaleonis.Win32.Filesystem.TransactionAlreadyCommittedException"/> class.
+ </summary>
+ <param name="message">The message.</param>
+ <param name="innerException">The inner exception.</param>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.TransactionAlreadyCommittedException.#ctor(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">
+ <summary>
+ Initializes a new instance of the <see cref="T:Alphaleonis.Win32.Filesystem.TransactionAlreadyCommittedException"/> class.
+ </summary>
+ <param name="info">The object that holds the serialized object data.</param>
+ <param name="context">The contextual information about the source or destination.</param>
+ </member>
+ <member name="T:Alphaleonis.Win32.Resources">
+ <summary>
+ A strongly-typed resource class, for looking up localized strings, etc.
+ </summary>
+ </member>
+ <member name="P:Alphaleonis.Win32.Resources.ResourceManager">
+ <summary>
+ Returns the cached ResourceManager instance used by this class.
+ </summary>
+ </member>
+ <member name="P:Alphaleonis.Win32.Resources.Culture">
+ <summary>
+ Overrides the current thread's CurrentUICulture property for all
+ resource lookups using this strongly typed resource class.
+ </summary>
+ </member>
+ <member name="P:Alphaleonis.Win32.Resources.AlphaFSInternalError">
+ <summary>
+ Looks up a localized string similar to AlphaFS Internal Error:
+ .
+ </summary>
+ </member>
+ <member name="P:Alphaleonis.Win32.Resources.ArgumentMustNotBeEmpty">
+ <summary>
+ Looks up a localized string similar to Argument must not be empty.
+ </summary>
+ </member>
+ <member name="P:Alphaleonis.Win32.Resources.AttemptingToGenerateExceptionFromSuccessfulOperation">
+ <summary>
+ Looks up a localized string similar to Incorrectly implemented function attempting to generate exception from successful operation.
+ .
+ </summary>
+ </member>
+ <member name="P:Alphaleonis.Win32.Resources.BufferIsNotLargeEnoughForTheRequestedOperation">
+ <summary>
+ Looks up a localized string similar to Buffer is not large enough for the requested operation..
+ </summary>
+ </member>
+ <member name="P:Alphaleonis.Win32.Resources.CountMustNotBeNegative">
+ <summary>
+ Looks up a localized string similar to Count must not be negative..
+ </summary>
+ </member>
+ <member name="P:Alphaleonis.Win32.Resources.DirectoryNotEmpty">
+ <summary>
+ Looks up a localized string similar to Directory not empty.
+ </summary>
+ </member>
+ <member name="P:Alphaleonis.Win32.Resources.DirectoryNotFound">
+ <summary>
+ Looks up a localized string similar to Directory not found.
+ </summary>
+ </member>
+ <member name="P:Alphaleonis.Win32.Resources.ErrorCodeWas0">
+ <summary>
+ Looks up a localized string similar to Error code was: {0}.
+ </summary>
+ </member>
+ <member name="P:Alphaleonis.Win32.Resources.HardLinksOnNonNTFSPartitionsIsNotSupported">
+ <summary>
+ Looks up a localized string similar to Creating hard-links on non-NTFS partitions is not supported.
+ </summary>
+ </member>
+ <member name="P:Alphaleonis.Win32.Resources.IllegalPath0">
+ <summary>
+ Looks up a localized string similar to Illegal path: {0}.
+ </summary>
+ </member>
+ <member name="P:Alphaleonis.Win32.Resources.IncompleteHeaderRead">
+ <summary>
+ Looks up a localized string similar to Incomplete header read..
+ </summary>
+ </member>
+ <member name="P:Alphaleonis.Win32.Resources.InvalidDirectoryName">
+ <summary>
+ Looks up a localized string similar to Invalid directory name.
+ </summary>
+ </member>
+ <member name="P:Alphaleonis.Win32.Resources.InvalidFileName0">
+ <summary>
+ Looks up a localized string similar to Invalid file name: {0}.
+ </summary>
+ </member>
+ <member name="P:Alphaleonis.Win32.Resources.InvalidHandle">
+ <summary>
+ Looks up a localized string similar to Invalid handle.
+ </summary>
+ </member>
+ <member name="P:Alphaleonis.Win32.Resources.InvalidSearchPattern">
+ <summary>
+ Looks up a localized string similar to Invalid search pattern.
+ </summary>
+ </member>
+ <member name="P:Alphaleonis.Win32.Resources.InvalidSecurityDescriptorReturnedFromSystem">
+ <summary>
+ Looks up a localized string similar to Invalid security descriptor returned from system..
+ </summary>
+ </member>
+ <member name="P:Alphaleonis.Win32.Resources.InvalidTransaction">
+ <summary>
+ Looks up a localized string similar to Invalid transaction object.
+ </summary>
+ </member>
+ <member name="P:Alphaleonis.Win32.Resources.InvalidTransactionRequest">
+ <summary>
+ Looks up a localized string similar to Invalid transaction request.
+ </summary>
+ </member>
+ <member name="P:Alphaleonis.Win32.Resources.NotAReparsePoint">
+ <summary>
+ Looks up a localized string similar to The file or directory is not a reparse point.
+ </summary>
+ </member>
+ <member name="P:Alphaleonis.Win32.Resources.OffsetMustNotBeNegative">
+ <summary>
+ Looks up a localized string similar to Offset must not be negative..
+ </summary>
+ </member>
+ <member name="P:Alphaleonis.Win32.Resources.PathAlreadyExists">
+ <summary>
+ Looks up a localized string similar to Path already exists.
+ </summary>
+ </member>
+ <member name="P:Alphaleonis.Win32.Resources.ThisStreamDoesNotSupportSeeking">
+ <summary>
+ Looks up a localized string similar to This stream does not support seeking..
+ </summary>
+ </member>
+ <member name="P:Alphaleonis.Win32.Resources.TransactionalConflict">
+ <summary>
+ Looks up a localized string similar to Transactional conflict.
+ </summary>
+ </member>
+ <member name="P:Alphaleonis.Win32.Resources.TransactionAlreadyAborted">
+ <summary>
+ Looks up a localized string similar to Transaction already aborted.
+ </summary>
+ </member>
+ <member name="P:Alphaleonis.Win32.Resources.TransactionAlreadyCommitted">
+ <summary>
+ Looks up a localized string similar to Transaction already committed.
+ </summary>
+ </member>
+ <member name="P:Alphaleonis.Win32.Resources.TransactionNotActive">
+ <summary>
+ Looks up a localized string similar to Transaction not active.
+ </summary>
+ </member>
+ <member name="P:Alphaleonis.Win32.Resources.TransactionNotRequested">
+ <summary>
+ Looks up a localized string similar to Transaction not requested.
+ </summary>
+ </member>
+ <member name="T:Alphaleonis.Win32.Filesystem.SymbolicLinkType">
+ <summary>
+ Specifies the type of a symbolic link
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Filesystem.SymbolicLinkType.Absolute">
+ <summary>
+ The symbolic link is absolute
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Filesystem.SymbolicLinkType.Relative">
+ <summary>
+ The symbolic link is relative
+ </summary>
+ </member>
+ <member name="T:Alphaleonis.Win32.Filesystem.VolumeInfo">
+ <summary>
+ Represents information about a volume.
+ </summary>
+ </member>
+ <member name="P:Alphaleonis.Win32.Filesystem.VolumeInfo.Name">
+ <summary>
+ Gets the name of the volume.
+ </summary>
+ <value>The name of the volume.</value>
+ </member>
+ <member name="P:Alphaleonis.Win32.Filesystem.VolumeInfo.PreservesCase">
+ <summary>
+ Gets a value indicating whether the file system preserves the case of file names when it places a name on disk..
+ </summary>
+ <value><c>true</c> if the file system preserves the case of file names when it places a name on disk.]; otherwise, <c>false</c>.</value>
+ </member>
+ <member name="P:Alphaleonis.Win32.Filesystem.VolumeInfo.SupportsCaseSensitiveFileNames">
+ <summary>
+ Gets a value indicating whether the file system supports case-sensitive file names..
+ </summary>
+ <value>
+ <c>true</c> if the file system supports case-sensitive file names; otherwise, <c>false</c>.
+ </value>
+ </member>
+ <member name="P:Alphaleonis.Win32.Filesystem.VolumeInfo.SupportsFileCompression">
+ <summary>
+ Gets a value indicating whether the file system supports file-based compression.
+ </summary>
+ <value>
+ <c>true</c> if the file system supports file-based compression; otherwise, <c>false</c>.
+ </value>
+ </member>
+ <member name="P:Alphaleonis.Win32.Filesystem.VolumeInfo.SupportsNamedStreams">
+ <summary>
+ Gets a value indicating whether the file system supports named streams.
+ </summary>
+ <value>
+ <c>true</c> if the file system supports named streams; otherwise, <c>false</c>.
+ </value>
+ </member>
+ <member name="P:Alphaleonis.Win32.Filesystem.VolumeInfo.HasPersistentAccessControlLists">
+ <summary>
+ Gets a value indicating whether the file system preserves and enforces access control lists (ACL).
+ </summary>
+ <value>
+ <c>true</c> if the file system preserves and enforces access control lists (ACL); otherwise, <c>false</c>.
+ </value>
+ <remarks>For example, the NTFS file system preserves and enforces ACLs, and the FAT file system does not.</remarks>
+ </member>
+ <member name="P:Alphaleonis.Win32.Filesystem.VolumeInfo.IsReadOnly">
+ <summary>
+ Gets a value indicating whether the specified volume is read-only..
+ </summary>
+ <value>
+ <c>true</c> if the specified volume is read-only.; otherwise, <c>false</c>.
+ </value>
+ <remarks>This value is not supported on Windows 2000/NT and Windows Me/98/95.</remarks>
+ </member>
+ <member name="P:Alphaleonis.Win32.Filesystem.VolumeInfo.SupportsEncryption">
+ <summary>
+ Gets a value indicating whether the file system supports the Encrypted File System (EFS).
+ </summary>
+ <value><c>true</c> if the file system supports the Encrypted File System (EFS); otherwise, <c>false</c>.</value>
+ </member>
+ <member name="P:Alphaleonis.Win32.Filesystem.VolumeInfo.SupportsObjectIdentifiers">
+ <summary>
+ Gets a value indicating whether the file system supports object identifiers.
+ </summary>
+ <value>
+ <c>true</c> if the file system supports object identifiers; otherwise, <c>false</c>.
+ </value>
+ </member>
+ <member name="P:Alphaleonis.Win32.Filesystem.VolumeInfo.SupportsReparsePoints">
+ <summary>
+ Gets a value indicating whether he file system supports re-parse points.
+ </summary>
+ <value>
+ <c>true</c> if he file system supports re-parse points; otherwise, <c>false</c>.
+ </value>
+ </member>
+ <member name="P:Alphaleonis.Win32.Filesystem.VolumeInfo.SupportsSparseFiles">
+ <summary>
+ Gets a value indicating whether the file system supports sparse files.
+ </summary>
+ <value><c>true</c> if the file system supports sparse files; otherwise, <c>false</c>.</value>
+ </member>
+ <member name="P:Alphaleonis.Win32.Filesystem.VolumeInfo.SupportsUnicodeFileNames">
+ <summary>
+ Gets a value indicating whether the file system supports Unicode in file names as they appear on disk.
+ </summary>
+ <value>
+ <c>true</c> if the file system supports Unicode in file names as they appear on disk; otherwise, <c>false</c>.
+ </value>
+ </member>
+ <member name="P:Alphaleonis.Win32.Filesystem.VolumeInfo.IsCompressed">
+ <summary>
+ Gets a value indicating whether the specified volume is a compressed volume, for example, a DoubleSpace volume.
+ </summary>
+ <value>
+ <c>true</c> if the specified volume is a compressed volume; otherwise, <c>false</c>.
+ </value>
+ </member>
+ <member name="P:Alphaleonis.Win32.Filesystem.VolumeInfo.SupportsDiskQuotas">
+ <summary>
+ Gets a value indicating whether the file system supports disk quotas.
+ </summary>
+ <value><c>true</c> if the file system supports disk quotas; otherwise, <c>false</c>.</value>
+ </member>
+ <member name="P:Alphaleonis.Win32.Filesystem.VolumeInfo.SerialNumber">
+ <summary>
+ Gets the volume serial number that the operating system assigns when a hard disk is formatted.
+ </summary>
+ <value>The volume serial number that the operating system assigns when a hard disk is formatted.</value>
+ </member>
+ <member name="P:Alphaleonis.Win32.Filesystem.VolumeInfo.MaximumComponentLength">
+ <summary>
+ Gets the maximum length of a file name component that the file system supports.
+ </summary>
+ <value>The maximum length of a file name component that the file system supports.</value>
+ </member>
+ <member name="P:Alphaleonis.Win32.Filesystem.VolumeInfo.FileSystemName">
+ <summary>
+ Gets the name of the file system, for example, the FAT file system or the NTFS file system.
+ </summary>
+ <value>The name of the file system.</value>
+ </member>
+ <member name="T:Alphaleonis.Win32.Filesystem.TransactionAlreadyAbortedException">
+ <summary>
+ It is too late to perform the requested operation, since the Transaction has already been aborted.
+ </summary>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.TransactionAlreadyAbortedException.#ctor">
+ <summary>
+ Initializes a new instance of the <see cref="T:Alphaleonis.Win32.Filesystem.TransactionAlreadyAbortedException"/> class.
+ </summary>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.TransactionAlreadyAbortedException.#ctor(System.String)">
+ <summary>
+ Initializes a new instance of the <see cref="T:Alphaleonis.Win32.Filesystem.TransactionAlreadyAbortedException"/> class.
+ </summary>
+ <param name="message">The message.</param>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.TransactionAlreadyAbortedException.#ctor(System.String,System.Exception)">
+ <summary>
+ Initializes a new instance of the <see cref="T:Alphaleonis.Win32.Filesystem.TransactionAlreadyAbortedException"/> class.
+ </summary>
+ <param name="message">The message.</param>
+ <param name="innerException">The inner exception.</param>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.TransactionAlreadyAbortedException.#ctor(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">
+ <summary>
+ Initializes a new instance of the <see cref="T:Alphaleonis.Win32.Filesystem.TransactionAlreadyAbortedException"/> class.
+ </summary>
+ <param name="info">The info.</param>
+ <param name="context">The context.</param>
+ </member>
+ <member name="T:Alphaleonis.Win32.Filesystem.DirectoryNotEmptyException">
+ <summary>
+ The exception that is thrown when an attempt to create a directory or file that already exists was made.
+ </summary>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.DirectoryNotEmptyException.#ctor">
+ <summary>
+ Initializes a new instance of the <see cref="T:Alphaleonis.Win32.Filesystem.DirectoryNotEmptyException"/> class.
+ </summary>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.DirectoryNotEmptyException.#ctor(System.String)">
+ <summary>
+ Initializes a new instance of the <see cref="T:Alphaleonis.Win32.Filesystem.DirectoryNotEmptyException"/> class.
+ </summary>
+ <param name="message">The message.</param>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.DirectoryNotEmptyException.#ctor(System.String,System.Exception)">
+ <summary>
+ Initializes a new instance of the <see cref="T:Alphaleonis.Win32.Filesystem.DirectoryNotEmptyException"/> class.
+ </summary>
+ <param name="message">The message.</param>
+ <param name="innerException">The inner exception.</param>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.DirectoryNotEmptyException.#ctor(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">
+ <summary>
+ Initializes a new instance of the <see cref="T:Alphaleonis.Win32.Filesystem.DirectoryNotEmptyException"/> class.
+ </summary>
+ <param name="info">The data for serializing or deserializing the object.</param>
+ <param name="context">The source and destination for the object.</param>
+ </member>
+ <member name="T:Alphaleonis.Win32.Filesystem.SafeFindVolumeHandle">
+ <summary>
+ Represents a wrapper class for a handle used by the FindFirstVolume/FindNextVolume methods of the Win32 API
+ </summary>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.SafeFindVolumeHandle.#ctor">
+ <summary>
+ Initializes a new instance of the <see cref="T:Alphaleonis.Win32.Filesystem.SafeFindVolumeHandle"/> class.
+ </summary>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.SafeFindVolumeHandle.#ctor(System.IntPtr,System.Boolean)">
+ <summary>
+ Initializes a new instance of the <see cref="T:Alphaleonis.Win32.Filesystem.SafeFindVolumeHandle"/> class.
+ </summary>
+ <param name="handle">The handle.</param>
+ <param name="ownsHandle">if set to <c>true</c> [owns handle].</param>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.SafeFindVolumeHandle.ReleaseHandle">
+ <summary>
+ When overridden in a derived class, executes the code required to free the handle.
+ </summary>
+ <returns>
+ true if the handle is released successfully; otherwise, in the event of a catastrophic failure, false. In this case, it generates a ReleaseHandleFailed Managed Debugging Assistant.
+ </returns>
+ </member>
+ <member name="T:Alphaleonis.Win32.Filesystem.InvalidTransactionException">
+ <summary>
+ The transaction handle associated with this operation is not valid.
+ </summary>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.InvalidTransactionException.#ctor">
+ <summary>
+ Initializes a new instance of the <see cref="T:Alphaleonis.Win32.Filesystem.InvalidTransactionException"/> class.
+ </summary>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.InvalidTransactionException.#ctor(System.String)">
+ <summary>
+ Initializes a new instance of the <see cref="T:Alphaleonis.Win32.Filesystem.InvalidTransactionException"/> class.
+ </summary>
+ <param name="message">The message.</param>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.InvalidTransactionException.#ctor(System.String,System.Exception)">
+ <summary>
+ Initializes a new instance of the <see cref="T:Alphaleonis.Win32.Filesystem.InvalidTransactionException"/> class.
+ </summary>
+ <param name="message">The message.</param>
+ <param name="innerException">The inner exception.</param>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.InvalidTransactionException.#ctor(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">
+ <summary>
+ Initializes a new instance of the <see cref="T:Alphaleonis.Win32.Filesystem.InvalidTransactionException"/> class.
+ </summary>
+ <param name="info">The data for serializing or deserializing the object.</param>
+ <param name="context">The source and destination for the object.</param>
+ </member>
+ <member name="T:Alphaleonis.Win32.Filesystem.StreamAttributes">
+ <summary>
+ Attributes of data to facilitate cross-operating system transfer.
+ </summary>
+ <seealso cref="T:Alphaleonis.Win32.Filesystem.BackupFileStream"/>
+ </member>
+ <member name="F:Alphaleonis.Win32.Filesystem.StreamAttributes.ModifiedWhenRead">
+ <summary>
+ Attribute set if the stream contains data that is modified when read. Allows the backup application to know that verification of data will fail.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Filesystem.StreamAttributes.ContainsSecurity">
+ <summary>
+ Stream contains security data (general attributes). Allows the stream to be ignored on cross-operations restore.
+ This attribute applies only to backup stream of type <see cref="F:Alphaleonis.Win32.Filesystem.BackupStreamType.SecurityData"/>.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Filesystem.StreamAttributes.ContainsProperties">
+ <summary>
+ Reserved.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Filesystem.StreamAttributes.Normal">
+ <summary>
+ This backup stream has no special attributes.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Filesystem.StreamAttributes.Sparse">
+ <summary>
+ The backup stream is part of a sparse file stream. This attribute applies only to backup stream of
+ type <see cref="F:Alphaleonis.Win32.Filesystem.BackupStreamType.Data"/>, <see cref="F:Alphaleonis.Win32.Filesystem.BackupStreamType.AlternateData"/>, and <see cref="F:Alphaleonis.Win32.Filesystem.BackupStreamType.SparseBlock"/>.
+ </summary>
+ </member>
+ <member name="T:Alphaleonis.Win32.Filesystem.FileShare">
+ <summary>
+ <para>Contains constants for controlling the kind of access other FileStream objects can have to the same file.</para>
+ <para>This enumeration has a FlagsAttribute attribute that allows a bitwise combination of its member values.</para>
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Filesystem.FileShare.None">
+ <summary>
+ Declines sharing of the current file. Any request to open the file (by this process or another process) will fail until the file is closed.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Filesystem.FileShare.Read">
+ <summary>
+ Allows subsequent opening of the file for reading. If this flag is not specified, any request to open the file for reading (by this process or another process) will fail until the file is closed. However, even if this flag is specified, additional permissions might still be needed to access the file.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Filesystem.FileShare.Write">
+ <summary>
+ Allows subsequent opening of the file for writing. If this flag is not specified, any request to open the file for writing (by this process or another process) will fail until the file is closed. However, even if this flag is specified, additional permissions might still be needed to access the file.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Filesystem.FileShare.ReadWrite">
+ <summary>
+ Allows subsequent opening of the file for reading or writing. If this flag is not specified, any request to open the file for reading or writing (by this process or another process) will fail until the file is closed. However, even if this flag is specified, additional permissions might still be needed to access the file.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Filesystem.FileShare.Delete">
+ <summary>
+ Allows subsequent deleting of a file.
+ </summary>
+ </member>
+ <member name="T:Alphaleonis.Win32.Filesystem.Volume">
+ <summary>
+ Static class providing utility methods for working with Microsoft Windows devices and volumes. Most
+ of the methods in this class is simple convenience methods for native Win32 API-calls to make them
+ simpler to use from managed languages.
+ </summary>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.Volume.GetVolumes">
+ <summary>
+ Retrieves the name of all volumes on the computer.
+ </summary>
+ <remarks>Requires Windows Vista, Windows XP, or Windows 2000 Professional.</remarks>
+ <returns>An array containing the volume names on the computer.</returns>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.Volume.GetVolumeMountPoints(System.String)">
+ <summary>
+ Retrieves the names of all volume mount points on the specified volume.
+ </summary>
+ <remarks>Requires Windows Vista, Windows XP, or Windows 2000 Professional.</remarks>
+ <param name="volumeName">The unique volume name of the volume to scan for volume mount points. A trailing backslash is required.</param>
+ <returns>The names of all volume mount points on the specified volume.</returns>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.Volume.GetCurrentDriveType">
+ <summary>
+ Determines whether a disk drive containing the current directory is a removable, fixed, CD-ROM, RAM disk, or network drive.
+ </summary>
+ <remarks>Requires Windows Vista, Windows XP, or Windows 2000 Professional.</remarks>
+ <returns>A value indicating whether a disk drive containing the current directory is a removable, fixed, CD-ROM, RAM disk, or network drive.</returns>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.Volume.GetDriveType(System.String)">
+ <summary>
+ Determines whether a disk drive is a removable, fixed, CD-ROM, RAM disk, or network drive.
+ </summary>
+ <remarks>Requires Windows Vista, Windows XP, or Windows 2000 Professional.</remarks>
+ <param name="volumeName">The root directory for the drive. A trailing backslash is required. </param>
+ <returns>A value indicating whether a disk drive is a removable, fixed, CD-ROM, RAM disk, or network drive.</returns>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.Volume.GetLogicalDrives">
+ <summary>
+ Returns an array of strings that specify valid drives in the system.
+ </summary>
+ <remarks>Each string in the buffer may be used wherever a root directory is required, such as for the GetDriveType and GetDiskFreeSpace functions.</remarks>
+ <returns>An array of strings that specify valid drives in the system.</returns>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.Volume.GetVolumeInformation(System.String)">
+ <summary>
+ Retrieves information about the file system and volume associated with the specified root directory.
+ </summary>
+ <param name="rootPathName">The root directory of the volume to be described.</param>
+ <returns>A <see cref="T:Alphaleonis.Win32.Filesystem.VolumeInfo"/> instance describing the volume associatied with the specified root directory</returns>
+ <exception cref="T:System.IO.FileNotFoundException"><paramref name="rootPathName"/> was not a valid volume name</exception>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.Volume.GetVolumeInformation(System.IO.FileStream)">
+ <summary>
+ Retrieves information about the file system and volume associated with the specified <see cref="T:System.IO.FileStream"/>.
+ </summary>
+ <param name="file">The file.</param>
+ <returns>A <see cref="T:Alphaleonis.Win32.Filesystem.VolumeInfo"/> instance describing the volume associatied with the specified root directory</returns>
+ <exception cref="T:System.IO.FileNotFoundException"><paramref name="rootPathName"/> was not a valid volume name</exception>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.Volume.SetVolumeLabel(System.String,System.String)">
+ <summary>
+ Sets the label of a file system volume.
+ </summary>
+ <param name="rootPathName">The root directory of a file system volume. This is the volume the function will label. A trailing backslash is required.</param>
+ <param name="volumeName">A name for the volume.</param>
+ <exception cref="T:System.ArgumentNullException"><paramref name="rootPathName"/> or <paramref name="volumeName"/> is a <see langword="null"/> reference.</exception>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.Volume.SetCurrentVolumeLabel(System.String)">
+ <summary>
+ Sets the label of the file system volume that is the root of the current directory
+ </summary>
+ <param name="volumeName">A name for the volume.</param>
+ <exception cref="T:System.ArgumentNullException"><paramref name="volumeName"/> is a <see langword="null"/> reference.</exception>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.Volume.DeleteVolumeLabel(System.String)">
+ <summary>
+ Deletes the label of a file system volume.
+ </summary>
+ <param name="rootPathName">The root directory of a file system volume. This is the volume the function will label. A trailing backslash is required.</param>
+ <exception cref="T:System.ArgumentNullException"><paramref name="rootPathName"/> is a <see langword="null"/> reference.</exception>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.Volume.DeleteCurrentVolumeLabel">
+ <summary>
+ Deletes the label of the file system volume that is the root of the current directory
+ </summary>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.Volume.SetVolumeMountPoint(System.String,System.String)">
+ <summary>
+ Mounts the specified volume at the specified volume mount point.
+ </summary>
+ <param name="volumeMountPoint">The volume mount point where the volume is to be mounted. This may be a root directory (X:\) or a directory on a volume (X:\mnt\). The string must end with a trailing backslash ('\').</param>
+ <param name="volumeName">The volume to be mounted. This string must be a unique volume name of the form "\\?\Volume{GUID}\" where GUID is a GUID that identifies the volume. The \\?\ turns off path parsing and is ignored as part of the path. For example, "\\?\C:\myworld\private" is seen as "C:\myworld\private".</param>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.Volume.DeleteVolumeMountPoint(System.String)">
+ <summary>
+ Unmounts the volume from the specified volume mount point.
+ </summary>
+ <param name="volumeMountPoint">The volume mount point to be unmounted. This may be a root directory (X:\, in which case the DOS drive letter assignment is removed) or a directory on a volume (X:\mnt\). A trailing backslash is required.</param>
+ <exception cref="T:System.ArgumentNullException"><paramref name="volumeMountPoint"/> is <see langword="null"/></exception>
+ <remarks>It is not an error to attempt to unmount a volume from a volume mount point when there is no volume actually mounted at that volume mount point.</remarks>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.Volume.DefineDosDevice(System.String,System.String)">
+ <summary>
+ Defines or redefines MS-DOS device names.
+ </summary>
+ <param name="targetPath">A MS-DOS path string that will implement this device.</param>
+ <param name="deviceName">An MS-DOS device name string specifying the device the function is
+ defining or redefining. The device name string must not have a trailing colon, unless a drive
+ letter (C or D, for example) is being defined or redefined. In no case is a trailing backslash allowed.</param>
+ <returns><c>true</c> upon success, or <c>false</c> otherwise.</returns>
+ <remarks>Call Marshal.GetLastWin32Error() to receive additional error information if this method fails.</remarks>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.Volume.DeleteDosDevice(System.String)">
+ <summary>
+ Deletes an MS-DOS device name.
+ </summary>
+ <param name="deviceName">An MS-DOS device name string specifying the device the function is
+ deleting. The device name string must not have a trailing colon, unless a drive
+ letter (C or D, for example) is being deleted. In no case is a trailing backslash allowed.</param>
+ <returns><c>true</c> upon success, or <c>false</c> otherwise.</returns>
+ <remarks>Call Marshal.GetLastWin32Error() to receive additional error information if this method fails.</remarks>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.Volume.QueryDosDevice(System.String)">
+ <summary>
+ Retrieves information about MS-DOS device names.
+ The function can obtain the current mapping for a particular MS-DOS device name.
+ The function can also obtain a list of all existing MS-DOS device names.
+ </summary>
+ <param name="device">The device.</param>
+ <returns>An MS-DOS device name string specifying the target of the query. The device name cannot have a
+ trailing backslash. This parameter can be <see langword="null"/>. In that case, the QueryDosDevice function
+ will return an array of all existing MS-DOS device names</returns>
+ <remarks>See documentation on MSDN for the Windows QueryDosDevice() method for more information.</remarks>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.Volume.QueryAllDosDevices">
+ <summary>
+ Retreives a list of all existing MS-DOS device names.
+ </summary>
+ <returns>A list of all existing MS-DOS device names.</returns>
+ <remarks>
+ <para>This is equivalent to calling <c>QueryDosDevice(null)</c></para>
+ <para>See documentation on MSDN for the Windows QueryDosDevice() method for more information.</para></remarks>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.Volume.GetDisplayNameForVolume(System.String)">
+ <summary>
+ Gets the shortest display name for the specified <paramref name="volume"/>.
+ </summary>
+ <param name="volumeName">The volume name.</param>
+ <returns>The shortest display name for the specified volume found, or <see langword="null"/> if no display names were found.</returns>
+ <exception cref="T:System.ArgumentNullException"><paramref name="volumeName"/> is a <see langword="null"/> reference</exception>
+ <exception cref="T:System.ComponentModel.Win32Exception">An error occured during a system call, such as the volume name specified was invalid or did not exist.</exception>
+ <remarks>This method basically returns the shortest string returned by <see cref="M:Alphaleonis.Win32.Filesystem.Volume.GetVolumePathNamesForVolume(System.String)"/></remarks>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.Volume.GetVolumePathNamesForVolume(System.String)">
+ <summary>
+ Retrieves a list of path names for the specified volume name.
+ </summary>
+ <param name="volumeName">The volume name.</param>
+ <returns>An array containing the path names for the specified volume.</returns>
+ <exception cref="T:System.ArgumentNullException"><paramref name="volumeName"/> is a <see langword="null"/> reference</exception>
+ <exception cref="T:System.IO.FileNotFoundException">The volume name specified was invalid, did not exist or was not ready.</exception>
+ <remarks>For more information about this method see the MSDN documentation on GetVolumePathNamesForVolumeName().</remarks>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.Volume.IsVolume(System.String)">
+ <summary>
+ Determines whether the specified volume name is a defined volume on the current computer.
+ </summary>
+ <param name="volumePath">A string representing the path to a volume (eg. "C:\", "D:", "P:\Mountpoint\Backup", "\\?\Volume{c0580d5e-2ad6-11dc-9924-806e6f6e6963}\"). A trailing backslash is required.</param>
+ <returns>
+ <c>true</c> if the specified volume is a defined volume; otherwise, <c>false</c>.
+ </returns>
+ <remarks>The trailing backslash is optional</remarks>
+ <exception cref="T:System.ArgumentNullException"><paramref name="volume"/> is a <see langword="null"/> reference</exception>
+ <exception cref="T:System.ComponentModel.Win32Exception">Upon error retreiving the volume name</exception>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.Volume.GetUniqueVolumeNameForVolumeMountPoint(System.String)">
+ <summary>
+ Retrieves the unique volume name for the specified volume mount point or root directory.
+ </summary>
+ <param name="mountPoint">The path of a volume mount point (with or without a trailing backslash, "\") or a drive letter indicating a root directory (eg. "C:" or "D:\"). A trailing backslash is required.</param>
+ <returns>The unique volume name of the form "\\?\Volume{GUID}\" where GUID is the GUID that identifies the volume.</returns>
+ <exception cref="T:System.ArgumentNullException"><paramref name="mountPoint"/> is a <see langword="null"/> reference</exception>
+ <exception cref="T:System.ArgumentException"><paramref name="mountPoint"/> is an empty string</exception>
+ <exception cref="T:System.ComponentModel.Win32Exception">Upon error retreiving the volume name</exception>
+ <remarks>See the MSDN documentation on the method GetVolumeNameForVolumeMountPoint() for more information.</remarks>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.Volume.GetUniqueVolumeNameForPath(System.String)">
+ <summary>
+ Retrieves the unique name of the volume mount point where the specified path is mounted.
+ </summary>
+ <param name="path">The input path. Both absolute and relative file and
+ directory names, for example ".", are acceptable in this path.
+ If you specify a relative directory or file name without a volume qualifier,
+ GetUniqueVolumeNameForPath returns the drive letter of the boot volume. A trailing backslash is required.</param>
+ <returns>The unique name of the volume mount point where the specified path is mounted</returns>
+ <remarks>See the MSDN documentation on the method GetVolumePathName() for more information.</remarks>
+ <exception cref="T:System.ArgumentNullException"><paramref name="path"/> is a <see langword="null"/> reference</exception>
+ <exception cref="T:System.ArgumentException"><paramref name="path"/> is an empty string</exception>
+ <exception cref="T:System.ComponentModel.Win32Exception">Upon error retreiving the volume name</exception>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.Volume.GetDeviceForVolumeName(System.String)">
+ <summary>
+ Retreives the Win32 device name from the volume name
+ </summary>
+ <param name="volumeName">Name of the volume. A trailing backslash is not allowed.</param>
+ <returns>The Win32 device name from the volume name</returns>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.Volume.GetDiskFreeSpace(System.String)">
+ <summary>
+ Retrieves information about the amount of space that is available on a disk volume,
+ which is the total amount of space, the total amount of free space, and the total amount of
+ free space available to the user that is associated with the calling thread.
+ </summary>
+ <param name="directory">A directory on the disk.
+ If this parameter is NULL, the function uses the root of the current disk.
+ If this parameter is a UNC name, it must include a trailing backslash, for example, "\\MyServer\MyShare\".
+ This parameter does not have to specify the root directory on a disk. The function accepts any directory on a disk.
+
+ The calling application must have FILE_LIST_DIRECTORY access rights for this directory.
+ </param>
+ <returns>A <see cref="T:Alphaleonis.Win32.Filesystem.DiskSpaceInfo"/> object containing the requested information.</returns>
+ </member>
+ <member name="T:Alphaleonis.Win32.Filesystem.SafeKernelTransactionHandle">
+ <summary>
+ Provides a concrete implementation of SafeHandle supporting transactions.
+ </summary>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.SafeKernelTransactionHandle.#ctor">
+ <summary>
+ Initializes a new instance of the <see cref="T:Alphaleonis.Win32.Filesystem.SafeKernelTransactionHandle"/> class.
+ </summary>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.SafeKernelTransactionHandle.ReleaseHandle">
+ <summary>
+ When overridden in a derived class, executes the code required to free the handle.
+ </summary>
+ <returns>
+ true if the handle is released successfully; otherwise, in the event of a catastrophic failure, false. In this case, it generates a ReleaseHandleFailed Managed Debugging Assistant.
+ </returns>
+ </member>
+ <member name="T:Alphaleonis.Win32.Filesystem.BackupStreamInfo">
+ <summary>
+ The <see cref="T:Alphaleonis.Win32.Filesystem.BackupStreamInfo"/> structure contains stream header data.
+ </summary>
+ <seealso cref="T:Alphaleonis.Win32.Filesystem.BackupFileStream"/>
+ </member>
+ <member name="M:Alphaleonis.Win32.Filesystem.BackupStreamInfo.#ctor(Alphaleonis.Win32.Filesystem.NativeMethods.WIN32_STREAM_ID,System.String)">
+ <summary>
+ Initializes a new instance of the <see cref="T:Alphaleonis.Win32.Filesystem.BackupStreamInfo"/> class.
+ </summary>
+ <param name="streamID">The stream ID.</param>
+ <param name="name">The name.</param>
+ </member>
+ <member name="P:Alphaleonis.Win32.Filesystem.BackupStreamInfo.Size">
+ <summary>
+ Gets the size of the data in the substream, in bytes.
+ </summary>
+ <value>The size of the data in the substream, in bytes.</value>
+ </member>
+ <member name="P:Alphaleonis.Win32.Filesystem.BackupStreamInfo.Name">
+ <summary>
+ Gets a string that specifies the name of the alternative data stream.
+ </summary>
+ <value>A string that specifies the name of the alternative data stream.</value>
+ </member>
+ <member name="P:Alphaleonis.Win32.Filesystem.BackupStreamInfo.StreamType">
+ <summary>
+ Gets the type of the data in the stream.
+ </summary>
+ <value>The type of the data in the stream.</value>
+ </member>
+ <member name="P:Alphaleonis.Win32.Filesystem.BackupStreamInfo.Attributes">
+ <summary>
+ Gets the attributes of the data to facilitate cross-operating system transfer.
+ </summary>
+ <value>Attributes of the data to facilitate cross-operating system transfer.</value>
+ </member>
+ <member name="T:Alphaleonis.Win32.Filesystem.FileSystemRights">
+ <summary>
+ Defines the access rights to use when creating access and audit rules.
+ </summary>
+ <remarks>
+ This enumeration has a <see cref="T:System.FlagsAttribute"/> attribute that allows a bitwise combination of its member values.
+ </remarks>
+ </member>
+ <member name="F:Alphaleonis.Win32.Filesystem.FileSystemRights.Read">
+ <summary>
+ Specifies the right to open and copy folders or files as read-only. This right includes the
+ <see cref="F:Alphaleonis.Win32.Filesystem.FileSystemRights.ReadData"/> right, <see cref="F:Alphaleonis.Win32.Filesystem.FileSystemRights.ReadExtendedAttributes"/> right, <see cref="F:Alphaleonis.Win32.Filesystem.FileSystemRights.ReadAttributes"/> right,
+ and <see cref="F:Alphaleonis.Win32.Filesystem.FileSystemRights.ReadPermissions"/> right.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Filesystem.FileSystemRights.Write">
+ <summary>
+ Specifies the right to create folders and files, and to add or remove data from files. This right includes the
+ <see cref="F:Alphaleonis.Win32.Filesystem.FileSystemRights.WriteData"/> right, <see cref="F:Alphaleonis.Win32.Filesystem.FileSystemRights.AppendData"/> right, <see cref="F:Alphaleonis.Win32.Filesystem.FileSystemRights.WriteExtendedAttributes"/> right, and <see cref="F:Alphaleonis.Win32.Filesystem.FileSystemRights.WriteAttributes"/> right.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Filesystem.FileSystemRights.ReadAndExecute">
+ <summary>
+ Specifies the right to open and copy folders or files as read-only, and to run application files.
+ This right includes the <see cref="F:Alphaleonis.Win32.Filesystem.FileSystemRights.Read"/> right and the <see cref="F:Alphaleonis.Win32.Filesystem.FileSystemRights.ExecuteFile"/> right.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Filesystem.FileSystemRights.Modify">
+ <summary>
+ Specifies the right to read, write, list folder contents, delete folders and files, and run application files.
+ This right includes the <see cref="F:Alphaleonis.Win32.Filesystem.FileSystemRights.ReadAndExecute"/> right, the <see cref="F:Alphaleonis.Win32.Filesystem.FileSystemRights.Write"/> right, and the <see cref="F:Alphaleonis.Win32.Filesystem.FileSystemRights.Delete"/> right.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Filesystem.FileSystemRights.ReadData">
+ <summary>
+ Specifies the right to open and copy a file or folder. This does not include the right to read file system attributes, extended file system attributes, or access and audit rules.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Filesystem.FileSystemRights.ListDirectory">
+ <summary>
+ Specifies the right to read the contents of a directory.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Filesystem.FileSystemRights.WriteData">
+ <summary>
+ Specifies the right to open and write to a file or folder. This does not include the right to open and write file system attributes, extended file system attributes, or access and audit rules.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Filesystem.FileSystemRights.CreateFiles">
+ <summary>
+ Specifies the right to create a file.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Filesystem.FileSystemRights.AppendData">
+ <summary>
+ Specifies the right to append data to the end of a file.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Filesystem.FileSystemRights.CreateDirectories">
+ <summary>
+ Specifies the right to create a folder.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Filesystem.FileSystemRights.ReadExtendedAttributes">
+ <summary>
+ Specifies the right to open and copy extended file system attributes from a folder or file. For example, this value specifies the right to view author and content information. This does not include the right to read data, file system attributes, or access and audit rules.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Filesystem.FileSystemRights.WriteExtendedAttributes">
+ <summary>
+ Specifies the right to open and write extended file system attributes to a folder or file. This does not include the ability to write data, attributes, or access and audit rules.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Filesystem.FileSystemRights.ExecuteFile">
+ <summary>
+ Specifies the right to run an application file.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Filesystem.FileSystemRights.Traverse">
+ <summary>
+ Specifies the right to list the contents of a folder and to run applications contained within that folder.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Filesystem.FileSystemRights.DeleteSubdirectoriesAndFiles">
+ <summary>
+ Specifies the right to delete a folder and any files contained within that folder.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Filesystem.FileSystemRights.ReadAttributes">
+ <summary>
+ Specifies the right to open and copy file system attributes from a folder or file. For example, this value specifies the right to view the file creation or modified date. This does not include the right to read data, extended file system attributes, or access and audit rules.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Filesystem.FileSystemRights.WriteAttributes">
+ <summary>
+ Specifies the right to open and write file system attributes to a folder or file. This does not include the ability to write data, extended attributes, or access and audit rules.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Filesystem.FileSystemRights.Delete">
+ <summary>
+ Specifies the right to delete a folder or file.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Filesystem.FileSystemRights.ReadPermissions">
+ <summary>
+ Specifies the right to open and copy access and audit rules from a folder or file. This does not include the right to read data, file system attributes, and extended file system attributes.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Filesystem.FileSystemRights.ChangePermissions">
+ <summary>
+ Specifies the right to change the security and audit rules associated with a file or folder.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Filesystem.FileSystemRights.TakeOwnership">
+ <summary>
+ Specifies the right to change the owner of a folder or file. Note that owners of a resource have full access to that resource.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Filesystem.FileSystemRights.Synchronize">
+ <summary>
+ Specifies whether the application can wait for a file handle to synchronize with the completion of an I/O operation.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Filesystem.FileSystemRights.FullControl">
+ <summary>
+ Specifies the right to exert full control over a folder or file, and to modify access control and audit rules.
+ This value represents the right to do anything with a file and is the combination of all rights in this enumeration except
+ for <see cref="F:Alphaleonis.Win32.Filesystem.FileSystemRights.SystemSecurity"/>
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Filesystem.FileSystemRights.SystemSecurity">
+ <summary>
+ The <see cref="F:Alphaleonis.Win32.Filesystem.FileSystemRights.SystemSecurity"/> access right controls the ability to get or set the SACL in an object's security
+ descriptor. The system grants this access right only if the <see cref="F:Alphaleonis.Win32.Security.Privilege.Security"/> privilege is enabled in the
+ access token of the requesting thread (see <see cref="T:Alphaleonis.Win32.Security.PrivilegeEnabler"/>).
+ </summary>
+ </member>
+ <member name="T:Alphaleonis.Win32.Filesystem.FileAttributes">
+ <summary>
+ The file attributes of a file.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Filesystem.FileAttributes.None">
+ <summary>
+ No attributes set.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Filesystem.FileAttributes.Archive">
+ <summary>
+ The file or directory is an archive file or directory. Applications use this attribute to mark files for backup or removal.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Filesystem.FileAttributes.Compressed">
+ <summary>
+ <para>The file or directory is compressed.</para>
+ <para>For a file, this means that all of the data in the file is compressed.</para>
+ <para>For a directory, this means that compression is the default for newly created files and subdirectories.</para>
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Filesystem.FileAttributes.Device">
+ <summary>
+ Reserved; do not use.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Filesystem.FileAttributes.Directory">
+ <summary>
+ The handle identifies a directory.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Filesystem.FileAttributes.Encrypted">
+ <summary>
+ <para>The file or directory is encrypted.</para>
+ <para>For a file, this means that all data in the file is encrypted.</para>
+ <para>For a directory, this means that encryption is the default for newly created files and subdirectories.</para>
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Filesystem.FileAttributes.Hidden">
+ <summary>
+ The file or directory is hidden. It is not included in an ordinary directory listing.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Filesystem.FileAttributes.Normal">
+ <summary>
+ The file or directory does not have other attributes set. This attribute is valid only when used alone.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Filesystem.FileAttributes.NotContentIndexed">
+ <summary>
+ The file is not to be indexed by the content indexing service.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Filesystem.FileAttributes.Offline">
+ <summary>
+ <para>The file data is not available immediately.</para>
+ <para>This attribute indicates that the file data is physically moved to offline storage.</para>
+ <para>This attribute is used by Remote Storage, which is the hierarchical storage management software.</para>
+ <para><b>Note</b> Applications should not arbitrarily change this attribute.</para>
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Filesystem.FileAttributes.ReadOnly">
+ <summary>
+ <para>The file or directory is read-only. </para>
+ <para>For a file, applications can read the file, but cannot write to it or delete it.</para>
+ <para>For a directory, applications cannot delete it.</para>
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Filesystem.FileAttributes.ReparsePoint">
+ <summary>
+ The file or directory has an associated reparse point.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Filesystem.FileAttributes.SparseFile">
+ <summary>
+ The file is a sparse file.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Filesystem.FileAttributes.System">
+ <summary>
+ The file or directory is part of the operating system, or the operating system uses the file or directory exclusively.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Filesystem.FileAttributes.Temporary">
+ <summary>
+ <para>The file is being used for temporary storage.</para>
+ <para>File systems attempt to keep all of the data in memory for quick access, rather than flushing it back to mass storage.</para>
+ <para>An application should delete a temporary file as soon as it is not needed.</para>
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Filesystem.FileAttributes.Virtual">
+ <summary>
+ The file is a virtual file.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Filesystem.FileAttributes.Invalid">
+ <summary>
+ Represents an invalid set of attributes.
+ </summary>
+ </member>
+ <member name="T:Alphaleonis.Win32.Filesystem.FileAccess">
+ <summary>
+ <para>Defines constants for read, write, or read/write access to a file.</para>
+ <para>This enumeration has a <see cref="T:System.FlagsAttribute"/> attribute that allows a bitwise combination of its member values.</para>
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Filesystem.FileAccess.None">
+ <summary>
+ No access to the file.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Filesystem.FileAccess.Read">
+ <summary>
+ Read access to the file. Data can be read from the file. Combine with Write for read/write access.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Filesystem.FileAccess.Write">
+ <summary>
+ Write access to the file. Data can be written to the file. Combine with Read for read/write access.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Filesystem.FileAccess.ReadWrite">
+ <summary>
+ Read and write access to the file. Data can be written to and read from the file.
+ </summary>
+ </member>
+ </members>
+</doc>
diff --git a/thirdparty/alphavss/Bin/AlphaFS.dll b/thirdparty/alphavss/Bin/AlphaFS.dll
new file mode 100644
index 000000000..7c0d96ca4
--- /dev/null
+++ b/thirdparty/alphavss/Bin/AlphaFS.dll
Binary files differ
diff --git a/thirdparty/alphavss/Bin/AlphaFS.dll.config b/thirdparty/alphavss/Bin/AlphaFS.dll.config
new file mode 100644
index 000000000..b7db28170
--- /dev/null
+++ b/thirdparty/alphavss/Bin/AlphaFS.dll.config
@@ -0,0 +1,3 @@
+<?xml version="1.0"?>
+<configuration>
+<startup><supportedRuntime version="v2.0.50727"/></startup></configuration>
diff --git a/thirdparty/alphavss/Bin/AlphaVSS.Common.dll b/thirdparty/alphavss/Bin/AlphaVSS.Common.dll
new file mode 100644
index 000000000..c07141ab9
--- /dev/null
+++ b/thirdparty/alphavss/Bin/AlphaVSS.Common.dll
Binary files differ
diff --git a/thirdparty/alphavss/Bin/AlphaVSS.Common.dll.config b/thirdparty/alphavss/Bin/AlphaVSS.Common.dll.config
new file mode 100644
index 000000000..b7db28170
--- /dev/null
+++ b/thirdparty/alphavss/Bin/AlphaVSS.Common.dll.config
@@ -0,0 +1,3 @@
+<?xml version="1.0"?>
+<configuration>
+<startup><supportedRuntime version="v2.0.50727"/></startup></configuration>
diff --git a/thirdparty/alphavss/Bin/AlphaVSS.Common.xml b/thirdparty/alphavss/Bin/AlphaVSS.Common.xml
new file mode 100644
index 000000000..85c97b411
--- /dev/null
+++ b/thirdparty/alphavss/Bin/AlphaVSS.Common.xml
@@ -0,0 +1,6936 @@
+<?xml version="1.0"?>
+<doc>
+ <assembly>
+ <name>AlphaVSS.Common</name>
+ </assembly>
+ <members>
+ <member name="T:Alphaleonis.Win32.Vss.VssUnexpectedProviderErrorException">
+ <summary>
+ Exception thrown to indicate that the provider returned an unexpected error code. This can be a transient problem.
+ </summary>
+ <remarks>
+ It is recommended to wait ten minutes and try again, up to three times.
+ </remarks>
+ </member>
+ <member name="T:Alphaleonis.Win32.Vss.VssException">
+ <summary>
+ Base class for exceptions indicating an error occuring during a VSS operation.
+ </summary>
+ </member>
+ <member name="M:Alphaleonis.Win32.Vss.VssException.#ctor">
+ <summary>
+ Initializes a new instance of the <see cref="T:Alphaleonis.Win32.Vss.VssException"/> class.
+ </summary>
+ </member>
+ <member name="M:Alphaleonis.Win32.Vss.VssException.#ctor(System.String)">
+ <summary>
+ Initializes a new instance of the <see cref="T:Alphaleonis.Win32.Vss.VssException"/> class with the specified error message.
+ </summary>
+ <param name="message">The error message.</param>
+ </member>
+ <member name="M:Alphaleonis.Win32.Vss.VssException.#ctor(System.String,System.Exception)">
+ <summary>
+ Initializes a new instance of the <see cref="T:Alphaleonis.Win32.Vss.VssException"/> class with the specified error message
+ and a reference to the inner exception that is the cause of this exception.
+ </summary>
+ <param name="message">The error message.</param>
+ <param name="innerException">The inner exception.</param>
+ </member>
+ <member name="M:Alphaleonis.Win32.Vss.VssException.#ctor(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">
+ <summary>
+ Initializes a new instance of the <see cref="T:Alphaleonis.Win32.Vss.VssException"/> class with serialized data.
+ </summary>
+ <param name="info">The <see cref="T:System.Runtime.Serialization.SerializationInfo"/> that holds the serialized object data about the exception being thrown.</param>
+ <param name="context">The <see cref="T:System.Runtime.Serialization.StreamingContext"/> that contains contextual information about the source or destination.</param>
+ <exception cref="T:System.ArgumentNullException">The <paramref name="info"/> parameter is null. </exception>
+ <exception cref="T:System.Runtime.Serialization.SerializationException">The class name is null or <see cref="P:System.Exception.HResult"/> is zero (0). </exception>
+ </member>
+ <member name="M:Alphaleonis.Win32.Vss.VssUnexpectedProviderErrorException.#ctor">
+ <summary>
+ Initializes a new instance of the <see cref="T:Alphaleonis.Win32.Vss.VssUnexpectedProviderErrorException"/>
+ class with a system-supplied message describing the error.
+ </summary>
+ </member>
+ <member name="M:Alphaleonis.Win32.Vss.VssUnexpectedProviderErrorException.#ctor(System.String)">
+ <summary>
+ Initializes a new instance of the <see cref="T:Alphaleonis.Win32.Vss.VssUnexpectedProviderErrorException"/> class with a specified error message.
+ </summary>
+ <param name="message">The message that describes the error</param>
+ </member>
+ <member name="M:Alphaleonis.Win32.Vss.VssUnexpectedProviderErrorException.#ctor(System.String,System.Exception)">
+ <summary>
+ Initializes a new instance of the <see cref="T:Alphaleonis.Win32.Vss.VssUnexpectedProviderErrorException"/> class with
+ a specified error message and a reference to the inner exception that is the cause of this exception.
+ </summary>
+ <param name="message">The message that describes the error</param>
+ <param name="innerException">The exception that is the cause of the current exception.</param>
+ </member>
+ <member name="M:Alphaleonis.Win32.Vss.VssUnexpectedProviderErrorException.#ctor(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">
+ <summary>
+ Initializes a new instance of the <see cref="T:Alphaleonis.Win32.Vss.VssUnexpectedProviderErrorException"/> class.
+ </summary>
+ <param name="info">The <see cref="T:System.Runtime.Serialization.SerializationInfo"/> that holds the serialized object data about the exception being thrown.</param>
+ <param name="context">The <see cref="T:System.Runtime.Serialization.StreamingContext"/> that contains contextual information about the source or destination.</param>
+ <exception cref="T:System.ArgumentNullException">The <paramref name="info"/> parameter is null. </exception>
+ <exception cref="T:System.Runtime.Serialization.SerializationException">The class name is null or <see cref="P:System.Exception.HResult"/> is zero (0). </exception>
+ </member>
+ <member name="T:Alphaleonis.Win32.Vss.VssInvalidXmlDocumentException">
+ <summary>
+ Exception thrown to indicate that the XML document is not valid. Check the event log for details.
+ </summary>
+ </member>
+ <member name="M:Alphaleonis.Win32.Vss.VssInvalidXmlDocumentException.#ctor">
+ <summary>
+ Initializes a new instance of the <see cref="T:Alphaleonis.Win32.Vss.VssInvalidXmlDocumentException"/>
+ class with a system-supplied message describing the error.
+ </summary>
+ </member>
+ <member name="M:Alphaleonis.Win32.Vss.VssInvalidXmlDocumentException.#ctor(System.String)">
+ <summary>
+ Initializes a new instance of the <see cref="T:Alphaleonis.Win32.Vss.VssInvalidXmlDocumentException"/> class with a specified error message.
+ </summary>
+ <param name="message">The message that describes the error</param>
+ </member>
+ <member name="M:Alphaleonis.Win32.Vss.VssInvalidXmlDocumentException.#ctor(System.String,System.Exception)">
+ <summary>
+ Initializes a new instance of the <see cref="T:Alphaleonis.Win32.Vss.VssInvalidXmlDocumentException"/> class with
+ a specified error message and a reference to the inner exception that is the cause of this exception.
+ </summary>
+ <param name="message">The message that describes the error</param>
+ <param name="innerException">The exception that is the cause of the current exception.</param>
+ </member>
+ <member name="M:Alphaleonis.Win32.Vss.VssInvalidXmlDocumentException.#ctor(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">
+ <summary>
+ Initializes a new instance of the <see cref="T:Alphaleonis.Win32.Vss.VssInvalidXmlDocumentException"/> class.
+ </summary>
+ <param name="info">The <see cref="T:System.Runtime.Serialization.SerializationInfo"/> that holds the serialized object data about the exception being thrown.</param>
+ <param name="context">The <see cref="T:System.Runtime.Serialization.StreamingContext"/> that contains contextual information about the source or destination.</param>
+ <exception cref="T:System.ArgumentNullException">The <paramref name="info"/> parameter is null. </exception>
+ <exception cref="T:System.Runtime.Serialization.SerializationException">The class name is null or <see cref="P:System.Exception.HResult"/> is zero (0). </exception>
+ </member>
+ <member name="T:Alphaleonis.Win32.Vss.VssHoldWritesTimeoutException">
+ <summary>
+ Exception thrown to indicate that the system was unable to hold I/O writes.
+ </summary>
+ <remarks>
+ This can be a transient problem. It is recommended to wait ten minutes and try again, up to three times.
+ </remarks>
+ </member>
+ <member name="M:Alphaleonis.Win32.Vss.VssHoldWritesTimeoutException.#ctor">
+ <summary>
+ Initializes a new instance of the <see cref="T:Alphaleonis.Win32.Vss.VssHoldWritesTimeoutException"/>
+ class with a system-supplied message describing the error.
+ </summary>
+ </member>
+ <member name="M:Alphaleonis.Win32.Vss.VssHoldWritesTimeoutException.#ctor(System.String)">
+ <summary>
+ Initializes a new instance of the <see cref="T:Alphaleonis.Win32.Vss.VssHoldWritesTimeoutException"/> class with a specified error message.
+ </summary>
+ <param name="message">The message that describes the error</param>
+ </member>
+ <member name="M:Alphaleonis.Win32.Vss.VssHoldWritesTimeoutException.#ctor(System.String,System.Exception)">
+ <summary>
+ Initializes a new instance of the <see cref="T:Alphaleonis.Win32.Vss.VssHoldWritesTimeoutException"/> class with
+ a specified error message and a reference to the inner exception that is the cause of this exception.
+ </summary>
+ <param name="message">The message that describes the error</param>
+ <param name="innerException">The exception that is the cause of the current exception.</param>
+ </member>
+ <member name="M:Alphaleonis.Win32.Vss.VssHoldWritesTimeoutException.#ctor(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">
+ <summary>
+ Initializes a new instance of the <see cref="T:Alphaleonis.Win32.Vss.VssHoldWritesTimeoutException"/> class.
+ </summary>
+ <param name="info">The <see cref="T:System.Runtime.Serialization.SerializationInfo"/> that holds the serialized object data about the exception being thrown.</param>
+ <param name="context">The <see cref="T:System.Runtime.Serialization.StreamingContext"/> that contains contextual information about the source or destination.</param>
+ <exception cref="T:System.ArgumentNullException">The <paramref name="info"/> parameter is null. </exception>
+ <exception cref="T:System.Runtime.Serialization.SerializationException">The class name is null or <see cref="P:System.Exception.HResult"/> is zero (0). </exception>
+ </member>
+ <member name="T:Alphaleonis.Win32.Vss.VssUsageType">
+ <summary>The <see cref="T:Alphaleonis.Win32.Vss.VssUsageType"/> enumeration specifies how the host system uses the data managed by a writer involved in a VSS operation.</summary>
+ <remarks>Requester applications that are interested in backing up system state should look for writers with the
+ <see cref="F:Alphaleonis.Win32.Vss.VssUsageType.BootableSystemState"/> or <see cref="F:Alphaleonis.Win32.Vss.VssUsageType.SystemService"/> usage type.</remarks>
+ </member>
+ <member name="F:Alphaleonis.Win32.Vss.VssUsageType.Undefined">
+ <summary><para>The usage type is not known.</para><para>This indicates an error on the part of the writer.</para></summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Vss.VssUsageType.BootableSystemState">
+ <summary>The data stored by the writer is part of the bootable system state.</summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Vss.VssUsageType.SystemService">
+ <summary>The writer either stores data used by a system service or is a system service itself.</summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Vss.VssUsageType.UserData">
+ <summary>The data is user data.</summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Vss.VssUsageType.Other">
+ <summary>Unclassified data.</summary>
+ </member>
+ <member name="T:Alphaleonis.Win32.Vss.VssPartialFileInfo">
+ <summary>
+ Representation of information on a partial file associated with a component.
+ </summary>
+ <remarks>See <see href="http://msdn.microsoft.com/en-us/library/aa383529(VS.85).aspx">MSDN documentation on IVssComponent::GetPartialFile Method</see> for more information.</remarks>
+ </member>
+ <member name="M:Alphaleonis.Win32.Vss.VssPartialFileInfo.#ctor(System.String,System.String,System.String,System.String)">
+ <summary>Initializes a new instance of the <see cref="T:Alphaleonis.Win32.Vss.VssPartialFileInfo"/> class</summary>
+ <param name="path">The path of the partial file.</param>
+ <param name="fileName">The name of the partial file.</param>
+ <param name="range">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.</param>
+ <param name="metadata">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 <see langword="null"/></param>
+ </member>
+ <member name="P:Alphaleonis.Win32.Vss.VssPartialFileInfo.Path">
+ <summary>
+ <para>
+ The path of the partial file.
+ </para>
+ <para>
+ Users of this public need to check to determine whether this path ends with a backslash ("\").
+ </para>
+ </summary>
+ </member>
+ <member name="P:Alphaleonis.Win32.Vss.VssPartialFileInfo.FileName">
+ <summary>The name of the partial file.</summary>
+ </member>
+ <member name="P:Alphaleonis.Win32.Vss.VssPartialFileInfo.Range">
+ <summary>
+ 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.
+ </summary>
+ </member>
+ <member name="P:Alphaleonis.Win32.Vss.VssPartialFileInfo.Metadata">
+ <summary>
+ <para>
+ 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.
+ </para>
+ <para>
+ Additional metadata is not required, so <see cref="P:Alphaleonis.Win32.Vss.VssPartialFileInfo.Metadata"/> may also be empty (zero length).
+ </para>
+ </summary>
+ </member>
+ <member name="T:Alphaleonis.Win32.Vss.Resources.LocalizedStrings">
+ <summary>
+ A strongly-typed resource class, for looking up localized strings, etc.
+ </summary>
+ </member>
+ <member name="P:Alphaleonis.Win32.Vss.Resources.LocalizedStrings.ResourceManager">
+ <summary>
+ Returns the cached ResourceManager instance used by this class.
+ </summary>
+ </member>
+ <member name="P:Alphaleonis.Win32.Vss.Resources.LocalizedStrings.Culture">
+ <summary>
+ Overrides the current thread's CurrentUICulture property for all
+ resource lookups using this strongly typed resource class.
+ </summary>
+ </member>
+ <member name="P:Alphaleonis.Win32.Vss.Resources.LocalizedStrings.AnUnexpectedErrorOccurredDuringCommunicationWithWriters">
+ <summary>
+ Looks up a localized string similar to An unexpected error occurred during communication with writers..
+ </summary>
+ </member>
+ <member name="P:Alphaleonis.Win32.Vss.Resources.LocalizedStrings.ExpectedProviderError">
+ <summary>
+ Looks up a localized string similar to Expected provider error. Check the event log for details..
+ </summary>
+ </member>
+ <member name="P:Alphaleonis.Win32.Vss.Resources.LocalizedStrings.InvalidXMLDocumentCheckTheEventLogForDetails">
+ <summary>
+ Looks up a localized string similar to Invalid XML document. Check the event log for details..
+ </summary>
+ </member>
+ <member name="P:Alphaleonis.Win32.Vss.Resources.LocalizedStrings.MaximumDiffAreaAssociationsReached">
+ <summary>
+ Looks up a localized string similar to The maximum number of shadow copy storage areas has been added to the shadow copy source volume..
+ </summary>
+ </member>
+ <member name="P:Alphaleonis.Win32.Vss.Resources.LocalizedStrings.NotSupportedUntilWin2003">
+ <summary>
+ Looks up a localized string similar to This method is not supported until Windows Server 2003.
+ </summary>
+ </member>
+ <member name="P:Alphaleonis.Win32.Vss.Resources.LocalizedStrings.RequestedOperationUnsupportedByOS">
+ <summary>
+ Looks up a localized string similar to The requested operation is not supported on the current operating system..
+ </summary>
+ </member>
+ <member name="P:Alphaleonis.Win32.Vss.Resources.LocalizedStrings.SystemWasUnableToFreezeDtcOrKtm">
+ <summary>
+ Looks up a localized string similar to System was unable to freeze the Distributed Transaction Coordinator (DTC) or the Kernel Transaction Manager (KTM).
+ </summary>
+ </member>
+ <member name="P:Alphaleonis.Win32.Vss.Resources.LocalizedStrings.TheCreationOfAShadowCopyIsAlreadyInProgress">
+ <summary>
+ Looks up a localized string similar to The creation of a shadow copy is already in progress..
+ </summary>
+ </member>
+ <member name="P:Alphaleonis.Win32.Vss.Resources.LocalizedStrings.TheMaximumNumberOfVolumesHasAlreadyBeenAddedToTheShadowCopySet">
+ <summary>
+ Looks up a localized string similar to The maximum number of volumes has already been added to the shadow copy set..
+ </summary>
+ </member>
+ <member name="P:Alphaleonis.Win32.Vss.Resources.LocalizedStrings.TheOperationIsNotSupportedUnderTheCurrentContext">
+ <summary>
+ Looks up a localized string similar to The operation is not supported under the current context..
+ </summary>
+ </member>
+ <member name="P:Alphaleonis.Win32.Vss.Resources.LocalizedStrings.TheProviderEncounteredAnErrorThatRequiresTheUserToRestartTheComputer">
+ <summary>
+ Looks up a localized string similar to The provider encountered an error that requires the user to restart the computer..
+ </summary>
+ </member>
+ <member name="P:Alphaleonis.Win32.Vss.Resources.LocalizedStrings.TheProviderReturnedAnUnexpectedErrorCode">
+ <summary>
+ Looks up a localized string similar to The provider returned an unexpected error code..
+ </summary>
+ </member>
+ <member name="P:Alphaleonis.Win32.Vss.Resources.LocalizedStrings.TheRequestedIdentifierDoesNotCorrespondToARegisteredProvider">
+ <summary>
+ Looks up a localized string similar to The requested identifier does not correspond to a registered provider..
+ </summary>
+ </member>
+ <member name="P:Alphaleonis.Win32.Vss.Resources.LocalizedStrings.TheRequestedObjectDoesNotExist">
+ <summary>
+ Looks up a localized string similar to The requested object does not exist..
+ </summary>
+ </member>
+ <member name="P:Alphaleonis.Win32.Vss.Resources.LocalizedStrings.TheRequestedObjectWasADuplicate">
+ <summary>
+ Looks up a localized string similar to The requested object was a duplicate..
+ </summary>
+ </member>
+ <member name="P:Alphaleonis.Win32.Vss.Resources.LocalizedStrings.TheSystemOrProviderHasInsufficientStorageSpace">
+ <summary>
+ 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..
+ </summary>
+ </member>
+ <member name="P:Alphaleonis.Win32.Vss.Resources.LocalizedStrings.TheSystemWasUnableToFlushIOWrites">
+ <summary>
+ 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..
+ </summary>
+ </member>
+ <member name="P:Alphaleonis.Win32.Vss.Resources.LocalizedStrings.TheSystemWasUnableToHoldIOWrites">
+ <summary>
+ 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.
+ </summary>
+ </member>
+ <member name="P:Alphaleonis.Win32.Vss.Resources.LocalizedStrings.TheVolumeAlreadyHasARevertInProgress">
+ <summary>
+ Looks up a localized string similar to The volume already has a revert in progress..
+ </summary>
+ </member>
+ <member name="P:Alphaleonis.Win32.Vss.Resources.LocalizedStrings.TheVolumeDoesNotSupportTheRequestedOperation">
+ <summary>
+ Looks up a localized string similar to The volume does not support the requested operation, or no provider supports it..
+ </summary>
+ </member>
+ <member name="P:Alphaleonis.Win32.Vss.Resources.LocalizedStrings.TheVolumeHasAlreadyBeenAddedToTheMaximumNumberOfShadowCopySets">
+ <summary>
+ Looks up a localized string similar to The volume has already been added to the maximum number of shadow copy sets..
+ </summary>
+ </member>
+ <member name="P:Alphaleonis.Win32.Vss.Resources.LocalizedStrings.TheVolumeIsNotSupportedByTheSpecifiedProvider">
+ <summary>
+ Looks up a localized string similar to The volume is not supported by the specified provider..
+ </summary>
+ </member>
+ <member name="P:Alphaleonis.Win32.Vss.Resources.LocalizedStrings.TheVolumeWasInUseAndCouldNotBeLocked">
+ <summary>
+ Looks up a localized string similar to The volume was in use and could not be locked..
+ </summary>
+ </member>
+ <member name="P:Alphaleonis.Win32.Vss.Resources.LocalizedStrings.TheVSSObjectWasInAnIncorrectStateForTheRequestedOperation">
+ <summary>
+ Looks up a localized string similar to The VSS object was in an incorrect state for the requested operation..
+ </summary>
+ </member>
+ <member name="P:Alphaleonis.Win32.Vss.Resources.LocalizedStrings.TheWriterInfrastructureIsNotOperatingProperly">
+ <summary>
+ 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..
+ </summary>
+ </member>
+ <member name="P:Alphaleonis.Win32.Vss.Resources.LocalizedStrings.ThisOperationRequires01DetectedOperatingSystemWas23">
+ <summary>
+ Looks up a localized string similar to This operation requires {0}{1}. Detected operating system was: {2}{3}..
+ </summary>
+ </member>
+ <member name="P:Alphaleonis.Win32.Vss.Resources.LocalizedStrings.ThisOperationRequires01OrLaterDetectedOperatingSystemWas23">
+ <summary>
+ Looks up a localized string similar to This operation requires {0}{1} or later. Detected operating system was: {2}{3}..
+ </summary>
+ </member>
+ <member name="P:Alphaleonis.Win32.Vss.Resources.LocalizedStrings.ThisOperationRequires0DetectedOperatingSystemWas1">
+ <summary>
+ Looks up a localized string similar to This operation requires {0}. Detected operating system was: {1}..
+ </summary>
+ </member>
+ <member name="P:Alphaleonis.Win32.Vss.Resources.LocalizedStrings.ThisOperationRequires0OrLaterDetectedOperatingSystemWas1">
+ <summary>
+ Looks up a localized string similar to This operation requires {0} or later. Detected operating system was: {1}..
+ </summary>
+ </member>
+ <member name="P:Alphaleonis.Win32.Vss.Resources.LocalizedStrings.ThisOperationRequires0WithAtLeastServicePack1DetectedOperatingSystemWas23">
+ <summary>
+ Looks up a localized string similar to This operation requires {0} with at least Service Pack {1}. Detected operating system was: {2}{3}..
+ </summary>
+ </member>
+ <member name="P:Alphaleonis.Win32.Vss.Resources.LocalizedStrings.ThisOperationRequires0WithAtLeastServicePack1Or2WithAtLeastServicePack3DetectedOperatingSystemWas45">
+ <summary>
+ 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}..
+ </summary>
+ </member>
+ <member name="P:Alphaleonis.Win32.Vss.Resources.LocalizedStrings.UnexpectedSystemError">
+ <summary>
+ Looks up a localized string similar to Unexpected system error..
+ </summary>
+ </member>
+ <member name="T:Alphaleonis.Win32.Vss.IVssComponent">
+ <summary>
+ <para>
+ Interface containing methods for examining and modifying information about components contained in a requester's Backup Components Document.
+ </para>
+ </summary>
+ <remarks>
+ <para>
+ <see cref="T:Alphaleonis.Win32.Vss.IVssComponent"/> objects can be obtained only for those components that have been explicitly added
+ to the Backup Components Document during a backup operation by the <see cref="M:Alphaleonis.Win32.Vss.IVssBackupComponents.AddComponent(System.Guid,System.Guid,Alphaleonis.Win32.Vss.VssComponentType,System.String,System.String)"/>
+ method.
+ </para>
+ <para>
+ Information about components explicitly added during a restore operation using
+ <see cref="M:Alphaleonis.Win32.Vss.IVssBackupComponents.AddRestoreSubcomponent(System.Guid,Alphaleonis.Win32.Vss.VssComponentType,System.String,System.String,System.String,System.String)"/> are not available through the <see cref="T:Alphaleonis.Win32.Vss.IVssComponent"/>
+ interface.
+ </para>
+ <para>
+ For more information, see <see href="http://msdn.microsoft.com/en-us/library/aa382871(VS.85).aspx">the MSDN documentation on
+ the IVssComponent Interface</see>.
+ </para>
+ </remarks>
+ </member>
+ <member name="P:Alphaleonis.Win32.Vss.IVssComponent.AdditionalRestores">
+ <summary>
+ The <see cref="P:Alphaleonis.Win32.Vss.IVssComponent.AdditionalRestores"/> 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.
+ </summary>
+ <value>
+ If <see langword="true"/>, additional restores will occur for the
+ current component. If <see langword="false"/>, additional restores will not occur.
+ </value>
+ </member>
+ <member name="P:Alphaleonis.Win32.Vss.IVssComponent.BackupOptions">
+ <summary>
+ <para>
+ The backup options specified to the writer that manages the currently selected component or component set
+ by a requester using <see cref="M:Alphaleonis.Win32.Vss.IVssBackupComponents.SetBackupOptions(System.Guid,Alphaleonis.Win32.Vss.VssComponentType,System.String,System.String,System.String)"/>.
+ </para>
+ </summary>
+ <value>The backup options for the current writer.</value>
+ </member>
+ <member name="P:Alphaleonis.Win32.Vss.IVssComponent.BackupStamp">
+ <summary>The backup stamp string stored by a writer for a given component.</summary>
+ <value>The backup stamp indicating the time at which the component was backed up.</value>
+ </member>
+ <member name="P:Alphaleonis.Win32.Vss.IVssComponent.BackupSucceeded">
+ <summary>
+ The status of a complete attempt at backing up all the files of a selected component or component set as a
+ <see cref="T:Alphaleonis.Win32.Vss.VssFileRestoreStatus"/> enumeration.
+ </summary>
+ <value>
+ <see langword="true"/> if the backup was successful and <see langword="false"/> if it was not.
+ </value>
+ </member>
+ <member name="P:Alphaleonis.Win32.Vss.IVssComponent.ComponentName">
+ <summary>The logical name of this component.</summary>
+ <value>The logical name of this component.</value>
+ </member>
+ <member name="P:Alphaleonis.Win32.Vss.IVssComponent.ComponentType">
+ <summary>The type of this component in terms of the <see cref="P:Alphaleonis.Win32.Vss.IVssComponent.ComponentType"/> enumeration.</summary>
+ <value>The type of this component.</value>
+ </member>
+ <member name="P:Alphaleonis.Win32.Vss.IVssComponent.FileRestoreStatus">
+ <summary>
+ The status of a completed attempt to restore all the files of a selected component or component set
+ as a <see cref="T:Alphaleonis.Win32.Vss.VssFileRestoreStatus"/> enumeration.
+ </summary>
+ <value>
+ A value of the <see cref="T:Alphaleonis.Win32.Vss.VssFileRestoreStatus"/> enumeration that specifies whether all files were successfully restored.
+ </value>
+ </member>
+ <member name="P:Alphaleonis.Win32.Vss.IVssComponent.LogicalPath">
+ <summary>The logical path of this component.</summary>
+ <value>The logical path of this component.</value>
+ </member>
+ <member name="P:Alphaleonis.Win32.Vss.IVssComponent.PostRestoreFailureMsg">
+ <summary>The failure message generated by a writer while handling the <c>PostRestore</c> event if one was set.</summary>
+ <value>The failure message that describes an error that occurred while processing the <c>PostRestore</c> event.</value>
+ </member>
+ <member name="P:Alphaleonis.Win32.Vss.IVssComponent.PreRestoreFailureMsg">
+ <summary>The failure message generated by a writer while handling the <c>PreRestore</c> event if one was set.</summary>
+ <value>The failure message that describes an error that occurred while processing the <c>PreRestore</c> event.</value>
+ </member>
+ <member name="P:Alphaleonis.Win32.Vss.IVssComponent.PreviousBackupStamp">
+ <summary>
+ 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.
+ </summary>
+ <value>
+ The time stamp of a previous backup so that a differential or incremental backup can be correctly implemented.
+ </value>
+ </member>
+ <member name="P:Alphaleonis.Win32.Vss.IVssComponent.RestoreOptions">
+ <summary>The restore options specified to the current writer by a requester using
+ <see cref="M:Alphaleonis.Win32.Vss.IVssBackupComponents.SetRestoreOptions(System.Guid,Alphaleonis.Win32.Vss.VssComponentType,System.String,System.String,System.String)"/>.</summary>
+ <value>The restore options of the writer.</value>
+ </member>
+ <member name="P:Alphaleonis.Win32.Vss.IVssComponent.RestoreTarget">
+ <summary>The restore target (in terms of the <see cref="T:Alphaleonis.Win32.Vss.VssRestoreTarget"/> enumeration) for the current component. Can only be called during a restore operation.</summary>
+ <value>A value from the <see cref="T:Alphaleonis.Win32.Vss.VssRestoreTarget"/> enumeration containing the restore target information.</value>
+ </member>
+ <member name="P:Alphaleonis.Win32.Vss.IVssComponent.IsSelectedForRestore">
+ <summary>Determines whether the current component has been selected to be restored.</summary>
+ <value>If the returned value of this parameter is <see langword="true"/>, the component has been selected to be restored. If <see langword="false"/>, it has not been selected.</value>
+ </member>
+ <member name="P:Alphaleonis.Win32.Vss.IVssComponent.AlternateLocationMappings">
+ <summary>A collection of mapping information for the file set's alternate location for file restoration.</summary>
+ <value>A read-only list containing the alternate location to which files were actually restored. <note type="caution">This list must not be accessed after the <see cref="T:Alphaleonis.Win32.Vss.IVssComponent"/> from which it was obtained has been disposed.</note></value>
+ <remarks>See <see href="http://msdn.microsoft.com/en-us/library/aa383473(VS.85).aspx">the MSDN documentation on the IVssComponent::GetAlternateLocationMapping method</see> for more information.</remarks>
+ </member>
+ <member name="P:Alphaleonis.Win32.Vss.IVssComponent.DirectedTargets">
+ <summary>
+ 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.
+ </summary>
+ <value>A read-only list containing the directed targets of this component. <note type="caution">This list must not be accessed after the <see cref="T:Alphaleonis.Win32.Vss.IVssComponent"/> from which it was obtained has been disposed.</note></value>
+ </member>
+ <member name="P:Alphaleonis.Win32.Vss.IVssComponent.NewTargets">
+ <summary>
+ The new file restoration locations for the selected component or component set.
+ </summary>
+ <value>A read-only list contianing the new file restoration locations for the selected component or component set. <note type="caution">This list must not be accessed after the <see cref="T:Alphaleonis.Win32.Vss.IVssComponent"/> from which it was obtained has been disposed.</note></value>
+ </member>
+ <member name="P:Alphaleonis.Win32.Vss.IVssComponent.PartialFiles">
+ <summary>
+ Information about any partial files associated with this component.
+ </summary>
+ <value>A read-only list containing information about any partial files associated with this component. <note type="caution">This list must not be accessed after the <see cref="T:Alphaleonis.Win32.Vss.IVssComponent"/> from which it was obtained has been disposed.</note></value>
+ </member>
+ <member name="P:Alphaleonis.Win32.Vss.IVssComponent.DifferencedFiles">
+ <summary>
+ 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).
+ </summary>
+ <remarks><b>Windows XP:</b> This method requires Windows Server 2003 or later</remarks>
+ <value>
+ A read only list containing the diffrenced files associated with this component. <note type="caution">This list must not be accessed after the <see cref="T:Alphaleonis.Win32.Vss.IVssComponent"/> from which it was obtained has been disposed.</note>
+ </value>
+ </member>
+ <member name="P:Alphaleonis.Win32.Vss.IVssComponent.RestoreSubcomponents">
+ <summary>The subcomponents associated with this component.</summary>
+ <value>A read only list containing the subcomponents associated with this component. <note type="caution">This list must not be accessed after the <see cref="T:Alphaleonis.Win32.Vss.IVssComponent"/> from which it was obtained has been disposed.</note></value>
+ </member>
+ <member name="P:Alphaleonis.Win32.Vss.IVssComponent.IsAuthoritativeRestore">
+ <summary>
+ Gets a value indicating whether a requester has marked the restore of a component as authoritative for a replicated data store.
+ </summary>
+ <value>
+ <see langword="true"/> if the restore is authoritative; otherwise, <see langword="false"/>.
+ </value>
+ <remarks>
+ <para>
+ A writer indicates that it supports authoritative restore by setting the
+ <see cref="F:Alphaleonis.Win32.Vss.VssBackupSchema.AuthoritativeRestore"/> flag in its backup schema mask.
+ </para>
+ <para>
+ For more information, see <see href="http://msdn.microsoft.com/en-us/library/aa384610(VS.85).aspx">Setting VSS Restore Options.</see>
+ </para>
+ <para>
+ <note>
+ <para>
+ <b>Windows XP and Windows 2003:</b> This property requires Windows Vista or later and will always return <see langword="false"/>
+ on unsupported operating systems.
+ </para>
+ </note>
+ </para>
+ </remarks>
+ </member>
+ <member name="P:Alphaleonis.Win32.Vss.IVssComponent.PostSnapshotFailureMsg">
+ <summary>
+ Gets the <c>PostSnapshot</c> failure message string that a writer has set for a given component.
+ </summary>
+ <remarks>
+ <para>
+ Both writers and requesters can call this method.
+ </para>
+ <para>
+ <note>
+ <para>
+ <b>Windows XP and Windows 2003:</b> This property requires Windows Vista or later and will always return <see langword="false"/>
+ on unsupported operating systems.
+ </para>
+ </note>
+ </para>
+ </remarks>
+ <value>A string containing the failure message that describes an error that occurred while processing a PostSnapshot event, or <see langword="null"/>
+ if no value was set or the method is not supported on the current operating system.</value>
+ </member>
+ <member name="P:Alphaleonis.Win32.Vss.IVssComponent.PrepareForBackupFailureMsg">
+ <summary>
+ Gets the <c>PrepareForBackup</c> failure message string that a writer has set for a given component.
+ </summary>
+ <value>A string containing the failure message that describes an error that occurred while processing a PrepareForBackup event,
+ or <see langword="null"/> if no failure message was set for this component, or if the property is not supported on the
+ current operating system.</value>
+ <remarks>
+ <para>
+ Both writers and requesters can call this method.
+ </para>
+ <para>
+ <note>
+ <para>
+ <b>Windows XP and Windows 2003:</b> This property requires Windows Vista or later and will always return <see langword="false"/>
+ on unsupported operating systems.
+ </para>
+ </note>
+ </para>
+ </remarks>
+ </member>
+ <member name="P:Alphaleonis.Win32.Vss.IVssComponent.RestoreName">
+ <summary>
+ Obtains the logical name assigned to a component that is being restored.
+ </summary>
+ <value>
+ A string containing the restore name for the component, or <see langword="null"/> if the operation
+ is not supported on the current operating system.
+ </value>
+ <remarks>
+ <para>
+ The <see cref="P:Alphaleonis.Win32.Vss.IVssComponent.RestoreName"/> property can only be accessed during a restore operation.
+ </para>
+ <para>
+ A writer indicates that it supports this method by setting the <see cref="F:Alphaleonis.Win32.Vss.VssBackupSchema.RestoreRename"/>
+ flag in its backup schema mask.
+ </para>
+ <para>
+ For more information, see <see href="http://msdn.microsoft.com/en-us/library/aa384610(VS.85).aspx">
+ Setting VSS Restore Options</see>.
+ </para>
+ <para>
+ <note>
+ <para>
+ <b>Windows XP and Windows 2003:</b> This property requires Windows Vista or later and will always return <see langword="false"/>
+ on unsupported operating systems.
+ </para>
+ </note>
+ </para>
+ </remarks>
+ </member>
+ <member name="P:Alphaleonis.Win32.Vss.IVssComponent.RollForwardRestorePoint">
+ <summary>
+ Obtains the restore point for a partial roll-forward operation.
+ </summary>
+ <value>
+ A string specifying the roll-forward restore point,
+ or <see langword="null"/> if the property is not supported in the current context.
+ </value>
+ <remarks>
+ <para>
+ The <see cref="P:Alphaleonis.Win32.Vss.IVssComponent.RollForwardRestorePoint"/> property can only be accessed during a restore operation.
+ </para>
+ <para>
+ A writer indicates that it supports this method by setting the <see cref="F:Alphaleonis.Win32.Vss.VssBackupSchema.RollForwardRestore"/>
+ flag in its backup schema mask.
+ </para>
+ <para>
+ For more information, see <see href="http://msdn.microsoft.com/en-us/library/aa384610(VS.85).aspx">
+ Setting VSS Restore Options</see>.
+ </para>
+ <para>
+ <note>
+ <para>
+ <b>Windows XP and Windows 2003:</b> This property requires Windows Vista or later and will always return <see cref="F:Alphaleonis.Win32.Vss.VssRollForwardType.Undefined"/>
+ on unsupported operating systems.
+ </para>
+ </note>
+ </para>
+ </remarks>
+ </member>
+ <member name="P:Alphaleonis.Win32.Vss.IVssComponent.RollForwardType">
+ <summary>
+ Obtains the roll-forward operation type for a component.
+ </summary>
+ <value>
+ A <see cref="T:Alphaleonis.Win32.Vss.VssRollForwardType"/> enumeration value indicating the type of roll-forward operation to be performed,
+ or <see cref="F:Alphaleonis.Win32.Vss.VssRollForwardType.Undefined"/> if the property is not supported in the current context.
+ </value>
+ <remarks>
+ <para>
+ The <see cref="P:Alphaleonis.Win32.Vss.IVssComponent.RollForwardType"/> property can only be accessed during a restore operation.
+ </para>
+ <para>
+ A writer indicates that it supports this method by setting the <see cref="F:Alphaleonis.Win32.Vss.VssBackupSchema.RollForwardRestore"/>
+ flag in its backup schema mask.
+ </para>
+ <para>
+ For more information, see <see href="http://msdn.microsoft.com/en-us/library/aa384610(VS.85).aspx">
+ Setting VSS Restore Options</see>.
+ </para>
+ <para>
+ <note>
+ <para>
+ <b>Windows XP and Windows 2003:</b> This property requires Windows Vista or later and will always return <see cref="F:Alphaleonis.Win32.Vss.VssRollForwardType.Undefined"/>
+ on unsupported operating systems.
+ </para>
+ </note>
+ </para>
+ </remarks>
+ </member>
+ <member name="T:Alphaleonis.Win32.Vss.VssVolumeNotSupportedException">
+ <summary>
+ Exception thrown to indicate that the volume does not support the requested operation, or that no provider supports it.
+ </summary>
+ </member>
+ <member name="M:Alphaleonis.Win32.Vss.VssVolumeNotSupportedException.#ctor">
+ <summary>
+ Initializes a new instance of the <see cref="T:Alphaleonis.Win32.Vss.VssVolumeNotSupportedException"/>
+ class with a system-supplied message describing the error.
+ </summary>
+ </member>
+ <member name="M:Alphaleonis.Win32.Vss.VssVolumeNotSupportedException.#ctor(System.String)">
+ <summary>
+ Initializes a new instance of the <see cref="T:Alphaleonis.Win32.Vss.VssVolumeNotSupportedException"/> class with a specified error message.
+ </summary>
+ <param name="message">The message that describes the error</param>
+ </member>
+ <member name="M:Alphaleonis.Win32.Vss.VssVolumeNotSupportedException.#ctor(System.String,System.Exception)">
+ <summary>
+ Initializes a new instance of the <see cref="T:Alphaleonis.Win32.Vss.VssVolumeNotSupportedException"/> class with
+ a specified error message and a reference to the inner exception that is the cause of this exception.
+ </summary>
+ <param name="message">The message that describes the error</param>
+ <param name="innerException">The exception that is the cause of the current exception.</param>
+ </member>
+ <member name="M:Alphaleonis.Win32.Vss.VssVolumeNotSupportedException.#ctor(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">
+ <summary>
+ Initializes a new instance of the <see cref="T:Alphaleonis.Win32.Vss.VssVolumeNotSupportedException"/> class.
+ </summary>
+ <param name="info">The <see cref="T:System.Runtime.Serialization.SerializationInfo"/> that holds the serialized object data about the exception being thrown.</param>
+ <param name="context">The <see cref="T:System.Runtime.Serialization.StreamingContext"/> that contains contextual information about the source or destination.</param>
+ <exception cref="T:System.ArgumentNullException">The <paramref name="info"/> parameter is null. </exception>
+ <exception cref="T:System.Runtime.Serialization.SerializationException">The class name is null or <see cref="P:System.Exception.HResult"/> is zero (0). </exception>
+ </member>
+ <member name="T:Alphaleonis.Win32.Vss.VssProviderNotRegisteredException">
+ <summary>
+ Exception thrown to indicate that the requested identifier does not correspond to a registered provider.
+ </summary>
+ </member>
+ <member name="M:Alphaleonis.Win32.Vss.VssProviderNotRegisteredException.#ctor">
+ <summary>
+ Initializes a new instance of the <see cref="T:Alphaleonis.Win32.Vss.VssProviderNotRegisteredException"/>
+ class with a system-supplied message describing the error.
+ </summary>
+ </member>
+ <member name="M:Alphaleonis.Win32.Vss.VssProviderNotRegisteredException.#ctor(System.String)">
+ <summary>
+ Initializes a new instance of the <see cref="T:Alphaleonis.Win32.Vss.VssProviderNotRegisteredException"/> class with a specified error message.
+ </summary>
+ <param name="message">The message that describes the error</param>
+ </member>
+ <member name="M:Alphaleonis.Win32.Vss.VssProviderNotRegisteredException.#ctor(System.String,System.Exception)">
+ <summary>
+ Initializes a new instance of the <see cref="T:Alphaleonis.Win32.Vss.VssProviderNotRegisteredException"/> class with
+ a specified error message and a reference to the inner exception that is the cause of this exception.
+ </summary>
+ <param name="message">The message that describes the error</param>
+ <param name="innerException">The exception that is the cause of the current exception.</param>
+ </member>
+ <member name="M:Alphaleonis.Win32.Vss.VssProviderNotRegisteredException.#ctor(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">
+ <summary>
+ Initializes a new instance of the <see cref="T:Alphaleonis.Win32.Vss.VssProviderNotRegisteredException"/> class.
+ </summary>
+ <param name="info">The <see cref="T:System.Runtime.Serialization.SerializationInfo"/> that holds the serialized object data about the exception being thrown.</param>
+ <param name="context">The <see cref="T:System.Runtime.Serialization.StreamingContext"/> that contains contextual information about the source or destination.</param>
+ <exception cref="T:System.ArgumentNullException">The <paramref name="info"/> parameter is null. </exception>
+ <exception cref="T:System.Runtime.Serialization.SerializationException">The class name is null or <see cref="P:System.Exception.HResult"/> is zero (0). </exception>
+ </member>
+ <member name="T:Alphaleonis.Win32.Vss.VssMaximumNumberOfVolumesReachedException">
+ <summary>
+ 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.
+ </summary>
+ </member>
+ <member name="M:Alphaleonis.Win32.Vss.VssMaximumNumberOfVolumesReachedException.#ctor">
+ <summary>
+ Initializes a new instance of the <see cref="T:Alphaleonis.Win32.Vss.VssMaximumNumberOfVolumesReachedException"/>
+ class with a system-supplied message describing the error.
+ </summary>
+ </member>
+ <member name="M:Alphaleonis.Win32.Vss.VssMaximumNumberOfVolumesReachedException.#ctor(System.String)">
+ <summary>
+ Initializes a new instance of the <see cref="T:Alphaleonis.Win32.Vss.VssMaximumNumberOfVolumesReachedException"/> class with a specified error message.
+ </summary>
+ <param name="message">The message that describes the error</param>
+ </member>
+ <member name="M:Alphaleonis.Win32.Vss.VssMaximumNumberOfVolumesReachedException.#ctor(System.String,System.Exception)">
+ <summary>
+ Initializes a new instance of the <see cref="T:Alphaleonis.Win32.Vss.VssMaximumNumberOfVolumesReachedException"/> class with
+ a specified error message and a reference to the inner exception that is the cause of this exception.
+ </summary>
+ <param name="message">The message that describes the error</param>
+ <param name="innerException">The exception that is the cause of the current exception.</param>
+ </member>
+ <member name="M:Alphaleonis.Win32.Vss.VssMaximumNumberOfVolumesReachedException.#ctor(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">
+ <summary>
+ Initializes a new instance of the <see cref="T:Alphaleonis.Win32.Vss.VssMaximumNumberOfVolumesReachedException"/> class.
+ </summary>
+ <param name="info">The <see cref="T:System.Runtime.Serialization.SerializationInfo"/> that holds the serialized object data about the exception being thrown.</param>
+ <param name="context">The <see cref="T:System.Runtime.Serialization.StreamingContext"/> that contains contextual information about the source or destination.</param>
+ <exception cref="T:System.ArgumentNullException">The <paramref name="info"/> parameter is null. </exception>
+ <exception cref="T:System.Runtime.Serialization.SerializationException">The class name is null or <see cref="P:System.Exception.HResult"/> is zero (0). </exception>
+ </member>
+ <member name="T:Alphaleonis.Win32.Vss.VssDeleteSnapshotsFailedException">
+ <summary>
+ Exception thrown to indicate that the requested deletion of snapshots did not complete successfully.
+ </summary>
+ <remarks>
+ 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.
+ </remarks>
+ </member>
+ <member name="M:Alphaleonis.Win32.Vss.VssDeleteSnapshotsFailedException.#ctor">
+ <summary>
+ Initializes a new instance of the <see cref="T:Alphaleonis.Win32.Vss.VssDeleteSnapshotsFailedException"/> class.
+ </summary>
+ </member>
+ <member name="M:Alphaleonis.Win32.Vss.VssDeleteSnapshotsFailedException.#ctor(System.String)">
+ <summary>
+ Initializes a new instance of the <see cref="T:Alphaleonis.Win32.Vss.VssDeleteSnapshotsFailedException"/> class with the specified error message.
+ </summary>
+ <param name="message">The error message.</param>
+ </member>
+ <member name="M:Alphaleonis.Win32.Vss.VssDeleteSnapshotsFailedException.#ctor(System.String,System.Exception)">
+ <summary>
+ Initializes a new instance of the <see cref="T:Alphaleonis.Win32.Vss.VssDeleteSnapshotsFailedException"/> class with the specified error message and a reference
+ to the exception causing this exception to be thrown.
+ </summary>
+ <param name="message">The error message.</param>
+ <param name="innerException">The inner exception.</param>
+ </member>
+ <member name="M:Alphaleonis.Win32.Vss.VssDeleteSnapshotsFailedException.#ctor(System.Int32,System.Guid,System.Exception)">
+ <summary>
+ Initializes a new instance of the <see cref="T:Alphaleonis.Win32.Vss.VssDeleteSnapshotsFailedException"/> 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.
+ </summary>
+ <param name="deletedSnapshotsCount">The number of successfully deleted snapshots.</param>
+ <param name="nonDeletedSnapshotId">The id of the non deleted snapshot, or <see cref="F:System.Guid.Empty"/> if such information is not available.</param>
+ <param name="innerException">The inner exception.</param>
+ </member>
+ <member name="M:Alphaleonis.Win32.Vss.VssDeleteSnapshotsFailedException.#ctor(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">
+ <summary>
+ Initializes a new instance of the <see cref="T:Alphaleonis.Win32.Vss.VssDeleteSnapshotsFailedException"/> class.
+ </summary>
+ <param name="info">The <see cref="T:System.Runtime.Serialization.SerializationInfo"/> that holds the serialized object data about the exception being thrown.</param>
+ <param name="context">The <see cref="T:System.Runtime.Serialization.StreamingContext"/> that contains contextual information about the source or destination.</param>
+ <exception cref="T:System.ArgumentNullException">The <paramref name="info"/> parameter is null. </exception>
+ <exception cref="T:System.Runtime.Serialization.SerializationException">The class name is null or <see cref="P:System.Exception.HResult"/> is zero (0). </exception>
+ </member>
+ <member name="M:Alphaleonis.Win32.Vss.VssDeleteSnapshotsFailedException.GetObjectData(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">
+ <summary>
+ Sets the <see cref="T:System.Runtime.Serialization.SerializationInfo"/> with information about the exception.
+ </summary>
+ <param name="info">The <see cref="T:System.Runtime.Serialization.SerializationInfo"/> that holds the serialized object data about the exception being thrown.</param>
+ <param name="context">The <see cref="T:System.Runtime.Serialization.StreamingContext"/> that contains contextual information about the source or destination.</param>
+ <exception cref="T:System.ArgumentNullException">The <paramref name="info"/> parameter is a null reference (Nothing in Visual Basic). </exception>
+ <PermissionSet>
+ <IPermission class="System.Security.Permissions.FileIOPermission, mscorlib, Version=2.0.3600.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" version="1" Read="*AllFiles*" PathDiscovery="*AllFiles*"/>
+ <IPermission class="System.Security.Permissions.SecurityPermission, mscorlib, Version=2.0.3600.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" version="1" Flags="SerializationFormatter"/>
+ </PermissionSet>
+ </member>
+ <member name="P:Alphaleonis.Win32.Vss.VssDeleteSnapshotsFailedException.DeletedSnapshotsCount">
+ <summary>
+ Gets the number of successfully deleted snapshots.
+ </summary>
+ <value>The number of successfully deleted snapshots.</value>
+ </member>
+ <member name="P:Alphaleonis.Win32.Vss.VssDeleteSnapshotsFailedException.NonDeletedSnapshotId">
+ <summary>
+ Gets the non id of the snapshot that failed to be deleted.
+ </summary>
+ <value>The id of the snapshot that could not be deleted.</value>
+ </member>
+ <member name="T:Alphaleonis.Win32.Vss.VssFileRestoreStatus">
+ <summary>
+ The <see cref="T:Alphaleonis.Win32.Vss.VssFileRestoreStatus"/> enumeration defines the set of statuses of a file restore operation performed on
+ the files managed by a selected component or component set.
+ </summary>
+ <remarks>
+ See MSDN documentation on <c>VSS_FILE_RESTORE_STATUS</c> for more information.
+ </remarks>
+ </member>
+ <member name="F:Alphaleonis.Win32.Vss.VssFileRestoreStatus.Undefined">
+ <summary>
+ <para>
+ The restore state is undefined.
+ </para>
+ <para>
+ This value indicates an error, or indicates that a restore operation has not yet started.
+ </para>
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Vss.VssFileRestoreStatus.None">
+ <summary>
+ <para>
+ No files were restored.
+ </para>
+ <para>
+ This value indicates an error in restoration that did not leave any restored files on disk.
+ </para>
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Vss.VssFileRestoreStatus.All">
+ <summary>
+ All files were restored. This value indicates success and should be set for each component that was restored successfully.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Vss.VssFileRestoreStatus.Failed">
+ <summary>
+ <para>
+ The restore process failed.
+ </para>
+ <para>
+ This value indicates an error in restoration that did leave some restored files on disk. This means the components on disk are now corrupt.
+ </para>
+ </summary>
+ </member>
+ <member name="T:Alphaleonis.Win32.Vss.VssComponentFlags">
+ <summary>
+ The <see cref="T:Alphaleonis.Win32.Vss.VssComponentFlags"/> enumeration is used by writers to indicate support for auto-recovery.
+ </summary>
+ <remarks>For more information see <see href="http://msdn.microsoft.com/en-us/library/aa384681(VS.85).aspx">MSDN documentation on VSS_COMPONENT_FLAGS Enumeration</see></remarks>
+ </member>
+ <member name="F:Alphaleonis.Win32.Vss.VssComponentFlags.BackupRecovery">
+ <summary>
+ <para>
+ The writer will need write access to this component after the shadow copy has been created.
+ </para>
+ <para>
+ This flag is incompatible with <see cref="F:Alphaleonis.Win32.Vss.VssVolumeSnapshotAttributes.Transportable"/>.
+ </para>
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Vss.VssComponentFlags.RollbackRecovery">
+ <summary>
+ <para>
+ If this is a rollback shadow copy (<see cref="T:Alphaleonis.Win32.Vss.VssVolumeSnapshotAttributes"/> enumeration value of
+ <see cref="F:Alphaleonis.Win32.Vss.VssVolumeSnapshotAttributes.RollbackRecovery"/>), the writer for this component will need
+ write access to this component after the shadow copy has been created.
+ </para>
+ <para>
+ This flag is incompatible with <see cref="F:Alphaleonis.Win32.Vss.VssVolumeSnapshotAttributes.Transportable"/>.
+ </para>
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Vss.VssComponentFlags.NotSystemState">
+ <summary>
+ <para>
+ This component is not part of system state.
+ </para>
+ <para>
+ <b>Windows Server 2003:</b> This value is not supported until Windows Vista.
+ </para>
+ </summary>
+ </member>
+ <member name="T:Alphaleonis.Win32.Vss.VssProviderProperties">
+ <summary>
+ The <see cref="T:Alphaleonis.Win32.Vss.VssProviderProperties"/> class specifies shadow copy provider properties.
+ </summary>
+ </member>
+ <member name="M:Alphaleonis.Win32.Vss.VssProviderProperties.#ctor(System.Guid,System.String,Alphaleonis.Win32.Vss.VssProviderType,System.String,System.Guid,System.Guid)">
+ <summary>
+ Initializes a new instance of the <see cref="T:Alphaleonis.Win32.Vss.VssProviderProperties"/> class.
+ </summary>
+ <param name="providerId">The provider id.</param>
+ <param name="providerName">Name of the provider.</param>
+ <param name="providerType">Type of the provider.</param>
+ <param name="providerVersion">The provider version.</param>
+ <param name="providerVersionId">The provider version id.</param>
+ <param name="classId">The class id.</param>
+ </member>
+ <member name="P:Alphaleonis.Win32.Vss.VssProviderProperties.ProviderId">
+ <summary>Identifies the provider who supports shadow copies of this class.</summary>
+ </member>
+ <member name="P:Alphaleonis.Win32.Vss.VssProviderProperties.ProviderName">
+ <summary>The provider name.</summary>
+ </member>
+ <member name="P:Alphaleonis.Win32.Vss.VssProviderProperties.ProviderType">
+ <summary>The provider type. See <see cref="T:Alphaleonis.Win32.Vss.VssProviderType"/> for more information.</summary>
+ </member>
+ <member name="P:Alphaleonis.Win32.Vss.VssProviderProperties.ProviderVersion">
+ <summary>The provider version in readable format.</summary>
+ </member>
+ <member name="P:Alphaleonis.Win32.Vss.VssProviderProperties.ProviderVersionId">
+ <summary>A <see cref="T:System.Guid"/> uniquely identifying the version of a provider.</summary>
+ </member>
+ <member name="P:Alphaleonis.Win32.Vss.VssProviderProperties.ClassId">
+ <summary>Class identifier of the component registered in the local machine's COM catalog.</summary>
+ </member>
+ <member name="T:Alphaleonis.Win32.Vss.VssDiffVolumeProperties">
+ <summary>
+ The <see cref="T:Alphaleonis.Win32.Vss.VssDiffVolumeProperties"/> structure describes a shadow copy storage area volume.
+ </summary>
+ </member>
+ <member name="M:Alphaleonis.Win32.Vss.VssDiffVolumeProperties.#ctor(System.String,System.String,System.Int64,System.Int64)">
+ <summary>
+ Initializes a new instance of the <see cref="T:Alphaleonis.Win32.Vss.VssDiffVolumeProperties"/> class.
+ </summary>
+ <param name="volumeName">Name of the volume.</param>
+ <param name="volumeDisplayName">Display name of the volume.</param>
+ <param name="volumeFreeSpace">The volume free space.</param>
+ <param name="volumeTotalSpace">The volume total space.</param>
+ </member>
+ <member name="P:Alphaleonis.Win32.Vss.VssDiffVolumeProperties.VolumeName">
+ <summary>
+ Gets the shadow copy storage area volume name, in <c>\\?\Volume{GUID}\</c> format.
+ </summary>
+ <value>The shadow copy storage area volume name, in <c>\\?\Volume{GUID}\</c> format.</value>
+ </member>
+ <member name="P:Alphaleonis.Win32.Vss.VssDiffVolumeProperties.VolumeDisplayName">
+ <summary>
+ Gets a string that can be displayed to a user, for example <c>C:\</c>, for the shadow copy storage area volume.
+ </summary>
+ <value>A string that can be displayed to a user, for example <c>C:\</c>, for the shadow copy storage area volume.</value>
+ </member>
+ <member name="P:Alphaleonis.Win32.Vss.VssDiffVolumeProperties.VolumeFreeSpace">
+ <summary>
+ Gets the free space, in bytes, on the shadow copy storage area volume.
+ </summary>
+ <value>The free space, in bytes, on the shadow copy storage area volume.</value>
+ </member>
+ <member name="P:Alphaleonis.Win32.Vss.VssDiffVolumeProperties.VolumeTotalSpace">
+ <summary>
+ Gets the total space, in bytes, on the shadow copy storage area volume.
+ </summary>
+ <value>The total space, in bytes, on the shadow copy storage area volume..</value>
+ </member>
+ <member name="T:Alphaleonis.Win32.Vss.VssMaximumNumberOfSnapshotsReachedException">
+ <summary>
+ 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.
+ </summary>
+ </member>
+ <member name="M:Alphaleonis.Win32.Vss.VssMaximumNumberOfSnapshotsReachedException.#ctor">
+ <summary>
+ Initializes a new instance of the <see cref="T:Alphaleonis.Win32.Vss.VssMaximumNumberOfSnapshotsReachedException"/>
+ class with a system-supplied message describing the error.
+ </summary>
+ </member>
+ <member name="M:Alphaleonis.Win32.Vss.VssMaximumNumberOfSnapshotsReachedException.#ctor(System.String)">
+ <summary>
+ Initializes a new instance of the <see cref="T:Alphaleonis.Win32.Vss.VssMaximumNumberOfSnapshotsReachedException"/> class with a specified error message.
+ </summary>
+ <param name="message">The message that describes the error</param>
+ </member>
+ <member name="M:Alphaleonis.Win32.Vss.VssMaximumNumberOfSnapshotsReachedException.#ctor(System.String,System.Exception)">
+ <summary>
+ Initializes a new instance of the <see cref="T:Alphaleonis.Win32.Vss.VssMaximumNumberOfSnapshotsReachedException"/> class with
+ a specified error message and a reference to the inner exception that is the cause of this exception.
+ </summary>
+ <param name="message">The message that describes the error</param>
+ <param name="innerException">The exception that is the cause of the current exception.</param>
+ </member>
+ <member name="M:Alphaleonis.Win32.Vss.VssMaximumNumberOfSnapshotsReachedException.#ctor(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">
+ <summary>
+ Initializes a new instance of the <see cref="T:Alphaleonis.Win32.Vss.VssMaximumNumberOfSnapshotsReachedException"/> class.
+ </summary>
+ <param name="info">The <see cref="T:System.Runtime.Serialization.SerializationInfo"/> that holds the serialized object data about the exception being thrown.</param>
+ <param name="context">The <see cref="T:System.Runtime.Serialization.StreamingContext"/> that contains contextual information about the source or destination.</param>
+ <exception cref="T:System.ArgumentNullException">The <paramref name="info"/> parameter is null. </exception>
+ <exception cref="T:System.Runtime.Serialization.SerializationException">The class name is null or <see cref="P:System.Exception.HResult"/> is zero (0). </exception>
+ </member>
+ <member name="T:Alphaleonis.Win32.Vss.VssBadStateException">
+ <summary>
+ Exception class indicating that the vss object referenced was not in a correct state for the requested operation.
+ </summary>
+ </member>
+ <member name="M:Alphaleonis.Win32.Vss.VssBadStateException.#ctor">
+ <summary>
+ Initializes a new instance of the <see cref="T:Alphaleonis.Win32.Vss.VssException"/> class.
+ </summary>
+ </member>
+ <member name="M:Alphaleonis.Win32.Vss.VssBadStateException.#ctor(System.String)">
+ <summary>
+ Initializes a new instance of the <see cref="T:Alphaleonis.Win32.Vss.VssException"/> class with the specified error message.
+ </summary>
+ <param name="message">The error message.</param>
+ </member>
+ <member name="M:Alphaleonis.Win32.Vss.VssBadStateException.#ctor(System.String,System.Exception)">
+ <summary>
+ Initializes a new instance of the <see cref="T:Alphaleonis.Win32.Vss.VssException"/> class with the specified error message
+ and a reference to the inner exception that is the cause of this exception.
+ </summary>
+ <param name="message">The error message.</param>
+ <param name="innerException">The inner exception.</param>
+ </member>
+ <member name="M:Alphaleonis.Win32.Vss.VssBadStateException.#ctor(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">
+ <summary>
+ Initializes a new instance of the <see cref="T:Alphaleonis.Win32.Vss.VssException"/> class with serialized data.
+ </summary>
+ <param name="info">The <see cref="T:System.Runtime.Serialization.SerializationInfo"/> that holds the serialized object data about the exception being thrown.</param>
+ <param name="context">The <see cref="T:System.Runtime.Serialization.StreamingContext"/> that contains contextual information about the source or destination.</param>
+ <exception cref="T:System.ArgumentNullException">The <paramref name="info"/> parameter is null. </exception>
+ <exception cref="T:System.Runtime.Serialization.SerializationException">The class name is null or <see cref="P:System.Exception.HResult"/> is zero (0). </exception>
+ </member>
+ <member name="T:Alphaleonis.Win32.Vss.VssWriterState">
+ <summary>The <see cref="T:Alphaleonis.Win32.Vss.VssWriterState"/> enumeration indicates the current state of the writer.</summary>
+ <remarks>A requester determines the state of a writer through <see cref="P:Alphaleonis.Win32.Vss.IVssBackupComponents.WriterStatus"/>.</remarks>
+ </member>
+ <member name="F:Alphaleonis.Win32.Vss.VssWriterState.Unknown">
+ <summary><para>The writer's state is not known.</para><para>This indicates an error on the part of the writer.</para></summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Vss.VssWriterState.Stable">
+ <summary>The writer has completed processing current shadow copy events and is ready to proceed, or <c>CVssWriter::OnPrepareSnapshot</c> has not yet been called.</summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Vss.VssWriterState.WaitingForFreeze">
+ <summary>The writer is waiting for the freeze state.</summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Vss.VssWriterState.WaitingForThaw">
+ <summary>The writer is waiting for the thaw state.</summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Vss.VssWriterState.WaitingForPostSnapshot">
+ <summary>The writer is waiting for the <c>PostSnapshot</c> state.</summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Vss.VssWriterState.WaitingForBackupComplete">
+ <summary>The writer is waiting for the requester to finish its backup operation.</summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Vss.VssWriterState.FailedAtIdentify">
+ <summary>The writer vetoed the shadow copy creation process at the writer identification state.</summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Vss.VssWriterState.FailedAtPrepareBackup">
+ <summary>The writer vetoed the shadow copy creation process during the backup preparation state.</summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Vss.VssWriterState.FailedAtPrepareSnapshot">
+ <summary>The writer vetoed the shadow copy creation process during the <c>PrepareForSnapshot</c> state.</summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Vss.VssWriterState.FailedAtFreeze">
+ <summary>The writer vetoed the shadow copy creation process during the freeze state.</summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Vss.VssWriterState.FailedAtThaw">
+ <summary>The writer vetoed the shadow copy creation process during the thaw state.</summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Vss.VssWriterState.FailedAtPostSnapshot">
+ <summary>The writer vetoed the shadow copy creation process during the <c>PostSnapshot</c> state.</summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Vss.VssWriterState.FailedAtBackupComplete">
+ <summary>The shadow copy has been created and the writer failed during the <c>BackupComplete</c> state.
+ A writer should save information about this failure to the error log.</summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Vss.VssWriterState.FailedAtPreRestore">
+ <summary>The writer failed during the <c>PreRestore</c> state.</summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Vss.VssWriterState.FailedAtPostRestore">
+ <summary>The writer failed during the <c>PostRestore</c> state.</summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Vss.VssWriterState.FailedAtBackupShutdown">
+ <summary>The writer failed during the shutdown of the backup application.</summary>
+ </member>
+ <member name="T:Alphaleonis.Win32.Vss.VssSnapshotContext">
+ <summary>
+ The <see cref="T:Alphaleonis.Win32.Vss.VssSnapshotContext"/> enumeration enables a requester using <see cref="O:Alphaleonis.Win32.Vss.IVssBackupComponents.SetContext"/> to specify how a
+ shadow copy is to be created, queried, or deleted and the degree of writer involvement.
+ <see cref="T:Alphaleonis.Win32.Vss.IVssBackupComponents"/>::SetContext" method) may be modified by a bitmask that contains a valid combination of
+ <see cref="T:Alphaleonis.Win32.Vss.VssVolumeSnapshotAttributes"/> and <see cref="T:Alphaleonis.Win32.Vss.VssSnapshotContext"/> enumeration values.
+ </summary>
+ <remarks><see cref="T:Alphaleonis.Win32.Vss.VssSnapshotContext"/> is defined as a static class defining the base <see cref="T:Alphaleonis.Win32.Vss.VssVolumeSnapshotAttributes"/>
+ combination of values representing the VSS_CTX_XXXXXX constants defined in the VSS API.
+ </remarks>
+ <seealso cref="T:Alphaleonis.Win32.Vss.VssVolumeSnapshotAttributes"/>
+ </member>
+ <member name="F:Alphaleonis.Win32.Vss.VssSnapshotContext.Backup">
+ <summary>
+ The standard backup context. Specifies an auto-release, nonpersistent shadow copy in which writers are involved in the creation.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Vss.VssSnapshotContext.FileShareBackup">
+ <summary>
+ Specifies a nonpersistent and auto-release shadow copy created without writer involvement.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Vss.VssSnapshotContext.NasRollback">
+ <summary>
+ <para>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. </para>
+ <para>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.</para>
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Vss.VssSnapshotContext.AppRollback">
+ <summary>
+ <para>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. </para>
+ <para>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.</para>
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Vss.VssSnapshotContext.ClientAccessible">
+ <summary>
+ <para>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. </para>
+ <para>Most requesters will want to use the <see cref="F:Alphaleonis.Win32.Vss.VssSnapshotContext.NasRollback"/> context for persistent, non-auto-release shadow copies without writer involvement.</para>
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Vss.VssSnapshotContext.ClientAccessibleWriters">
+ <summary>
+ <para>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. </para>
+ <para>Most requesters will want to use the <see cref="F:Alphaleonis.Win32.Vss.VssSnapshotContext.AppRollback"/> context for persistent, non-auto-release shadow copies with writer involvement.</para>
+ <para><b>Windows Server 2003 and Windows XP:</b> This context is not supported by Windows Server 2003 and Windows XP.</para>
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Vss.VssSnapshotContext.All">
+ <summary>
+ All types of currently live shadow copies are available for administrative operations, such as shadow copy queries
+ (see the Query method in <see cref="T:Alphaleonis.Win32.Vss.IVssBackupComponents"/>). <see cref="F:Alphaleonis.Win32.Vss.VssSnapshotContext.All"/> is a valid context for all VSS interfaces except
+ <see cref="T:Alphaleonis.Win32.Vss.IVssBackupComponents"/>::StartSnapshotSet and <see cref="T:Alphaleonis.Win32.Vss.IVssBackupComponents"/>::DoSnapshotSet.
+ </summary>
+ </member>
+ <member name="T:Alphaleonis.Win32.Vss.VssBackupType">
+ <summary>
+ The <see cref="T:Alphaleonis.Win32.Vss.VssBackupType"/> enumeration indicates the type of backup to be performed using VSS writer/requester
+ coordination.
+ </summary>
+ <remarks>
+ For more information see <see href="http://msdn.microsoft.com/en-us/library/aa384679(VS.85).aspx">MSDN documentation on
+ VSS_BACKUP_TYPE Enumeration</see>
+ </remarks>
+ </member>
+ <member name="F:Alphaleonis.Win32.Vss.VssBackupType.Undefined">
+ <summary>
+ <para>
+ The backup type is not known.
+ </para>
+ <para>
+ This value indicates an application error.
+ </para>
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Vss.VssBackupType.Full">
+ <summary>
+ <para>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.</para>
+ <para>Each file's backup history will be updated to reflect that it was backed up.</para>
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Vss.VssBackupType.Incremental">
+ <summary>
+ <para>
+ Incremental backup: files created or changed since the last full or incremental backup are saved. Files are marked as having been backed up.
+ </para>
+ <para>
+ A requester can implement this sort of backup on a particular writer only if it supports the <see cref="F:Alphaleonis.Win32.Vss.VssBackupSchema.Incremental"/> schema.
+ </para>
+ <para>
+ If a requester's backup type is <see cref="F:Alphaleonis.Win32.Vss.VssBackupType.Incremental"/> and a particular writer's backup schema does not support that sort of backup, the requester will always perform a full (<see cref="F:Alphaleonis.Win32.Vss.VssBackupType.Full"/>) backup on that writer's data.
+ </para>
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Vss.VssBackupType.Differential">
+ <summary>
+ <para>
+ Differential backup: files created or changed since the last full backup are saved. Files are not marked as having been backed up.
+ </para>
+ <para>
+ A requester can implement this sort of backup on a particular writer only if it supports the <see cref="F:Alphaleonis.Win32.Vss.VssBackupSchema.Differential"/> schema.
+ </para>
+ <para>
+ If a requester's backup type is <see cref="F:Alphaleonis.Win32.Vss.VssBackupType.Differential"/> and a particular writer's backup schema does not support that sort of backup, the requester will always perform a full (<see cref="F:Alphaleonis.Win32.Vss.VssBackupType.Full"/>) backup on that writer's data.
+ </para>
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Vss.VssBackupType.Log">
+ <summary>
+ <para>
+ The log file of a writer is to participate in backup or restore operations.
+ </para>
+ <para>
+ A requester can implement this sort of backup on a particular writer only if it supports the <see cref="F:Alphaleonis.Win32.Vss.VssBackupSchema.Log"/> schema.
+ </para>
+ <para>
+ If a requester's backup type is <see cref="F:Alphaleonis.Win32.Vss.VssBackupType.Log"/> and a particular writer's backup schema does not support that sort of backup, the requester will always perform a full (<see cref="F:Alphaleonis.Win32.Vss.VssBackupType.Full"/>) backup on that writer's data.
+ </para>
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Vss.VssBackupType.Copy">
+ <summary>
+ <para>
+ 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.
+ </para>
+ <para>
+ A requester can implement this sort of backup on a particular writer only if it supports the <see cref="F:Alphaleonis.Win32.Vss.VssBackupSchema.Copy"/> schema.
+ </para>
+ <para>
+ If a requester's backup type is <see cref="F:Alphaleonis.Win32.Vss.VssBackupType.Copy"/> and a particular writer's backup schema does not support that sort of backup, the requester will always perform a full (<see cref="F:Alphaleonis.Win32.Vss.VssBackupType.Full"/>) backup on that writer's data.
+ </para>
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Vss.VssBackupType.Other">
+ <summary>Backup type that is not full, copy, log, incremental, or differential.</summary>
+ </member>
+ <member name="T:Alphaleonis.Win32.Vss.OSVersionName">
+ <summary>
+ Enumeration used to discriminate between the named windows versions.
+ </summary>
+ <remarks>
+ 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.
+ </remarks>
+ </member>
+ <member name="F:Alphaleonis.Win32.Vss.OSVersionName.Windows2000">
+ <summary>
+ Windows 2000 (Server or Professional)
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Vss.OSVersionName.WindowsXP">
+ <summary>
+ Windows XP
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Vss.OSVersionName.WindowsServer2003">
+ <summary>
+ Windows Server 2003
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Vss.OSVersionName.WindowsVista">
+ <summary>
+ Windows Vista
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Vss.OSVersionName.WindowsServer2008">
+ <summary>
+ Windows Server 2008
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Vss.OSVersionName.Unknown">
+ <summary>
+ Unknown operating system
+ </summary>
+ </member>
+ <member name="T:Alphaleonis.Win32.Vss.VssRebootRequiredException">
+ <summary>
+ <para>Exception thrown to indicate that the provider encountered an error that requires the user to restart the computer.</para>
+ </summary>
+ <remarks>
+ <note><b>Windows Server 2003 and Windows XP:</b>This exception is not supported until Windows Vista.</note>
+ </remarks>
+ </member>
+ <member name="M:Alphaleonis.Win32.Vss.VssRebootRequiredException.#ctor">
+ <summary>
+ Initializes a new instance of the <see cref="T:Alphaleonis.Win32.Vss.VssRebootRequiredException"/>
+ class with a system-supplied message describing the error.
+ </summary>
+ </member>
+ <member name="M:Alphaleonis.Win32.Vss.VssRebootRequiredException.#ctor(System.String)">
+ <summary>
+ Initializes a new instance of the <see cref="T:Alphaleonis.Win32.Vss.VssRebootRequiredException"/> class with a specified error message.
+ </summary>
+ <param name="message">The message that describes the error</param>
+ </member>
+ <member name="M:Alphaleonis.Win32.Vss.VssRebootRequiredException.#ctor(System.String,System.Exception)">
+ <summary>
+ Initializes a new instance of the <see cref="T:Alphaleonis.Win32.Vss.VssRebootRequiredException"/> class with
+ a specified error message and a reference to the inner exception that is the cause of this exception.
+ </summary>
+ <param name="message">The message that describes the error</param>
+ <param name="innerException">The exception that is the cause of the current exception.</param>
+ </member>
+ <member name="M:Alphaleonis.Win32.Vss.VssRebootRequiredException.#ctor(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">
+ <summary>
+ Initializes a new instance of the <see cref="T:Alphaleonis.Win32.Vss.VssRebootRequiredException"/> class.
+ </summary>
+ <param name="info">The <see cref="T:System.Runtime.Serialization.SerializationInfo"/> that holds the serialized object data about the exception being thrown.</param>
+ <param name="context">The <see cref="T:System.Runtime.Serialization.StreamingContext"/> that contains contextual information about the source or destination.</param>
+ <exception cref="T:System.ArgumentNullException">The <paramref name="info"/> parameter is null. </exception>
+ <exception cref="T:System.Runtime.Serialization.SerializationException">The class name is null or <see cref="P:System.Exception.HResult"/> is zero (0). </exception>
+ </member>
+ <member name="T:Alphaleonis.Win32.Vss.VssSnapshotCompatibility">
+ <summary>
+ The <see cref="T:Alphaleonis.Win32.Vss.VssSnapshotCompatibility"/> enumeration indicates which volume control or file I/O operations are disabled for the
+ volume that has been shadow copied.</summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Vss.VssSnapshotCompatibility.None">
+ <summary>None of the other flags.</summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Vss.VssSnapshotCompatibility.DisableDefrag">
+ <summary>The provider managing the shadow copies for a specified volume does not support defragmentation operations on that volume.</summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Vss.VssSnapshotCompatibility.DisableContentIndex">
+ <summary>The provider managing the shadow copies for a specified volume does not support content index operations on that volume.</summary>
+ </member>
+ <member name="T:Alphaleonis.Win32.Vss.VssProviderType">
+ <summary>The <see cref="T:Alphaleonis.Win32.Vss.VssProviderType"/> enumeration specifies the provider type.</summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Vss.VssProviderType.Unknown">
+ <summary>
+ <para>
+ The provider type is unknown.
+ </para>
+ <para>
+ This indicates an error in the application or the VSS service, or that no provider is available.
+ </para>
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Vss.VssProviderType.System">
+ <summary>The default provider that ships with Windows.</summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Vss.VssProviderType.Software">
+ <summary>A software-based provider.</summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Vss.VssProviderType.Hardware">
+ <summary>A hardware-based provider.</summary>
+ </member>
+ <member name="T:Alphaleonis.Win32.Vss.VssComponentType">
+ <summary>
+ The <see cref="T:Alphaleonis.Win32.Vss.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.
+ </summary>
+ <remarks>
+ <para>
+ A writer sets a component's type when it adds the component to its Writer Metadata Document using
+ <c>IVssCreateWriterMetadata.AddComponent</c>
+ </para>
+ <para>
+ Writers and requesters can find the type information of components selected for inclusion in a Backup
+ Components Document through calls to <see cref="P:Alphaleonis.Win32.Vss.IVssComponent.ComponentType"/> to return a component type directly.
+ </para>
+ <para>
+ A requester can obtain the type of any component in a given writer's Writer Metadata Document by doing the following:
+ <list type="number">
+ <item><description>Using <see cref="P:Alphaleonis.Win32.Vss.IVssExamineWriterMetadata.Components"/> to obtain a <see cref="T:Alphaleonis.Win32.Vss.IVssWMComponent"/> interface</description></item>
+ <item><description>Examining the Type member of the <see cref="T:Alphaleonis.Win32.Vss.IVssWMComponent"/> object</description></item>
+ </list>
+ </para>
+ </remarks>
+ </member>
+ <member name="F:Alphaleonis.Win32.Vss.VssComponentType.Undefined">
+ <summary><para>Undefined component type.</para>
+ <para>This value indicates an application error.</para>
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Vss.VssComponentType.Database">
+ <summary>Database component.</summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Vss.VssComponentType.FileGroup">
+ <summary>File group component. This is any component other than a database.</summary>
+ </member>
+ <member name="T:Alphaleonis.Win32.Vss.IVssSnapshotManagement">
+ <summary>
+ The <see cref="T:Alphaleonis.Win32.Vss.IVssSnapshotManagement"/> interface provides a method that returns an interface to further configure a shadow copy provider.
+ </summary>
+ </member>
+ <member name="M:Alphaleonis.Win32.Vss.IVssSnapshotManagement.GetDifferentialSoftwareSnapshotManagementInterface">
+ <summary>
+ Gets an instance of the differential software snapshot management interface to further configure the system provider.
+ </summary>
+ <remarks>
+ <para>
+ <note>
+ <para>
+ <b>Windows XP:</b> This method is not supported until Windows 2003.
+ </para>
+ </note>
+ </para>
+ </remarks>
+ <returns>An instance of the differential software snapshot management interface to further configure the system provider.</returns>
+ </member>
+ <member name="M:Alphaleonis.Win32.Vss.IVssSnapshotManagement.GetMinDiffAreaSize">
+ <summary>
+ Returns the current minimum size of the shadow copy storage area.
+ </summary>
+ <remarks>
+ <para>
+ 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 <c>MinDiffAreaFileSize</c> value of type
+ <c>REG_DWORD</c> in <c>HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\VolSnap</c> (the value is the size, in MB).
+ </para>
+ <para>
+ <note>
+ <para>
+ <b>Windows XP and Windows 2003:</b> This method is not supported until Windows 2003 SP1.
+ </para>
+ </note>
+ </para>
+ </remarks>
+ <returns>The current minimum size of the shadow copy storage area.</returns>
+ </member>
+ <member name="T:Alphaleonis.Win32.Vss.IVssBackupComponents">
+ <summary>
+ <para>
+ The <see cref="T:Alphaleonis.Win32.Vss.IVssBackupComponents"/> class is used by a requester to poll writers about file status and to run backup/restore operations.
+ </para>
+ </summary>
+ <remarks>
+ <para>
+ A <see cref="T:Alphaleonis.Win32.Vss.IVssBackupComponents"/> object can be used for only a single backup, restore, or Query operation.
+ </para>
+ <para>
+ After the backup, restore, or Query operation has either successfully finished or been explicitly terminated, a requester must
+ release the <see cref="T:Alphaleonis.Win32.Vss.IVssBackupComponents"/> object by calling <c>Dispose()</c>.
+ A <see cref="T:Alphaleonis.Win32.Vss.IVssBackupComponents"/> object must not be reused. For example, you cannot perform a backup or restore operation with the
+ same <see cref="T:Alphaleonis.Win32.Vss.IVssBackupComponents"/> object that you have already used for a Query operation.
+ </para>
+ <para>
+ For information on how to retrieve an instance of <see cref="T:Alphaleonis.Win32.Vss.IVssBackupComponents"/> for the current operating system, see
+ <see cref="T:Alphaleonis.Win32.Vss.VssUtils"/> and <see cref="T:Alphaleonis.Win32.Vss.IVssImplementation"/>.
+ </para>
+ </remarks>
+ <seealso cref="T:Alphaleonis.Win32.Vss.VssUtils"/>
+ <seealso cref="T:Alphaleonis.Win32.Vss.IVssImplementation"/>
+ </member>
+ <member name="M:Alphaleonis.Win32.Vss.IVssBackupComponents.AbortBackup">
+ <summary>
+ <para>The <b>AbortBackup</b> method notifies VSS that a backup operation was terminated.</para>
+ <para>
+ This method must be called if a backup operation terminates after the creation of a shadow copy set with
+ <see cref="M:Alphaleonis.Win32.Vss.IVssBackupComponents.StartSnapshotSet"/> and before <see cref="M:Alphaleonis.Win32.Vss.IVssBackupComponents.DoSnapshotSet"/>returns.
+ </para>
+ <para>
+ If AbortBackup is called and no shadow copy or backup operations are underway, it is ignored.
+ </para>
+ </summary>
+ <exception cref="T:System.OutOfMemoryException">Out of memory or other system resources.</exception>
+ <exception cref="T:System.SystemException">Unexpected VSS system error. The error code is logged in the event log.</exception>
+ <exception cref="T:Alphaleonis.Win32.Vss.VssBadStateException">The backup components object is not initialized.</exception>
+ </member>
+ <member name="M:Alphaleonis.Win32.Vss.IVssBackupComponents.AddAlternativeLocationMapping(System.Guid,Alphaleonis.Win32.Vss.VssComponentType,System.String,System.String,System.String,System.String,System.Boolean,System.String)">
+ <summary>
+ The <b>AddAlternativeLocationMapping</b> 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.
+ </summary>
+ <param name="writerId">Globally unique identifier (GUID) of the writer class that exported the component.</param>
+ <param name="componentType">Type of the component.</param>
+ <param name="logicalPath">
+ <para>String containing the logical path to the component. The logical path can be <see langword="null"/>.</para>
+ <para>There are no restrictions on the characters that can appear in a non-<c>null</c> logical path.</para>
+ </param>
+ <param name="componentName">The component name.</param>
+ <param name="path">
+ <para>
+ The path to the directory that originally contained the
+ file to be relocated. This path must be local to the VSS machine.
+ </para>
+ <para>
+ The path can contain environment variables (for example, %SystemRoot%) but cannot contain wildcard characters.
+ UNC paths are not supported.
+ </para>
+ <para>
+ There is no requirement that the path end with a backslash ("\"). It is up to applications that retrieve
+ this information to check.
+ </para>
+ </param>
+ <param name="filespec">String containing the original file specification. A file specification cannot
+ contain directory specifications (for example, no backslashes) but can contain the ? and * wildcard characters.</param>
+ <param name="recursive">
+ Boolean indicating whether the path specified by the <paramref name="path"/> parameter identifies only a single
+ directory or if it indicates a hierarchy of directories to be traversed recursively. The Boolean is <c>true</c> if the
+ path is treated as a hierarchy of directories to be traversed recursively and <c>false</c> if not.
+ </param>
+ <param name="destination">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.</param>
+ <exception cref="T:System.ArgumentException">One of the parameters is not valid.</exception>
+ <exception cref="T:System.OutOfMemoryException">Out of memory or other system resources.</exception>
+ <exception cref="T:System.SystemException">Unexpected VSS system error. The error code is logged in the event log.</exception>
+ <exception cref="T:Alphaleonis.Win32.Vss.VssBadStateException">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.</exception>
+ <exception cref="T:Alphaleonis.Win32.Vss.VssInvalidXmlDocumentException">The XML document is not valid. Check the event log for details.</exception>
+ <exception cref="T:Alphaleonis.Win32.Vss.VssObjectNotFoundException">The specified component does not exist.</exception>
+ </member>
+ <member name="M:Alphaleonis.Win32.Vss.IVssBackupComponents.AddComponent(System.Guid,System.Guid,Alphaleonis.Win32.Vss.VssComponentType,System.String,System.String)">
+ <summary>
+ The <b>AddComponent</b> 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.
+ </summary>
+ <param name="instanceId">Identifies a specific instance of a writer.</param>
+ <param name="writerId">Writer class identifier.</param>
+ <param name="componentType">Identifies the type of the component.</param>
+ <param name="logicalPath">
+ <para>String containing the logical path of the selectable for backup component.</para>
+ <para>A logical path is not required when adding a component. Therefore, the value of this parameter can be <see langword="null"/>.</para>
+ <para>There are no restrictions on the characters that can a logical path.</para>
+ </param>
+ <param name="componentName">
+ <para>String containing the name of the selectable for backup component.</para>
+ <para>The value of this parameter <b>cannot</b> be <see langword="nulL"/>.</para>
+ <para>There are no restrictions on the characters that can appear in a logical path.</para>
+ </param>
+ <exception cref="T:System.ArgumentException">One of the parameters is not valid.</exception>
+ <exception cref="T:System.OutOfMemoryException">Out of memory or other system resources.</exception>
+ <exception cref="T:System.SystemException">Unexpected VSS system error. The error code is logged in the event log.</exception>
+ <exception cref="T:Alphaleonis.Win32.Vss.VssBadStateException">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.</exception>
+ <exception cref="T:Alphaleonis.Win32.Vss.VssInvalidXmlDocumentException">The XML document is not valid. Check the event log for details.</exception>
+ <exception cref="T:Alphaleonis.Win32.Vss.VssObjectAlreadyExistsException">The object is a duplicate. A component with the same logical path and component name already exists.</exception>
+ </member>
+ <member name="M:Alphaleonis.Win32.Vss.IVssBackupComponents.AddNewTarget(System.Guid,Alphaleonis.Win32.Vss.VssComponentType,System.String,System.String,System.String,System.String,System.Boolean,System.String)">
+ <summary>
+ The <b>AddNewTarget</b> method is used by a requester during a restore operation to indicate that the backup application plans
+ to restore files to a new location.
+ </summary>
+ <param name="writerId">Globally unique identifier (GUID) of the writer class containing the files that are to receive a new target.</param>
+ <param name="componentType">Identifies the type of the component, see the documentation for <see cref="T:Alphaleonis.Win32.Vss.VssComponentType"/> for more information.</param>
+ <param name="logicalPath">
+ <para>String containing the logical path of the component containing the files that are to receive a new restore target.</para>
+ <para>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 <see cref="M:Alphaleonis.Win32.Vss.IVssBackupComponents.AddComponent(System.Guid,System.Guid,Alphaleonis.Win32.Vss.VssComponentType,System.String,System.String)"/>.</para>
+ <para>The logical path can be <see langword="null"/>.</para>
+ <para>There are no restrictions on the characters that can appear in a non-<c>null</c> logical path.</para>
+ </param>
+ <param name="componentName">
+ <para>The name of the component containing the files that are to receive a new restore target.</para>
+ <para>The string should not be <see langword="null"/> and should contain the same component name as was used when the
+ component was added to the backup set using <see cref="M:Alphaleonis.Win32.Vss.IVssBackupComponents.AddComponent(System.Guid,System.Guid,Alphaleonis.Win32.Vss.VssComponentType,System.String,System.String)"/>.</para>
+ <para>There are no restrictions on the characters that can appear in a non-NULL logical path.</para>
+ </param>
+ <param name="path">
+ <para>The name of the directory or directory hierarchy containing the files to receive a new restore target.</para>
+ <para>The path can contain environment variables (for example, %SystemRoot%) but cannot contain wildcard characters.</para>
+ <para>There is no requirement that the path end with a backslash ("\"). It is up to applications that retrieve this information to check.</para>
+ </param>
+ <param name="fileName">
+ <para>The file specification of the files to receive a new restore target.</para>
+ <para>A file specification cannot contain directory specifications (for example, no backslashes) but can contain the ? and * wildcard characters.</para>
+ </param>
+ <param name="recursive">Boolean indicating whether only the files in the directory defined by <paramref name="path"/> and matching the file
+ specification provided by <paramref name="fileName"/> are to receive a new restore target, or if all files in the hierarchy defined
+ by <paramref name="path"/>and matching the file specification provided by <paramref name="fileName"/> are to receive a new restore target.
+ </param>
+ <param name="alternatePath">The fully qualified path of the new restore target directory.</param>
+ <remarks><note>This method is not supported on Windows XP</note></remarks>
+ <exception cref="T:System.ArgumentException">One of the parameters is not valid.</exception>
+ <exception cref="T:System.OutOfMemoryException">Out of memory or other system resources.</exception>
+ <exception cref="T:System.SystemException">Unexpected VSS system error. The error code is logged in the event log.</exception>
+ <exception cref="T:Alphaleonis.Win32.Vss.VssBadStateException">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.</exception>
+ <exception cref="T:Alphaleonis.Win32.Vss.VssObjectNotFoundException">The component does not exist or the path and file specification do not match a component and file specification in the component.</exception>
+ <exception cref="T:Alphaleonis.Win32.Vss.VssInvalidXmlDocumentException">The XML document is not valid. Check the event log for details.</exception>
+ <exception cref="T:System.NotSupportedException">The operation is not supported on the current operating system.</exception>
+ </member>
+ <member name="M:Alphaleonis.Win32.Vss.IVssBackupComponents.AddRestoreSubcomponent(System.Guid,Alphaleonis.Win32.Vss.VssComponentType,System.String,System.String,System.String,System.String)">
+ <summary>
+ The <b>AddRestoreSubcomponent</b> 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.
+ </summary>
+ <param name="writerId">Globally unique identifier (GUID) of the writer class containing the files that are to receive a new target.</param>
+ <param name="componentType">Identifies the type of the component, see the documentation for <see cref="T:Alphaleonis.Win32.Vss.VssComponentType"/> for more information.</param>
+ <param name="logicalPath">
+ <para>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.</para>
+ <para>The logical path can be <see langword="null"/>.</para>
+ <para>There are no restrictions on the characters that can appear in a non-<c>null</c> logical path.</para>
+ </param>
+ <param name="componentName">
+ <para>The logical path of the component in the backup document that defines the backup component set containing the Subcomponent to be added for restore.</para>
+ <para>The string should not be <see langword="null"/> and should contain the same component name as was used when the
+ component was added to the backup set using <see cref="M:Alphaleonis.Win32.Vss.IVssBackupComponents.AddComponent(System.Guid,System.Guid,Alphaleonis.Win32.Vss.VssComponentType,System.String,System.String)"/>.</para>
+ <para>There are no restrictions on the characters that can appear in a non-NULL component name.</para>
+ </param>
+ <param name="subcomponentLogicalPath">
+ <para>The logical path of the Subcomponent to be added for restore. </para>
+ <para>A logical path is required when adding a Subcomponent. Therefore, the value of this parameter cannot be <see langword="null"/>.</para>
+ <para>There are no restrictions on the characters that can appear in a non-NULL logical path.</para>
+ </param>
+ <param name="subcomponentName">
+ <para>The logical name of the Subcomponent to be added for restore.</para>
+ <para>The value of this parameter cannot be <see langword="null"/>.</para>
+ <para>There are no restrictions on the characters that can appear in a non-NULL component name.</para>
+ </param>
+ <exception cref="T:System.ArgumentException">One of the parameters is not valid.</exception>
+ <exception cref="T:System.OutOfMemoryException">Out of memory or other system resources.</exception>
+ <exception cref="T:System.SystemException">Unexpected VSS system error. The error code is logged in the event log.</exception>
+ <exception cref="T:Alphaleonis.Win32.Vss.VssBadStateException">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.</exception>
+ <exception cref="T:Alphaleonis.Win32.Vss.VssObjectNotFoundException">The component does not exist.</exception>
+ <exception cref="T:Alphaleonis.Win32.Vss.VssInvalidXmlDocumentException">The XML document is not valid. Check the event log for details.</exception>
+ </member>
+ <member name="M:Alphaleonis.Win32.Vss.IVssBackupComponents.AddToSnapshotSet(System.String,System.Guid)">
+ <summary>
+ The <see cref="M:Alphaleonis.Win32.Vss.IVssBackupComponents.AddToSnapshotSet(System.String,System.Guid)"/> method adds an original volume to the shadow copy set.
+ </summary>
+ <param name="volumeName">String containing the name of the volume to be shadow copied. The name must be in one of the following formats:
+ <list type="bullet">
+ <item><description>The path of a volume mount point with a backslash (\)</description></item>
+ <item><description>A drive letter with backslash (\), for example, D:\</description></item>
+ <item><description>A unique volume name of the form "\\?\Volume{GUID}\" (where GUID is the unique global identifier of the volume) with a backslash (\)</description></item>
+ </list>
+ </param>
+ <param name="providerId">The provider to be used. <see cref="F:System.Guid.Empty"/> can be used, in which case the default provider will be used.</param>
+ <returns>Identifier of the added shadow copy.</returns>
+ <remarks>
+ <para>
+ The maximum number of shadow copies in a single shadow copy set is 64.
+ </para>
+ <para>If <paramref name="providerId"/> is <see cref="F:System.Guid.Empty"/>, the default provider is selected according to the following algorithm:
+ <list type="numbered">
+ <item><description>If any hardware-based provider supports the given volume, it is selected.</description></item>
+ <item><description>If there is no hardware-based provider available, if any software-based provider supports the given volume, it is selected.</description></item>
+ <item><description>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.)</description></item>
+ </list>
+ </para>
+ </remarks>
+ <exception cref="T:System.UnauthorizedAccessException">Caller does not have sufficient backup privileges or is not an administrator.</exception>
+ <exception cref="T:System.ArgumentException">One of the parameters is not valid.</exception>
+ <exception cref="T:System.OutOfMemoryException">Out of memory or other system resources.</exception>
+ <exception cref="T:System.SystemException">Unexpected VSS system error. The error code is logged in the event log.</exception>
+ <exception cref="T:Alphaleonis.Win32.Vss.VssBadStateException">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.</exception>
+ <exception cref="T:Alphaleonis.Win32.Vss.VssMaximumNumberOfVolumesReachedException">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>
+ <exception cref="T:Alphaleonis.Win32.Vss.VssMaximumNumberOfSnapshotsReachedException">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>
+ <exception cref="T:Alphaleonis.Win32.Vss.VssObjectNotFoundException"><paramref name="volumeName"/> does not correspond to an existing volume.</exception>
+ <exception cref="T:Alphaleonis.Win32.Vss.VssProviderNotRegisteredException"><paramref name="providerId"/> does not correspond to a registered provider.</exception>
+ <exception cref="T:Alphaleonis.Win32.Vss.VssProviderVetoException">Expected provider error. The provider logged the error in the event log.</exception>
+ <exception cref="T:Alphaleonis.Win32.Vss.VssVolumeNotSupportedException">The value of the <paramref name="providerId"/> parameter is <see cref="F:System.Guid.Empty"/> and no VSS provider indicates that it supports the specified volume.</exception>
+ <exception cref="T:Alphaleonis.Win32.Vss.VssVolumeNotSupportedByProviderException">The volume is not supported by the specified provider.</exception>
+ <exception cref="T:Alphaleonis.Win32.Vss.VssUnexpectedProviderErrorException">The provider returned an unexpected error code.</exception>
+ </member>
+ <member name="M:Alphaleonis.Win32.Vss.IVssBackupComponents.AddToSnapshotSet(System.String)">
+ <summary>
+ The <see cref="M:Alphaleonis.Win32.Vss.IVssBackupComponents.AddToSnapshotSet(System.String,System.Guid)"/> method adds an original volume to the shadow copy set using the default provider.
+ </summary>
+ <param name="volumeName">String containing the name of the volume to be shadow copied. The name must be in one of the following formats:
+ <list type="bullet">
+ <item><description>The path of a volume mount point with a backslash (\)</description></item>
+ <item><description>A drive letter with backslash (\), for example, D:\</description></item>
+ <item><description>A unique volume name of the form "\\?\Volume{GUID}\" (where GUID is the unique global identifier of the volume) with a backslash (\)</description></item>
+ </list>
+ </param>
+ <returns>Identifier of the added shadow copy.</returns>
+ <remarks>
+ <para>
+ The maximum number of shadow copies in a single shadow copy set is 64.
+ </para>
+ <para>If <paramref name="providerId"/> is <see cref="F:System.Guid.Empty"/>, the default provider is selected according to the following algorithm:
+ <list type="numbered">
+ <item><description>If any hardware-based provider supports the given volume, it is selected.</description></item>
+ <item><description>If there is no hardware-based provider available, if any software-based provider supports the given volume, it is selected.</description></item>
+ <item><description>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.)</description></item>
+ </list>
+ </para>
+ </remarks>
+ <exception cref="T:System.UnauthorizedAccessException">Caller does not have sufficient backup privileges or is not an administrator.</exception>
+ <exception cref="T:System.ArgumentException">One of the parameters is not valid.</exception>
+ <exception cref="T:System.OutOfMemoryException">Out of memory or other system resources.</exception>
+ <exception cref="T:System.SystemException">Unexpected VSS system error. The error code is logged in the event log.</exception>
+ <exception cref="T:Alphaleonis.Win32.Vss.VssBadStateException">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.</exception>
+ <exception cref="T:Alphaleonis.Win32.Vss.VssMaximumNumberOfVolumesReachedException">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>
+ <exception cref="T:Alphaleonis.Win32.Vss.VssMaximumNumberOfSnapshotsReachedException">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>
+ <exception cref="T:Alphaleonis.Win32.Vss.VssObjectNotFoundException"><paramref name="volumeName"/> does not correspond to an existing volume.</exception>
+ <exception cref="T:Alphaleonis.Win32.Vss.VssProviderNotRegisteredException"><paramref name="providerId"/> does not correspond to a registered provider.</exception>
+ <exception cref="T:Alphaleonis.Win32.Vss.VssProviderVetoException">Expected provider error. The provider logged the error in the event log.</exception>
+ <exception cref="T:Alphaleonis.Win32.Vss.VssVolumeNotSupportedException">The value of the <paramref name="providerId"/> parameter is <see cref="F:System.Guid.Empty"/> and no VSS provider indicates that it supports the specified volume.</exception>
+ <exception cref="T:Alphaleonis.Win32.Vss.VssVolumeNotSupportedByProviderException">The volume is not supported by the specified provider.</exception>
+ <exception cref="T:Alphaleonis.Win32.Vss.VssUnexpectedProviderErrorException">The provider returned an unexpected error code.</exception>
+ </member>
+ <member name="M:Alphaleonis.Win32.Vss.IVssBackupComponents.BackupComplete">
+ <summary>
+ The <see cref="M:Alphaleonis.Win32.Vss.IVssBackupComponents.BackupComplete"/> method causes VSS to generate a <b>BackupComplete</b> event, which signals writers that the backup
+ process has completed.
+ </summary>
+ <returns>A <see cref="T:Alphaleonis.Win32.Vss.IVssAsync"/> instance representing this operation.</returns>
+ <exception cref="T:System.OutOfMemoryException">Out of memory or other system resources.</exception>
+ <exception cref="T:System.SystemException">Unexpected VSS system error. The error code is logged in the event log.</exception>
+ <exception cref="T:Alphaleonis.Win32.Vss.VssBadStateException">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.</exception>
+ <exception cref="T:Alphaleonis.Win32.Vss.VssUnexpectedWriterErrorException">An unexpected error occurred during communication with writers. The error code is logged in the error log file.</exception>
+ </member>
+ <member name="M:Alphaleonis.Win32.Vss.IVssBackupComponents.BreakSnapshotSet(System.Guid)">
+ <overloads>
+ <summary>
+ The <c>BreakSnapshotSet</c> method causes the existence of a shadow copy set to be "forgotten" by VSS.
+ </summary>
+ </overloads>
+ <summary>
+ The <c>BreakSnapshotSet</c> method causes the existence of a shadow copy set to be "forgotten" by VSS.
+ </summary>
+ <param name="snapshotSetId">Shadow copy set identifier.</param>
+ <remarks>BreakSnapshotSet can be used only for shadow copies created by a hardware shadow copy provider. This method makes these shadow copies regular volumes.</remarks>
+ <exception cref="T:System.UnauthorizedAccessException">The caller does not have sufficient backup privileges or is not an administrator.</exception>
+ <exception cref="T:System.ArgumentException">One of the parameters is not valid.</exception>
+ <exception cref="T:System.OutOfMemoryException">Out of memory or other system resources.</exception>
+ <exception cref="T:System.SystemException">Unexpected VSS system error. The error code is logged in the event log.</exception>
+ <exception cref="T:Alphaleonis.Win32.Vss.VssProviderVetoException">The shadow copy was created by a software provider and cannot be broken.</exception>
+ <exception cref="T:Alphaleonis.Win32.Vss.VssObjectNotFoundException">The specified shadow copy does not exist.</exception>
+ </member>
+ <member name="M:Alphaleonis.Win32.Vss.IVssBackupComponents.BreakSnapshotSet(System.Guid,Alphaleonis.Win32.Vss.VssHardwareOptions)">
+ <summary>
+ Breaks a shadow copy set according to requester-specified options.
+ </summary>
+ <param name="snapshotSetId">A shadow copy set identifier.</param>
+ <param name="breakFlags">A bitmask of <see cref="T:Alphaleonis.Win32.Vss.VssHardwareOptions"/> flags that specify how the shadow copy set is broken.</param>
+ <remarks>
+ <para>
+ This method is similar to <see cref="M:Alphaleonis.Win32.Vss.IVssBackupComponents.BreakSnapshotSet(System.Guid)"/>, except that is has an extra parameter to specify
+ how the shadow copy set is broken, and returns an <see cref="T:Alphaleonis.Win32.Vss.IVssAsync"/> object to query the status of the operation.
+ </para>
+ <para>
+ Like <see cref="M:Alphaleonis.Win32.Vss.IVssBackupComponents.BreakSnapshotSet(System.Guid)"/>, this method can be used only for shadow copies that were created by
+ a hardware shadow copy provider.
+ </para>
+ <para>
+ After this method returns, the shadow copy volume is still a volume, but it is no longer a shadow copy.
+ For more information, see <see href="http://msdn.microsoft.com/en-us/library/aa381505(VS.85).aspx">Breaking Shadow Copies</see>.
+ </para>
+ </remarks>
+ <returns>
+ An <see cref="T:Alphaleonis.Win32.Vss.IVssAsync"/> instance that can be used to retrieve the status of the shadow copy set break operation.
+ When the break operation is complete, the <c>Dispose</c> method of the <see cref="T:Alphaleonis.Win32.Vss.IVssAsync"/> instance must be called.
+ </returns>
+ </member>
+ <member name="M:Alphaleonis.Win32.Vss.IVssBackupComponents.DeleteSnapshot(System.Guid,System.Boolean)">
+ <summary>
+ The <c>DeleteSnapshot</c> method deletes a shadow copy..
+ </summary>
+ <param name="snapshotId">Identifier of the shadow copy to be deleted.</param>
+ <param name="forceDelete">If the value of this parameter is <see langword="true"/>, the provider will do everything possible to delete the shadow copy. If it is <see langword="false"/>, no additional effort will be made.</param>
+ <remarks>
+ <para>
+ The requester is responsible for serializing the delete shadow copy operation.
+ </para>
+ <para>
+ During a backup, shadow copies are automatically released as soon as the <see cref="T:Alphaleonis.Win32.Vss.IVssBackupComponents"/> instance is
+ disposed. In this case, it is not necessary to explicitly delete shadow copies.
+ </para>
+ </remarks>
+ <exception cref="T:System.UnauthorizedAccessException">The caller does not have sufficient backup privileges or is not an administrator.</exception>
+ <exception cref="T:System.ArgumentException">One of the parameters is not valid.</exception>
+ <exception cref="T:System.OutOfMemoryException">Out of memory or other system resources.</exception>
+ <exception cref="T:System.SystemException">Unexpected VSS system error. The error code is logged in the event log.</exception>
+ <exception cref="T:Alphaleonis.Win32.Vss.VssObjectNotFoundException">The specified shadow copy does not exist.</exception>
+ <exception cref="T:Alphaleonis.Win32.Vss.VssProviderVetoException">Expected provider error. The provider logged the error in the event log.</exception>
+ <exception cref="T:Alphaleonis.Win32.Vss.VssUnexpectedProviderErrorException">Unexpected provider error. The error code is logged in the error log.</exception>
+ </member>
+ <member name="M:Alphaleonis.Win32.Vss.IVssBackupComponents.DeleteSnapshotSet(System.Guid,System.Boolean)">
+ <summary>
+ The <c>DeleteSnapshotSet</c> method deletes a shadow copy set including any shadow copies in that set.
+ </summary>
+ <param name="snapshotSetId">Identifier of the shadow copy set to be deleted.</param>
+ <param name="forceDelete">
+ If the value of this parameter is <see langword="true"/>, the provider will do everything possible to
+ delete the shadow copies in a shadow copy set. If it is <see langword="false"/>, no additional effort will be made.
+ </param>
+ <remarks>
+ <para>
+ Multiple shadow copies in a shadow copy set are deleted sequentially. If an error occurs during one of these individual
+ deletions, <b>DeleteSnapshotSet</b> 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 <see cref="T:Alphaleonis.Win32.Vss.VssDeleteSnapshotsFailedException"/> thrown.
+ </para>
+ <para>
+ The requester is responsible for serializing the delete shadow copy operation.
+ </para>
+ <para>
+ During a backup, shadow copies are automatically released as soon as the <see cref="T:Alphaleonis.Win32.Vss.IVssBackupComponents"/> instance is
+ disposed. In this case, it is not necessary to explicitly delete shadow copies.
+ </para>
+ </remarks>
+ <exception cref="T:Alphaleonis.Win32.Vss.VssDeleteSnapshotsFailedException">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.</exception>
+ <exception cref="T:System.UnauthorizedAccessException">The caller does not have sufficient backup privileges or is not an administrator.</exception>
+ <exception cref="T:System.ArgumentException">One of the parameters is not valid.</exception>
+ <exception cref="T:System.OutOfMemoryException">Out of memory or other system resources.</exception>
+ <exception cref="T:System.SystemException">Unexpected VSS system error. The error code is logged in the event log.</exception>
+ <exception cref="T:Alphaleonis.Win32.Vss.VssObjectNotFoundException">The specified shadow copy does not exist.</exception>
+ <exception cref="T:Alphaleonis.Win32.Vss.VssProviderVetoException">Expected provider error. The provider logged the error in the event log.</exception>
+ <exception cref="T:Alphaleonis.Win32.Vss.VssUnexpectedProviderErrorException">Unexpected provider error. The error code is logged in the error log.</exception>
+ <returns>The total number of snapshots that were deleted</returns>
+ </member>
+ <member name="M:Alphaleonis.Win32.Vss.IVssBackupComponents.DisableWriterClasses(System.Guid[])">
+ <summary>
+ This method prevents a specific class of writers from receiving any events.
+ </summary>
+ <param name="writerClassIds">An array containing one or more writer class identifiers.</param>
+ <exception cref="T:System.UnauthorizedAccessException">The caller does not have sufficient backup privileges or is not an administrator.</exception>
+ <exception cref="T:System.ArgumentException">One of the parameters is not valid.</exception>
+ <exception cref="T:System.OutOfMemoryException">Out of memory or other system resources.</exception>
+ <exception cref="T:System.SystemException">Unexpected VSS system error. The error code is logged in the event log.</exception>
+ <exception cref="T:Alphaleonis.Win32.Vss.VssBadStateException">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.</exception>
+ </member>
+ <member name="M:Alphaleonis.Win32.Vss.IVssBackupComponents.DisableWriterInstances(System.Guid[])">
+ <summary>
+ This method disables a specified writer instance or instances.
+ </summary>
+ <param name="writerInstanceIds">An array containing one or more writer instance identifiers.</param>
+ <exception cref="T:System.UnauthorizedAccessException">The caller does not have sufficient backup privileges or is not an administrator.</exception>
+ <exception cref="T:System.ArgumentException">One of the parameters is not valid.</exception>
+ <exception cref="T:System.OutOfMemoryException">Out of memory or other system resources.</exception>
+ <exception cref="T:System.SystemException">Unexpected VSS system error. The error code is logged in the event log.</exception>
+ <exception cref="T:Alphaleonis.Win32.Vss.VssBadStateException">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.</exception>
+ </member>
+ <member name="M:Alphaleonis.Win32.Vss.IVssBackupComponents.DoSnapshotSet">
+ <summary>
+ Commits all shadow copies in this set simultaneously.
+ </summary>
+ <returns>A <see cref="T:Alphaleonis.Win32.Vss.IVssAsync"/> instance representing this asynchronous operation.</returns>
+ <exception cref="T:System.UnauthorizedAccessException">The caller does not have sufficient backup privileges or is not an administrator.</exception>
+ <exception cref="T:System.OutOfMemoryException">Out of memory or other system resources.</exception>
+ <exception cref="T:System.SystemException">Unexpected VSS system error. The error code is logged in the event log.</exception>
+ <exception cref="T:Alphaleonis.Win32.Vss.VssBadStateException">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 <b>DoSnapshotSet</b>. </exception>
+ <exception cref="T:Alphaleonis.Win32.Vss.VssInsufficientStorageException">The system or provider has insufficient storage space. If possible delete any old or unnecessary persistent shadow copies and try again. This error code is only returned via the QueryStatus method on the <see cref="T:Alphaleonis.Win32.Vss.IVssAsync"/>.</exception>
+ <exception cref="T:Alphaleonis.Win32.Vss.VssFlushWritesTimeoutException">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.</exception>
+ <exception cref="T:Alphaleonis.Win32.Vss.VssHoldWritesTimeoutException">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.</exception>
+ <exception cref="T:Alphaleonis.Win32.Vss.VssProviderVetoException">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. This error code is only returned via the <see cref="M:Alphaleonis.Win32.Vss.IVssAsync.QueryStatus"/> method on the <see cref="T:Alphaleonis.Win32.Vss.IVssAsync"/> instance returned by this method.</exception>
+ <exception cref="T:Alphaleonis.Win32.Vss.VssRebootRequiredException">
+ <para>
+ The provider encountered an error that requires the user to restart the computer.
+ </para>
+ <para>
+ <b>Windows Server 2003 and Windows XP:</b> This value is not supported until Windows Vista.
+ </para>
+ </exception>
+ <exception cref="T:Alphaleonis.Win32.Vss.VssTransactionFreezeTimeoutException">
+ <para>
+ The system was unable to freeze the Distributed Transaction Coordinator (DTC) or the Kernel Transaction Manager (KTM).
+ </para>
+ <para>
+ <b>Windows Server 2003 and Windows XP:</b> This value is not supported until Windows Vista.
+ </para>
+ </exception>
+ <exception cref="T:Alphaleonis.Win32.Vss.VssTransactionThawTimeoutException">
+ <para>
+ The system was unable to freeze the Distributed Transaction Coordinator (DTC) or the Kernel Transaction Manager (KTM).
+ </para>
+ <para>
+ <b>Windows Server 2003 and Windows XP:</b> This value is not supported until Windows Vista.
+ </para>
+ </exception>
+ <exception cref="T:Alphaleonis.Win32.Vss.VssUnexpectedProviderErrorException">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. This error code is only returned via the <see cref="M:Alphaleonis.Win32.Vss.IVssAsync.QueryStatus"/> method on the <see cref="T:Alphaleonis.Win32.Vss.IVssAsync"/> instance returned by this method.</exception>
+ </member>
+ <member name="M:Alphaleonis.Win32.Vss.IVssBackupComponents.EnableWriterClasses(System.Guid[])">
+ <summary>
+ The <b>EnableWriterClasses</b> method enables the specified writers to receive all events.
+ </summary>
+ <param name="writerClassIds">An array containing one or more writer class identifiers.</param>
+ <remarks>
+
+ <para>
+ Once this method is called, only enabled writer classes are subsequently called.
+ </para>
+ <para>
+ <see cref="M:Alphaleonis.Win32.Vss.IVssBackupComponents.DisableWriterClasses(System.Guid[])"/> must be called prior to <see cref="M:Alphaleonis.Win32.Vss.IVssBackupComponents.GatherWriterMetadata"/>. To obtain information about the writers
+ currently running on the system, it may be necessary to call <see cref="M:Alphaleonis.Win32.Vss.IVssBackupComponents.GatherWriterMetadata"/> from another instance of the
+ <see cref="T:Alphaleonis.Win32.Vss.IVssBackupComponents"/> class.
+ </para>
+ <para>
+ After <see cref="M:Alphaleonis.Win32.Vss.IVssBackupComponents.GatherWriterMetadata"/> is called, these calls have no effect.
+ </para>
+ </remarks>
+ <exception cref="T:System.UnauthorizedAccessException">The caller does not have sufficient backup privileges or is not an administrator.</exception>
+ <exception cref="T:System.OutOfMemoryException">Out of memory or other system resources.</exception>
+ <exception cref="T:System.SystemException">Unexpected VSS system error. The error code is logged in the event log.</exception>
+ <exception cref="T:Alphaleonis.Win32.Vss.VssBadStateException">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.</exception>
+ </member>
+ <member name="M:Alphaleonis.Win32.Vss.IVssBackupComponents.ExposeSnapshot(System.Guid,System.String,Alphaleonis.Win32.Vss.VssVolumeSnapshotAttributes,System.String)">
+ <summary>
+ The <b>ExposeSnapshot</b> method exposes a shadow copy either by mounting it as a device on a drive letter or mount point, or
+ as a file share.
+ </summary>
+ <param name="snapshotId">Shadow copy identifier.</param>
+ <param name="pathFromRoot">
+ <para>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.</para>
+ <para>The path cannot contain environment variables (for example, %MyEnv%) or wildcard characters.</para>
+ <para>There is no requirement that the path end with a backslash ("\"). It is up to applications that retrieve this information to check.</para>
+ </param>
+ <param name="attributes">Attributes of the exposed shadow copy indicating whether it is exposed locally or remotely. The value must
+ be either the <see cref="F:Alphaleonis.Win32.Vss.VssVolumeSnapshotAttributes.ExposedLocally"/> or the <see cref="F:Alphaleonis.Win32.Vss.VssVolumeSnapshotAttributes.ExposedRemotely"/>
+ value of <see cref="T:Alphaleonis.Win32.Vss.VssVolumeSnapshotAttributes"/>.</param>
+ <param name="expose">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 <see langword="null"/>, then VSS determines the share name or drive
+ letter if the <paramref name="attributes"/> parameter is <see cref="F:Alphaleonis.Win32.Vss.VssVolumeSnapshotAttributes.ExposedRemotely"/>. </param>
+ <returns>The exposed name of the shadow copy. This is either a share name, a drive letter followed by a colon, or a mount point.</returns>
+ <remarks>
+ <para>When exposing a persistent shadow copy, it remains exposed through subsequent boots.</para>
+ <para>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.</para>
+ <para>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.</para>
+ <para>When exposed as a file share, subsets (indicated by <paramref name="pathFromRoot"/>) of the volume can be shared.</para>
+ </remarks>
+ <exception cref="T:System.ArgumentException">One of the parameter values is not valid.</exception>
+ <exception cref="T:System.UnauthorizedAccessException">The caller does not have sufficient backup privileges or is not an administrator.</exception>
+ <exception cref="T:System.OutOfMemoryException">Out of memory or other system resources.</exception>
+ <exception cref="T:System.SystemException">Unexpected VSS system error. The error code is logged in the event log.</exception>
+ <exception cref="T:Alphaleonis.Win32.Vss.VssBadStateException">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.</exception>
+ <exception cref="T:Alphaleonis.Win32.Vss.VssObjectNotFoundException">The specified shadow copy does not exist.</exception>
+ <exception cref="T:Alphaleonis.Win32.Vss.VssProviderVetoException">Expected provider error. The provider logged the error in the event log.</exception>
+ <exception cref="T:Alphaleonis.Win32.Vss.VssUnexpectedProviderErrorException">Unexpected provider error. The error code is logged in the error log.</exception>
+ </member>
+ <member name="M:Alphaleonis.Win32.Vss.IVssBackupComponents.FreeWriterMetadata">
+ <summary>
+ The <c>FreeWriterMetadata</c> method frees system resources allocated when <see cref="M:Alphaleonis.Win32.Vss.IVssBackupComponents.GatherWriterMetadata"/> was called.
+ </summary>
+ <remarks>
+ <para>
+ This method should never be called prior to the completion of <see cref="M:Alphaleonis.Win32.Vss.IVssBackupComponents.GatherWriterMetadata"/>.
+ The result of calling the method prior to completion of the metadata gather is undefined.
+ </para>
+ <para>
+ Once writer metadata has been freed, it cannot be recovered by the current instance of the <see cref="T:Alphaleonis.Win32.Vss.IVssBackupComponents"/> class.
+ It will be necessary to create a new instance of <see cref="T:Alphaleonis.Win32.Vss.IVssBackupComponents"/>, and call the
+ <see cref="M:Alphaleonis.Win32.Vss.IVssBackupComponents.GatherWriterMetadata"/> method again.
+ </para>
+ </remarks>
+ <exception cref="T:Alphaleonis.Win32.Vss.VssBadStateException">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.</exception>
+ </member>
+ <member name="M:Alphaleonis.Win32.Vss.IVssBackupComponents.FreeWriterStatus">
+ <summary>
+ The <c>FreeWriterStatus</c> method frees system resources allocated during the call to <see cref="M:Alphaleonis.Win32.Vss.IVssBackupComponents.GatherWriterStatus"/>.
+ </summary>
+ <exception cref="T:System.OutOfMemoryException">The caller is out of memory or other system resources.</exception>
+ <exception cref="T:Alphaleonis.Win32.Vss.VssBadStateException">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.</exception>
+ </member>
+ <member name="M:Alphaleonis.Win32.Vss.IVssBackupComponents.GatherWriterMetadata">
+ <summary>
+ The <see cref="M:Alphaleonis.Win32.Vss.IVssBackupComponents.GatherWriterMetadata"/> method prompts each writer to send the metadata they have collected. The method will generate an <c>Identify</c> event to communicate with writers.
+ </summary>
+ <remarks><see cref="M:Alphaleonis.Win32.Vss.IVssBackupComponents.GatherWriterMetadata"/> should be called only once during the lifetime of a given <see cref="T:Alphaleonis.Win32.Vss.IVssBackupComponents"/> object.</remarks>
+ <returns>A <see cref="T:Alphaleonis.Win32.Vss.IVssAsync"/> instance representing this asynchronous operation.</returns>
+ <exception cref="T:System.UnauthorizedAccessException">The caller does not have sufficient backup privileges or is not an administrator.</exception>
+ <exception cref="T:System.OutOfMemoryException">Out of memory or other system resources.</exception>
+ <exception cref="T:System.SystemException">Unexpected VSS system error. The error code is logged in the event log.</exception>
+ <exception cref="T:Alphaleonis.Win32.Vss.VssBadStateException">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.</exception>
+ <exception cref="T:Alphaleonis.Win32.Vss.VssWriterInfrastructureException">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.</exception>
+ </member>
+ <member name="M:Alphaleonis.Win32.Vss.IVssBackupComponents.GatherWriterStatus">
+ <summary>
+ The <see cref="M:Alphaleonis.Win32.Vss.IVssBackupComponents.GatherWriterStatus"/> method prompts each writer to send a status message.
+ </summary>
+ <returns>A <see cref="T:Alphaleonis.Win32.Vss.IVssAsync"/> instance representing this asynchronous operation.</returns>
+ <remarks>The caller of this method should also call <see cref="M:Alphaleonis.Win32.Vss.IVssBackupComponents.FreeWriterStatus"/> after receiving the status of each writer.</remarks>
+ <exception cref="T:System.UnauthorizedAccessException">The caller does not have sufficient backup privileges or is not an administrator.</exception>
+ <exception cref="T:System.OutOfMemoryException">Out of memory or other system resources.</exception>
+ <exception cref="T:System.SystemException">Unexpected VSS system error. The error code is logged in the event log.</exception>
+ <exception cref="T:Alphaleonis.Win32.Vss.VssBadStateException">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.</exception>
+ <exception cref="T:Alphaleonis.Win32.Vss.VssWriterInfrastructureException">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.</exception>
+ </member>
+ <member name="M:Alphaleonis.Win32.Vss.IVssBackupComponents.GetSnapshotProperties(System.Guid)">
+ <summary>
+ The <see cref="M:Alphaleonis.Win32.Vss.IVssBackupComponents.GetSnapshotProperties(System.Guid)"/> method gets the properties of the specified shadow copy.
+ </summary>
+ <param name="snapshotId">The identifier of the shadow copy of a volume as returned by <see cref="M:Alphaleonis.Win32.Vss.IVssBackupComponents.AddToSnapshotSet(System.String,System.Guid)"/>. </param>
+ <returns>A <see cref="T:Alphaleonis.Win32.Vss.VssSnapshotProperties"/> instance containing the shadow copy properties.</returns>
+ <exception cref="T:System.UnauthorizedAccessException">The caller does not have sufficient backup privileges or is not an administrator.</exception>
+ <exception cref="T:System.ArgumentException">One of the parameter values is not valid.</exception>
+ <exception cref="T:System.OutOfMemoryException">Out of memory or other system resources.</exception>
+ <exception cref="T:System.SystemException">Unexpected VSS system error. The error code is logged in the event log.</exception>
+ <exception cref="T:Alphaleonis.Win32.Vss.VssBadStateException">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.</exception>
+ <exception cref="T:Alphaleonis.Win32.Vss.VssObjectNotFoundException">The specified shadow copy does not exist.</exception>
+ <exception cref="T:Alphaleonis.Win32.Vss.VssProviderVetoException">Expected provider error. The provider logged the error in the event log.</exception>
+ <exception cref="T:Alphaleonis.Win32.Vss.VssUnexpectedProviderErrorException">Unexpected provider error. The error code is logged in the error log.</exception>
+ </member>
+ <member name="M:Alphaleonis.Win32.Vss.IVssBackupComponents.ImportSnapshots">
+ <summary>
+ The ImportSnapshots method imports shadow copies transported from a different machine.
+ </summary>
+ <note>This method is supported only on Windows Server operating systems.</note>
+ <returns>A <see cref="T:Alphaleonis.Win32.Vss.IVssAsync"/> instance representing this asynchronous operation.</returns>
+ <remarks>
+ <para>Only one shadow copy can be imported at a time.</para>
+ <para>The requester is responsible for serializing the import shadow copy operation.</para>
+ <para>For more information see the <see href="http://msdn.microsoft.com/en-us/library/aa382683(VS.85).aspx">MSDN documentation on IIVssBackupComponents::ImportSnapshots Method</see></para>
+ <para>Requires Windows Server 2008, Windows Server 2003 SP1, Windows Server 2003, Enterprise Edition, or Windows Server 2003, Datacenter Edition.</para>
+ </remarks>
+ <exception cref="T:System.UnauthorizedAccessException">The caller does not have sufficient backup privileges or is not an administrator.</exception>
+ <exception cref="T:System.OutOfMemoryException">Out of memory or other system resources.</exception>
+ <exception cref="T:System.SystemException">Unexpected VSS system error. The error code is logged in the event log.</exception>
+ <exception cref="T:Alphaleonis.Win32.Vss.VssBadStateException">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.</exception>
+ </member>
+ <member name="M:Alphaleonis.Win32.Vss.IVssBackupComponents.InitializeForBackup(System.String)">
+ <summary>
+ The <see cref="M:Alphaleonis.Win32.Vss.IVssBackupComponents.InitializeForBackup(System.String)"/> method initializes the backup components metadata in preparation for backup.
+ </summary>
+ <param name="xml">
+ <para>
+ During imports of transported shadow copies, this parameter must be the original document generated when creating the saved
+ shadow copy and saved using <see cref="M:Alphaleonis.Win32.Vss.IVssBackupComponents.SaveAsXml"/>.
+ </para>
+ <para>
+ This parameter may be <see langword="null"/>
+ </para>
+ </param>
+ <remarks>
+ The XML document supplied to this method initializes the <see cref="T:Alphaleonis.Win32.Vss.IVssBackupComponents"/> object with metadata previously stored by
+ a call to <see cref="M:Alphaleonis.Win32.Vss.IVssBackupComponents.SaveAsXml"/>. Users should not tamper with this metadata document.
+ </remarks>
+ <exception cref="T:System.UnauthorizedAccessException">The caller does not have sufficient backup privileges or is not an administrator.</exception>
+ <exception cref="T:System.OutOfMemoryException">Out of memory or other system resources.</exception>
+ <exception cref="T:System.SystemException">Unexpected VSS system error. The error code is logged in the event log.</exception>
+ <exception cref="T:Alphaleonis.Win32.Vss.VssBadStateException">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.</exception>
+ <exception cref="T:Alphaleonis.Win32.Vss.VssInvalidXmlDocumentException">The XML document is not valid. Check the event log for details.</exception>
+ </member>
+ <member name="M:Alphaleonis.Win32.Vss.IVssBackupComponents.InitializeForRestore(System.String)">
+ <summary>
+ The <see cref="M:Alphaleonis.Win32.Vss.IVssBackupComponents.InitializeForRestore(System.String)"/> method initializes the IIVssBackupComponents interface in preparation for a restore operation.
+ </summary>
+ <param name="xml">
+ XML string containing the Backup Components Document generated by a backup operation and saved by
+ <see cref="M:Alphaleonis.Win32.Vss.IVssBackupComponents.SaveAsXml"/>.
+ </param>
+ <remarks>
+ The XML document supplied to this method initializes the <see cref="T:Alphaleonis.Win32.Vss.IVssBackupComponents"/> object with metadata previously stored by a call to
+ <see cref="M:Alphaleonis.Win32.Vss.IVssBackupComponents.SaveAsXml"/>. Users should not tamper with this metadata document.
+ </remarks>
+ <exception cref="T:System.ArgumentNullException"><paramref name="xml"/> is <see langword="null"/></exception>
+ <exception cref="T:System.UnauthorizedAccessException">The caller does not have sufficient backup privileges or is not an administrator.</exception>
+ <exception cref="T:System.OutOfMemoryException">Out of memory or other system resources.</exception>
+ <exception cref="T:System.SystemException">Unexpected VSS system error. The error code is logged in the event log.</exception>
+ <exception cref="T:Alphaleonis.Win32.Vss.VssBadStateException">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.</exception>
+ <exception cref="T:Alphaleonis.Win32.Vss.VssInvalidXmlDocumentException">The load operation of the specified XML document failed.</exception>
+ </member>
+ <member name="M:Alphaleonis.Win32.Vss.IVssBackupComponents.IsVolumeSupported(System.String,System.Guid)">
+ <summary>
+ The <c>IsVolumeSupported</c> method determines whether the specified provider supports shadow copies on the specified volume.
+ </summary>
+ <param name="providerId">
+ Provider identifier. If the value is <see cref="F:System.Guid.Empty"/>, <see cref="M:Alphaleonis.Win32.Vss.IVssBackupComponents.IsVolumeSupported(System.String,System.Guid)"/> checks whether any provider
+ supports the volume.
+ </param>
+ <param name="volumeName">Name of the volume. The name of the volume to be checked must be in one of the following formats:
+ <list type="bullet">
+ <item><description>The path of a volume mount point with a backslash (\)</description></item>
+ <item><description>A drive letter with backslash (\), for example, D:\</description></item>
+ <item><description>A unique volume name of the form \\?\Volume{GUID}\ (where GUID is the unique global identifier of the volume) with a backslash (\)</description></item>
+ </list></param>
+ <returns><see langword="true"/> if shadow copies are supported on the specified volume. If the value is <see langword="false"/>, shadow
+ copies are not supported on the specified volume.</returns>
+ <remarks>
+ <para>
+ <see cref="M:Alphaleonis.Win32.Vss.IVssBackupComponents.IsVolumeSupported(System.String,System.Guid)"/> will return <see langword="true"/> 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.
+ </para>
+ <para>
+ 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.
+ </para>
+ </remarks>
+ <exception cref="T:System.ArgumentNullException"><paramref name="volumeName"/> is <see langword="null"/></exception>
+ <exception cref="T:System.UnauthorizedAccessException">The caller does not have sufficient backup privileges or is not an administrator.</exception>
+ <exception cref="T:System.OutOfMemoryException">Out of memory or other system resources.</exception>
+ <exception cref="T:System.SystemException">Unexpected VSS system error. The error code is logged in the event log.</exception>
+ <exception cref="T:Alphaleonis.Win32.Vss.VssBadStateException">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.</exception>
+ <exception cref="T:Alphaleonis.Win32.Vss.VssObjectNotFoundException">The specified volume was not found or was not available.</exception>
+ </member>
+ <member name="M:Alphaleonis.Win32.Vss.IVssBackupComponents.IsVolumeSupported(System.String)">
+ <summary>
+ The <c>IsVolumeSupported</c> method determines whether any provider supports shadow copies on the specified volume.
+ </summary>
+ <param name="volumeName">Name of the volume. The name of the volume to be checked must be in one of the following formats:
+ <list type="bullet">
+ <item><description>The path of a volume mount point with a backslash (\)</description></item>
+ <item><description>A drive letter with backslash (\), for example, D:\</description></item>
+ <item><description>A unique volume name of the form \\?\Volume{GUID}\ (where GUID is the unique global identifier of the volume) with a backslash (\)</description></item>
+ </list></param>
+ <returns><see langword="true"/> if shadow copies are supported on the specified volume. If the value is <see langword="false"/>, shadow
+ copies are not supported on the specified volume.</returns>
+ <remarks>
+ <para>
+ <see cref="M:Alphaleonis.Win32.Vss.IVssBackupComponents.IsVolumeSupported(System.String,System.Guid)"/> will return <see langword="true"/> 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.
+ </para>
+ <para>
+ 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.
+ </para>
+ </remarks>
+ <exception cref="T:System.ArgumentNullException"><paramref name="volumeName"/> is <see langword="null"/></exception>
+ <exception cref="T:System.UnauthorizedAccessException">The caller does not have sufficient backup privileges or is not an administrator.</exception>
+ <exception cref="T:System.OutOfMemoryException">Out of memory or other system resources.</exception>
+ <exception cref="T:System.SystemException">Unexpected VSS system error. The error code is logged in the event log.</exception>
+ <exception cref="T:Alphaleonis.Win32.Vss.VssBadStateException">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.</exception>
+ <exception cref="T:Alphaleonis.Win32.Vss.VssObjectNotFoundException">The specified volume was not found or was not available.</exception>
+ </member>
+ <member name="M:Alphaleonis.Win32.Vss.IVssBackupComponents.PostRestore">
+ <summary>
+ The <see cref="M:Alphaleonis.Win32.Vss.IVssBackupComponents.PostRestore"/> method will cause VSS to generate a <c>PostRestore</c> event, signaling writers that the current
+ restore operation has finished.
+ </summary>
+ <returns>A <see cref="T:Alphaleonis.Win32.Vss.IVssAsync"/> instance representing this asynchronous operation.</returns>
+ <exception cref="T:System.UnauthorizedAccessException">The caller does not have sufficient backup privileges or is not an administrator.</exception>
+ <exception cref="T:System.OutOfMemoryException">Out of memory or other system resources.</exception>
+ <exception cref="T:System.SystemException">Unexpected VSS system error. The error code is logged in the event log.</exception>
+ <exception cref="T:Alphaleonis.Win32.Vss.VssBadStateException">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.</exception>
+ <exception cref="T:Alphaleonis.Win32.Vss.VssObjectNotFoundException">The specified volume was not found or was not available.</exception>
+ <exception cref="T:Alphaleonis.Win32.Vss.VssProviderVetoException">Expected provider error. The provider logged the error in the event log.</exception>
+ </member>
+ <member name="M:Alphaleonis.Win32.Vss.IVssBackupComponents.PrepareForBackup">
+ <summary>
+ The <see cref="M:Alphaleonis.Win32.Vss.IVssBackupComponents.PrepareForBackup"/> method will cause VSS to generate a PrepareForBackup event, signaling writers to prepare for an upcoming
+ backup operation. This makes a requester's Backup Components Document available to writers.
+ </summary>
+ <remarks>
+ <para>
+ <see cref="M:Alphaleonis.Win32.Vss.IVssBackupComponents.PrepareForBackup"/> generates a <c>PrepareForBackup</c> event, which is handled by each instance of each writer
+ through the CVssWriter::OnPrepareBackup method.
+ </para>
+ <para>
+ Before PrepareForBackup can be called, <see cref="M:Alphaleonis.Win32.Vss.IVssBackupComponents.SetBackupState(System.Boolean,System.Boolean,Alphaleonis.Win32.Vss.VssBackupType,System.Boolean)"/> must be called.
+ </para>
+ </remarks>
+ <returns>A <see cref="T:Alphaleonis.Win32.Vss.IVssAsync"/> instance representing this asynchronous operation.</returns>
+ <exception cref="T:System.UnauthorizedAccessException">The caller does not have sufficient backup privileges or is not an administrator.</exception>
+ <exception cref="T:System.OutOfMemoryException">Out of memory or other system resources.</exception>
+ <exception cref="T:System.SystemException">Unexpected VSS system error. The error code is logged in the event log.</exception>
+ <exception cref="T:Alphaleonis.Win32.Vss.VssBadStateException">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.</exception>
+ </member>
+ <member name="M:Alphaleonis.Win32.Vss.IVssBackupComponents.PreRestore">
+ <summary>
+ The <see cref="M:Alphaleonis.Win32.Vss.IVssBackupComponents.PreRestore"/> method will cause VSS to generate a <c>PreRestore</c> event, signaling writers to prepare for a
+ coming restore operation.
+ </summary>
+ <returns>A <see cref="T:Alphaleonis.Win32.Vss.IVssAsync"/> instance representing this asynchronous operation.</returns>
+ <exception cref="T:System.UnauthorizedAccessException">The caller does not have sufficient backup privileges or is not an administrator.</exception>
+ <exception cref="T:System.OutOfMemoryException">Out of memory or other system resources.</exception>
+ <exception cref="T:System.SystemException">Unexpected VSS system error. The error code is logged in the event log.</exception>
+ <exception cref="T:Alphaleonis.Win32.Vss.VssBadStateException">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.</exception>
+ </member>
+ <member name="M:Alphaleonis.Win32.Vss.IVssBackupComponents.QuerySnapshots">
+ <summary>
+ The <see cref="M:Alphaleonis.Win32.Vss.IVssBackupComponents.QuerySnapshots"/> method queries the completed shadow copies in the system that reside in the current context.
+ The method can be called only during backup operations.
+ </summary>
+ <returns>A list of <see cref="T:Alphaleonis.Win32.Vss.VssSnapshotProperties"/> objects representing the requested information.</returns>
+ <remarks>
+ <para>
+ Because <see cref="M:Alphaleonis.Win32.Vss.IVssBackupComponents.QuerySnapshots"/> returns only information on completed shadow copies, the only shadow copy state it can disclose
+ is <see cref="F:Alphaleonis.Win32.Vss.VssSnapshotState.Created"/>.
+ </para>
+ <para>
+ The method may be called only during backup operations and must be preceded by calls to <see cref="M:Alphaleonis.Win32.Vss.IVssBackupComponents.InitializeForBackup(System.String)"/> and
+ <see cref="O:Alphaleonis.Win32.Vss.IVssBackupComponents.SetContext"/>.
+ </para>
+ <para>
+ The method will return only information
+ about shadow copies with the current context (set by <see cref="O:Alphaleonis.Win32.Vss.IVssBackupComponents.SetContext"/>). For instance, if the
+ <see cref="T:Alphaleonis.Win32.Vss.VssSnapshotContext"/> context is set to <see cref="F:Alphaleonis.Win32.Vss.VssSnapshotContext.Backup"/>, <see cref="M:Alphaleonis.Win32.Vss.IVssBackupComponents.QuerySnapshots"/> will not
+ return information on a shadow copy created with a context of <see cref="F:Alphaleonis.Win32.Vss.VssSnapshotContext.FileShareBackup"/>.
+ </para>
+ </remarks>
+ <exception cref="T:System.ArgumentException">One of the parameter values is not valid.</exception>
+ <exception cref="T:System.UnauthorizedAccessException">The caller is not an administrator or a backup operator.</exception>
+ <exception cref="T:System.OutOfMemoryException">Out of memory or other system resources.</exception>
+ <exception cref="T:System.SystemException">Unexpected VSS system error. The error code is logged in the event log.</exception>
+ <exception cref="T:Alphaleonis.Win32.Vss.VssBadStateException">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.</exception>
+ <exception cref="T:Alphaleonis.Win32.Vss.VssObjectNotFoundException">The queried object is not found.</exception>
+ <exception cref="T:Alphaleonis.Win32.Vss.VssProviderVetoException">Expected provider error. The provider logged the error in the event log.</exception>
+ <exception cref="T:Alphaleonis.Win32.Vss.VssUnexpectedProviderErrorException">Unexpected provider error. The error code is logged in the error log.</exception>
+ </member>
+ <member name="M:Alphaleonis.Win32.Vss.IVssBackupComponents.QueryProviders">
+ <summary>
+ The <see cref="M:Alphaleonis.Win32.Vss.IVssBackupComponents.QueryProviders"/> method queries providers on the system.
+ The method can be called only during backup operations.
+ </summary>
+ <returns>A list of <see cref="T:Alphaleonis.Win32.Vss.VssProviderProperties"/> objects representing the requested information.</returns>
+ <remarks>
+ <para>
+ The method may be called only during backup operations and must be preceded by calls to <see cref="M:Alphaleonis.Win32.Vss.IVssBackupComponents.InitializeForBackup(System.String)"/> and
+ <see cref="O:Alphaleonis.Win32.Vss.IVssBackupComponents.SetContext"/>.
+ </para>
+ </remarks>
+ <exception cref="T:System.ArgumentException">One of the parameter values is not valid.</exception>
+ <exception cref="T:System.UnauthorizedAccessException">The caller is not an administrator or a backup operator.</exception>
+ <exception cref="T:System.OutOfMemoryException">Out of memory or other system resources.</exception>
+ <exception cref="T:System.SystemException">Unexpected VSS system error. The error code is logged in the event log.</exception>
+ <exception cref="T:Alphaleonis.Win32.Vss.VssBadStateException">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.</exception>
+ <exception cref="T:Alphaleonis.Win32.Vss.VssObjectNotFoundException">The queried object is not found.</exception>
+ <exception cref="T:Alphaleonis.Win32.Vss.VssProviderVetoException">Expected provider error. The provider logged the error in the event log.</exception>
+ <exception cref="T:Alphaleonis.Win32.Vss.VssUnexpectedProviderErrorException">Unexpected provider error. The error code is logged in the error log.</exception>
+ </member>
+ <member name="M:Alphaleonis.Win32.Vss.IVssBackupComponents.QueryRevertStatus(System.String)">
+ <summary>
+ The <see cref="M:Alphaleonis.Win32.Vss.IVssBackupComponents.QueryRevertStatus(System.String)"/> method returns an <see cref="T:Alphaleonis.Win32.Vss.IVssAsync"/> instance that can be used to determine the status of
+ the revert operation.
+ </summary>
+ <param name="volumeName">Name of the volume. The name of the volume to be checked must be in one of the following formats:
+ <list type="bullet">
+ <item><description>The path of a volume mount point with a backslash (\)</description></item>
+ <item><description>A drive letter with backslash (\), for example, D:\</description></item>
+ <item><description>A unique volume name of the form \\?\Volume{GUID}\ (where GUID is the unique global identifier of the volume) with a backslash (\)</description></item>
+ </list></param>
+ <returns>A <see cref="T:Alphaleonis.Win32.Vss.IVssAsync"/> instance representing this asynchronous operation.</returns>
+ <remarks>
+ 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.
+ <note><b>Windows XP, Windows Server 2003 and Windows Vista:</b> This method requires Windows Server 2008 or Windows Server 2003 SP1</note>
+ </remarks>
+ <exception cref="T:System.ArgumentException">One of the parameter values is not valid.</exception>
+ <exception cref="T:System.UnauthorizedAccessException">The calling process has insufficient privileges.</exception>
+ <exception cref="T:System.OutOfMemoryException">Out of memory or other system resources.</exception>
+ <exception cref="T:System.SystemException">Unexpected VSS system error. The error code is logged in the event log.</exception>
+ <exception cref="T:Alphaleonis.Win32.Vss.VssBadStateException">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.</exception>
+ <exception cref="T:Alphaleonis.Win32.Vss.VssObjectNotFoundException">The <paramref name="volumeName"/> parameter is not a valid volume.</exception>
+ <exception cref="T:Alphaleonis.Win32.Vss.VssVolumeNotSupportedException">Revert is not supported on this volume.</exception>
+ <exception cref="T:System.NotImplementedException">The provider for the volume does not support revert operations.</exception>
+ <exception cref="T:System.NotSupportedException">This operation is not supported on the current operating system.</exception>
+ </member>
+ <member name="M:Alphaleonis.Win32.Vss.IVssBackupComponents.RevertToSnapshot(System.Guid,System.Boolean)">
+ <summary>
+ The <see cref="M:Alphaleonis.Win32.Vss.IVssBackupComponents.RevertToSnapshot(System.Guid,System.Boolean)"/> method reverts a volume to a previous shadow copy. Only shadow copies created with persistent
+ contexts (<see cref="F:Alphaleonis.Win32.Vss.VssSnapshotContext.AppRollback"/>, <see cref="F:Alphaleonis.Win32.Vss.VssSnapshotContext.ClientAccessible"/>,
+ <see cref="F:Alphaleonis.Win32.Vss.VssSnapshotContext.ClientAccessibleWriters"/> or <see cref="F:Alphaleonis.Win32.Vss.VssSnapshotContext.NasRollback"/>)
+ are supported.
+ </summary>
+ <param name="snapshotId">The identifier of the shadow copy to revert</param>
+ <param name="forceDismount">If this parameter is <see langword="true"/>, the volume will be dismounted and reverted even if the volume is in use.</param>
+ <remarks>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.
+ <note><b>Windows XP, Windows Server 2003 and Windows Vista:</b> This method requires Windows Server 2008 or Windows Server 2003 SP1</note>
+ </remarks>
+ <exception cref="T:System.ArgumentException">One of the parameter values is not valid.</exception>
+ <exception cref="T:System.UnauthorizedAccessException">The calling process has insufficient privileges.</exception>
+ <exception cref="T:System.OutOfMemoryException">Out of memory or other system resources.</exception>
+ <exception cref="T:System.SystemException">Unexpected VSS system error. The error code is logged in the event log.</exception>
+ <exception cref="T:Alphaleonis.Win32.Vss.VssBadStateException">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.</exception>
+ <exception cref="T:Alphaleonis.Win32.Vss.VssObjectNotFoundException">The <paramref name="snapshotId"/> parameter is not a valid shadow copy.</exception>
+ <exception cref="T:Alphaleonis.Win32.Vss.VssProviderNotRegisteredException">The provider was not found.</exception>
+ <exception cref="T:Alphaleonis.Win32.Vss.VssRevertInProgressException">The volume already has a revert in process.</exception>
+ <exception cref="T:Alphaleonis.Win32.Vss.VssUnsupportedContextException">Revert is only supported for persistent shadow copies.</exception>
+ <exception cref="T:Alphaleonis.Win32.Vss.VssVolumeInUseException">The <paramref name="forceDismount"/> parameter was <see langword="false"/>, and the volume could not be locked.</exception>
+ <exception cref="T:Alphaleonis.Win32.Vss.VssVolumeNotSupportedException">Revert is not supported on this volume.</exception>
+ <exception cref="T:System.NotImplementedException">The provider for the volume does not support revert operations.</exception>
+ <exception cref="T:System.NotSupportedException">This operation is not supported on the current operating system.</exception>
+ </member>
+ <member name="M:Alphaleonis.Win32.Vss.IVssBackupComponents.SaveAsXml">
+ <summary>
+ 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.
+ </summary>
+ <returns>The Backup Components Document containing a requester's state information.</returns>
+ <remarks>
+ <para>For a typical backup operation, SaveAsXml should not be called until after both writers and the requester are finished modifying the Backup Components Document.</para>
+ <para>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 <see cref="M:Alphaleonis.Win32.Vss.IVssBackupComponents.DoSnapshotSet"/>.</para>
+ <para>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 <see cref="M:Alphaleonis.Win32.Vss.IVssBackupComponents.SetBackupSucceeded(System.Guid,System.Guid,Alphaleonis.Win32.Vss.VssComponentType,System.String,System.String,System.Boolean)"/> method.</para>
+ <para>Once the requester has finished modifying the Backup Components Document, the requester should use <see cref="M:Alphaleonis.Win32.Vss.IVssBackupComponents.SaveAsXml"/> to save a copy of the document to the backup media.</para>
+ <para>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.</para>
+ <para>However, <see cref="M:Alphaleonis.Win32.Vss.IVssBackupComponents.SaveAsXml"/> should never be called prior to <see cref="M:Alphaleonis.Win32.Vss.IVssBackupComponents.PrepareForBackup"/>, because the Backup Components Document will not have been filled by the requester and the writers.</para>
+ </remarks>
+ <exception cref="T:System.OutOfMemoryException">Out of memory or other system resources.</exception>
+ <exception cref="T:System.SystemException">Unexpected VSS system error. The error code is logged in the event log.</exception>
+ <exception cref="T:Alphaleonis.Win32.Vss.VssBadStateException">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.</exception>
+ </member>
+ <member name="M:Alphaleonis.Win32.Vss.IVssBackupComponents.SetAdditionalRestores(System.Guid,Alphaleonis.Win32.Vss.VssComponentType,System.String,System.String,System.Boolean)">
+ <summary>
+ The <b>SetAdditionalRestores</b> 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.
+ </summary>
+ <param name="writerId">Writer identifier.</param>
+ <param name="componentType">Type of the component.</param>
+ <param name="logicalPath">
+ <para>
+ The logical path of the component to be added. For more information, see
+ <see href="http://msdn.microsoft.com/en-us/library/aa384316(VS.85).aspx">Logical Pathing of Components</see>.
+ </para>
+ <para>
+ 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 <see cref="M:Alphaleonis.Win32.Vss.IVssBackupComponents.AddComponent(System.Guid,System.Guid,Alphaleonis.Win32.Vss.VssComponentType,System.String,System.String)"/>.
+ </para>
+ <para>
+ The logical path can be <see langword="null"/>.
+ </para>
+ <para>
+ There are no restrictions on the characters that can appear in a non-<c>null</c> logical path.
+ </para>
+ </param>
+ <param name="componentName">
+ <para>The name of the component.</para>
+ <para>
+ The value of the string should not be <see langword="null"/>, and should contain the same component as was used when the
+ component was added to the backup set using <see cref="M:Alphaleonis.Win32.Vss.IVssBackupComponents.AddComponent(System.Guid,System.Guid,Alphaleonis.Win32.Vss.VssComponentType,System.String,System.String)"/>.
+ </para>
+ </param>
+ <param name="additionalResources">
+ <para>
+ If the value of this parameter is <see langword="true"/>, additional restores of the component will follow this restore. If the
+ value is <see langword="false"/>, additional restores of the component will not follow this restore.
+ </para>
+ </param>
+ <remarks>
+ <para>
+ The information provided by the <see cref="M:Alphaleonis.Win32.Vss.IVssBackupComponents.SetAdditionalRestores(System.Guid,Alphaleonis.Win32.Vss.VssComponentType,System.String,System.String,System.Boolean)"/> 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.
+ </para>
+ <para>
+ Therefore, if <see cref="M:Alphaleonis.Win32.Vss.IVssBackupComponents.SetAdditionalRestores(System.Guid,Alphaleonis.Win32.Vss.VssComponentType,System.String,System.String,System.Boolean)"/> for a component is set to <see langword="true"/>, 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.
+ </para>
+ <para>
+ When <see cref="M:Alphaleonis.Win32.Vss.IVssBackupComponents.SetAdditionalRestores(System.Guid,Alphaleonis.Win32.Vss.VssComponentType,System.String,System.String,System.Boolean)"/> on a component is set to <see langword="false"/>, then after the component is restored,
+ the application can complete its recovery operation and be brought back online.
+ </para>
+ <para>
+ This method must be called before <see cref="M:Alphaleonis.Win32.Vss.IVssBackupComponents.PreRestore"/>.
+ </para>
+ </remarks>
+ <exception cref="T:System.ArgumentNullException">One of the arguments that cannot be <see langword="null"/> was <see langword="null"/></exception>
+ <exception cref="T:System.ArgumentException">One of the parameter values is not valid.</exception>
+ <exception cref="T:System.OutOfMemoryException">Out of memory or other system resources.</exception>
+ <exception cref="T:System.SystemException">Unexpected VSS system error. The error code is logged in the event log.</exception>
+ <exception cref="T:Alphaleonis.Win32.Vss.VssBadStateException">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.</exception>
+ <exception cref="T:Alphaleonis.Win32.Vss.VssObjectNotFoundException">The backup component does not exist.</exception>
+ <exception cref="T:Alphaleonis.Win32.Vss.VssInvalidXmlDocumentException">The XML document is not valid. Check the event log for details.</exception>
+ </member>
+ <member name="M:Alphaleonis.Win32.Vss.IVssBackupComponents.SetAuthoritativeRestore(System.Guid,Alphaleonis.Win32.Vss.VssComponentType,System.String,System.String,System.Boolean)">
+ <summary>
+ Marks the restore of a component as authoritative for a replicated data store.
+ </summary>
+ <param name="writerId">The globally unique identifier (GUID) of the writer class.</param>
+ <param name="componentType">Type of the component.</param>
+ <param name="logicalPath">
+ <para>
+ The logical path of the component to be added. For more information, see
+ <see href="http://msdn.microsoft.com/en-us/library/aa384316(VS.85).aspx">Logical Pathing of Components</see>.
+ </para>
+ <para>
+ 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 <see cref="M:Alphaleonis.Win32.Vss.IVssBackupComponents.AddComponent(System.Guid,System.Guid,Alphaleonis.Win32.Vss.VssComponentType,System.String,System.String)"/>.
+ </para>
+ <para>
+ The logical path can be <see langword="null"/>.
+ </para>
+ <para>
+ There are no restrictions on the characters that can appear in a non-<c>null</c> logical path.
+ </para>
+ </param>
+ <param name="componentName">
+ <para>The name of the component.</para>
+ <para>
+ The value of the string should not be <see langword="null"/>, and should contain the same component as was used when the
+ component was added to the backup set using <see cref="M:Alphaleonis.Win32.Vss.IVssBackupComponents.AddComponent(System.Guid,System.Guid,Alphaleonis.Win32.Vss.VssComponentType,System.String,System.String)"/>.
+ </para>
+ </param>
+ <param name="isAuthorative"><see langword="true"/> to indicate that the restore of the component is authoritative; otherwise, <see langword="false"/>.</param>
+ <exception cref="T:System.ArgumentNullException">One of the arguments that cannot be <see langword="null"/> was <see langword="null"/></exception>
+ <exception cref="T:System.ArgumentException">One of the parameter values is not valid.</exception>
+ <exception cref="T:System.OutOfMemoryException">Out of memory or other system resources.</exception>
+ <exception cref="T:System.SystemException">Unexpected VSS system error. The error code is logged in the event log.</exception>
+ <exception cref="T:Alphaleonis.Win32.Vss.VssBadStateException">This method was not called during a restore operation.</exception>
+ <exception cref="T:Alphaleonis.Win32.Vss.VssObjectNotFoundException">The specified component was not found.</exception>
+ <remarks>
+ <para>
+ <note>
+ <b>Windows XP and Windows 2003:</b> This method requires Windows Vista or Windows Server 2008.
+ </note>
+ </para>
+ </remarks>
+ </member>
+ <member name="M:Alphaleonis.Win32.Vss.IVssBackupComponents.SetRestoreName(System.Guid,Alphaleonis.Win32.Vss.VssComponentType,System.String,System.String,System.String)">
+ <summary>
+ Assigns a new logical name to a component that is being restored.
+ </summary>
+ <param name="writerId">The globally unique identifier (GUID) of the writer class.</param>
+ <param name="componentType">The type of the component.</param>
+ <param name="logicalPath">
+ <para>
+ A string containing the logical path of the component. For more information, see
+ <see href="http://msdn.microsoft.com/en-us/library/aa384316(VS.85).aspx">Logical Pathing of Components</see>.
+ </para>
+ <para>
+ 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.
+ </para>
+ <para>
+ The logical path can be <see langword="null"/>.
+ </para>
+ <para>
+ There are no restrictions on the characters that can appear in a logical path.
+ </para>
+ </param>
+ <param name="componentName">
+ <para>The name of the component.</para>
+ <para>
+ The string cannot be <see langword="null"/> 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 <see cref="M:Alphaleonis.Win32.Vss.IVssBackupComponents.AddComponent(System.Guid,System.Guid,Alphaleonis.Win32.Vss.VssComponentType,System.String,System.String)"/> method.
+ </para>
+ </param>
+ <param name="restoreName">String containing the restore name to be set for the component.</param>
+ <exception cref="T:System.ArgumentNullException">One of the arguments that cannot be <see langword="null"/> was <see langword="null"/></exception>
+ <exception cref="T:System.ArgumentException">One of the parameter values is not valid.</exception>
+ <exception cref="T:System.OutOfMemoryException">Out of memory or other system resources.</exception>
+ <exception cref="T:System.SystemException">Unexpected VSS system error. The error code is logged in the event log.</exception>
+ <exception cref="T:Alphaleonis.Win32.Vss.VssBadStateException">This method was not called during a restore operation.</exception>
+ <exception cref="T:Alphaleonis.Win32.Vss.VssObjectNotFoundException">The specified component was not found.</exception>
+ <remarks>
+ <para>
+ <note>
+ <b>Windows XP and Windows 2003:</b> This method requires Windows Vista or Windows Server 2008.
+ </note>
+ </para>
+ </remarks>
+ </member>
+ <member name="M:Alphaleonis.Win32.Vss.IVssBackupComponents.SetBackupOptions(System.Guid,Alphaleonis.Win32.Vss.VssComponentType,System.String,System.String,System.String)">
+ <summary>
+ Sets a string of private, or writer-dependent, backup parameters for a component.
+ </summary>
+ <param name="writerId">Writer identifier.</param>
+ <param name="componentType">Type of the component.</param>
+ <param name="logicalPath">
+ <para>
+ The logical path of the component to be added. For more information, see
+ <see href="http://msdn.microsoft.com/en-us/library/aa384316(VS.85).aspx">Logical Pathing of Components</see>.
+ </para>
+ <para>
+ 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 <see cref="M:Alphaleonis.Win32.Vss.IVssBackupComponents.AddComponent(System.Guid,System.Guid,Alphaleonis.Win32.Vss.VssComponentType,System.String,System.String)"/>.
+ </para>
+ <para>
+ The logical path can be <see langword="null"/>.
+ </para>
+ <para>
+ There are no restrictions on the characters that can appear in a non-<c>null</c> logical path.
+ </para>
+ </param>
+ <param name="componentName">
+ <para>The name of the component.</para>
+ <para>
+ The value of the string should not be <see langword="null"/>, and should contain the same component as was used when the
+ component was added to the backup set using <see cref="M:Alphaleonis.Win32.Vss.IVssBackupComponents.AddComponent(System.Guid,System.Guid,Alphaleonis.Win32.Vss.VssComponentType,System.String,System.String)"/>.
+ </para>
+ </param>
+ <param name="backupOptions">
+ String containing the backup parameters to be set.
+ </param>
+ <remarks>
+ <para>
+ The exact syntax and content of the backup options set by the wszBackupOptions parameter of the <see cref="M:Alphaleonis.Win32.Vss.IVssBackupComponents.SetBackupOptions(System.Guid,Alphaleonis.Win32.Vss.VssComponentType,System.String,System.String,System.String)"/> method
+ will depend on the specific writer being contacted.
+ </para>
+ <para>
+ This method must be called before <see cref="M:Alphaleonis.Win32.Vss.IVssBackupComponents.PrepareForBackup"/>.
+ </para>
+ </remarks>
+ <exception cref="T:System.ArgumentNullException">One of the arguments that cannot be <see langword="null"/> was <see langword="null"/></exception>
+ <exception cref="T:System.ArgumentException">One of the parameter values is not valid.</exception>
+ <exception cref="T:System.OutOfMemoryException">Out of memory or other system resources.</exception>
+ <exception cref="T:System.SystemException">Unexpected VSS system error. The error code is logged in the event log.</exception>
+ <exception cref="T:Alphaleonis.Win32.Vss.VssBadStateException">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.</exception>
+ <exception cref="T:Alphaleonis.Win32.Vss.VssObjectNotFoundException">The backup component does not exist.</exception>
+ <exception cref="T:Alphaleonis.Win32.Vss.VssInvalidXmlDocumentException">The XML document is not valid. Check the event log for details.</exception>
+ </member>
+ <member name="M:Alphaleonis.Win32.Vss.IVssBackupComponents.SetBackupState(System.Boolean,System.Boolean,Alphaleonis.Win32.Vss.VssBackupType,System.Boolean)">
+ <summary>
+ Defines an overall configuration for a backup operation.
+ </summary>
+ <param name="selectComponents">
+ <para>
+ Indicates whether a backup or restore operation will be in component mode.
+ </para>
+ <para>
+ 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.
+ </para>
+ <para>
+ The Boolean is <see langword="true"/> if the operation will be conducted in component mode and <see langword="false"/> if not.
+ </para>
+ </param>
+ <param name="backupBootableSystemState">
+ <para>
+ Indicates whether a bootable system state backup is being performed.
+ </para>
+ </param>
+ <param name="backupType">
+ <para>
+ A <see cref="T:Alphaleonis.Win32.Vss.VssBackupType"/> enumeration value indicating the type of backup to be performed.
+ </para>
+ </param>
+ <param name="partialFileSupport">
+ <para>
+ If the value of this parameter is <see langword="true"/>, partial file support is enabled.
+ The default value for this argument is <see langword="false"/>.
+ </para>
+ </param>
+ <remarks>
+ Applications must call <see cref="M:Alphaleonis.Win32.Vss.IVssBackupComponents.SetBackupState(System.Boolean,System.Boolean,Alphaleonis.Win32.Vss.VssBackupType,System.Boolean)"/> prior to calling <see cref="M:Alphaleonis.Win32.Vss.IVssBackupComponents.PrepareForBackup"/>.
+ </remarks>
+ <exception cref="T:System.ArgumentNullException">One of the arguments that cannot be <see langword="null"/> was <see langword="null"/></exception>
+ <exception cref="T:System.ArgumentException">One of the parameter values is not valid.</exception>
+ <exception cref="T:System.OutOfMemoryException">Out of memory or other system resources.</exception>
+ <exception cref="T:System.SystemException">Unexpected VSS system error. The error code is logged in the event log.</exception>
+ <exception cref="T:Alphaleonis.Win32.Vss.VssBadStateException">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.</exception>
+ <exception cref="T:Alphaleonis.Win32.Vss.VssInvalidXmlDocumentException">The XML document is not valid. Check the event log for details.</exception>
+ </member>
+ <member name="M:Alphaleonis.Win32.Vss.IVssBackupComponents.SetBackupSucceeded(System.Guid,System.Guid,Alphaleonis.Win32.Vss.VssComponentType,System.String,System.String,System.Boolean)">
+ <summary>
+ Indicates whether the backup of the specified component of a specific writer was successful.
+ </summary>
+ <param name="instanceId">Globally unique identifier of the writer instance.</param>
+ <param name="writerId">Globally unique identifier of the writer class.</param>
+ <param name="componentType">Type of the component.</param>
+ <param name="logicalPath">
+ <para>
+ The logical path of the component to be added. For more information, see
+ <see href="http://msdn.microsoft.com/en-us/library/aa384316(VS.85).aspx">Logical Pathing of Components</see>.
+ </para>
+ <para>
+ 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 <see cref="M:Alphaleonis.Win32.Vss.IVssBackupComponents.AddComponent(System.Guid,System.Guid,Alphaleonis.Win32.Vss.VssComponentType,System.String,System.String)"/>.
+ </para>
+ <para>
+ The logical path can be <see langword="null"/>.
+ </para>
+ <para>
+ There are no restrictions on the characters that can appear in a non-<c>null</c> logical path.
+ </para>
+ </param>
+ <param name="componentName">
+ <para>The name of the component.</para>
+ <para>
+ The value of the string should not be <see langword="null"/>, and should contain the same component as was used when the
+ component was added to the backup set using <see cref="M:Alphaleonis.Win32.Vss.IVssBackupComponents.AddComponent(System.Guid,System.Guid,Alphaleonis.Win32.Vss.VssComponentType,System.String,System.String)"/>.
+ </para>
+ </param>
+ <param name="succeeded">The value of this parameter is <see langword="true"/> if the component was successfully backed up, and <see langword="false"/> if it was not.</param>
+ <remarks>
+ <para>
+ When working in component mode (when <see cref="M:Alphaleonis.Win32.Vss.IVssBackupComponents.SetBackupState(System.Boolean,System.Boolean,Alphaleonis.Win32.Vss.VssBackupType,System.Boolean)"/> is called with its select components argument set to <see langword="true"/>),
+ writers the state of each components backup using <see cref="P:Alphaleonis.Win32.Vss.IVssComponent.BackupSucceeded"/>.
+ </para>
+ <para>
+ Therefore, a well-behaved backup application (requester) must call <see cref="M:Alphaleonis.Win32.Vss.IVssBackupComponents.SetBackupSucceeded(System.Guid,System.Guid,Alphaleonis.Win32.Vss.VssComponentType,System.String,System.String,System.Boolean)"/> after each component has been
+ processed and prior to calling <see cref="M:Alphaleonis.Win32.Vss.IVssBackupComponents.BackupComplete"/>.
+ </para>
+ </remarks>
+ <exception cref="T:System.ArgumentNullException">One of the arguments that cannot be <see langword="null"/> was <see langword="null"/></exception>
+ <exception cref="T:System.ArgumentException">One of the parameter values is not valid.</exception>
+ <exception cref="T:System.OutOfMemoryException">Out of memory or other system resources.</exception>
+ <exception cref="T:System.SystemException">Unexpected VSS system error. The error code is logged in the event log.</exception>
+ <exception cref="T:Alphaleonis.Win32.Vss.VssBadStateException">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.</exception>
+ <exception cref="T:Alphaleonis.Win32.Vss.VssObjectNotFoundException">The backup component does not exist.</exception>
+ <exception cref="T:Alphaleonis.Win32.Vss.VssInvalidXmlDocumentException">The XML document is not valid. Check the event log for details.</exception>
+ </member>
+ <member name="M:Alphaleonis.Win32.Vss.IVssBackupComponents.SetContext(Alphaleonis.Win32.Vss.VssVolumeSnapshotAttributes)">
+ <overloads>
+ Sets the context for subsequent shadow copy-related operations.
+ </overloads>
+ <summary>
+ Sets the context for subsequent shadow copy-related operations.
+ </summary>
+ <param name="context">
+ The context to be set. The context must be one of the supported values of <see cref="T:Alphaleonis.Win32.Vss.VssSnapshotContext"/> or a supported bit
+ mask (or bitwise OR) of <see cref="T:Alphaleonis.Win32.Vss.VssVolumeSnapshotAttributes"/> with a valid <see cref="T:Alphaleonis.Win32.Vss.VssSnapshotContext"/>.
+ </param>
+ <remarks>
+ <para>
+ The default context for VSS shadow copies is <see cref="F:Alphaleonis.Win32.Vss.VssSnapshotContext.Backup"/>.
+ </para>
+ <para>
+ <b>Windows XP:</b> The only supported context is the default context, <see cref="F:Alphaleonis.Win32.Vss.VssSnapshotContext.Backup"/>. Therefore, calling
+ this method under Windows XP throws a <see cref="T:System.NotImplementedException"/>.
+ </para>
+ <para>
+ This method be called only once, and it must be called prior to calling most VSS functions.
+ </para>
+ <para>
+ For details on how the context set by this method affects how a shadow copy is created and managed, see
+ <see href="http://msdn.microsoft.com/en-us/library/aa381653(VS.85).aspx">Implementation Details for Creating Shadow Copies</see>.
+ </para>
+ <para>
+ For a complete discussion of the permitted shadow copy contexts, see <see cref="T:Alphaleonis.Win32.Vss.VssSnapshotContext"/> and <see cref="T:Alphaleonis.Win32.Vss.VssVolumeSnapshotAttributes"/>.
+ </para>
+ </remarks>
+ <exception cref="T:System.ArgumentException">One of the parameter values is not valid.</exception>
+ <exception cref="T:System.OutOfMemoryException">Out of memory or other system resources.</exception>
+ <exception cref="T:System.SystemException">Unexpected VSS system error. The error code is logged in the event log.</exception>
+ <exception cref="T:Alphaleonis.Win32.Vss.VssBadStateException">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.</exception>
+ </member>
+ <member name="M:Alphaleonis.Win32.Vss.IVssBackupComponents.SetContext(Alphaleonis.Win32.Vss.VssSnapshotContext)">
+ <summary>
+ Sets the context for subsequent shadow copy-related operations.
+ </summary>
+ <param name="context">
+ The context to be set. The context must be one of the supported values of <see cref="T:Alphaleonis.Win32.Vss.VssSnapshotContext"/> or a supported bit
+ mask (or bitwise OR) of <see cref="T:Alphaleonis.Win32.Vss.VssVolumeSnapshotAttributes"/> with a valid <see cref="T:Alphaleonis.Win32.Vss.VssSnapshotContext"/>.
+ </param>
+ <remarks>
+ <para>
+ The default context for VSS shadow copies is <see cref="F:Alphaleonis.Win32.Vss.VssSnapshotContext.Backup"/>.
+ </para>
+ <para>
+ <b>Windows XP:</b> The only supported context is the default context, <see cref="F:Alphaleonis.Win32.Vss.VssSnapshotContext.Backup"/>. Therefore, calling
+ this method under Windows XP throws a <see cref="T:System.NotImplementedException"/>.
+ </para>
+ <para>
+ <see cref="M:Alphaleonis.Win32.Vss.IVssBackupComponents.SetContext(Alphaleonis.Win32.Vss.VssSnapshotContext)"/> can be called only once, and it must be called prior to calling most VSS functions.
+ </para>
+ <para>
+ For details on how the context set by this method affects how a shadow copy is created and managed, see
+ <see href="http://msdn.microsoft.com/en-us/library/aa381653(VS.85).aspx">Implementation Details for Creating Shadow Copies</see>.
+ </para>
+ <para>
+ For a complete discussion of the permitted shadow copy contexts, see <see cref="T:Alphaleonis.Win32.Vss.VssSnapshotContext"/> and <see cref="T:Alphaleonis.Win32.Vss.VssVolumeSnapshotAttributes"/>.
+ </para>
+ </remarks>
+ <exception cref="T:System.ArgumentException">One of the parameter values is not valid.</exception>
+ <exception cref="T:System.OutOfMemoryException">Out of memory or other system resources.</exception>
+ <exception cref="T:System.SystemException">Unexpected VSS system error. The error code is logged in the event log.</exception>
+ <exception cref="T:Alphaleonis.Win32.Vss.VssBadStateException">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.</exception>
+ </member>
+ <member name="M:Alphaleonis.Win32.Vss.IVssBackupComponents.SetFileRestoreStatus(System.Guid,Alphaleonis.Win32.Vss.VssComponentType,System.String,System.String,Alphaleonis.Win32.Vss.VssFileRestoreStatus)">
+ <summary>
+ Indicates whether some, all, or no files were successfully restored.
+ </summary>
+ <param name="writerId">Globally unique identifier of the writer class.</param>
+ <param name="componentType">Type of the component.</param>
+ <param name="logicalPath">
+ <para>
+ The logical path of the component. For more information, see
+ <see href="http://msdn.microsoft.com/en-us/library/aa384316(VS.85).aspx">Logical Pathing of Components</see>.
+ </para>
+ <para>
+ 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 <see cref="M:Alphaleonis.Win32.Vss.IVssBackupComponents.AddComponent(System.Guid,System.Guid,Alphaleonis.Win32.Vss.VssComponentType,System.String,System.String)"/>.
+ </para>
+ <para>
+ The logical path can be <see langword="null"/>.
+ </para>
+ <para>
+ There are no restrictions on the characters that can appear in a non-<c>null</c> logical path.
+ </para>
+ </param>
+ <param name="componentName">
+ <para>The name of the component.</para>
+ <para>
+ The value of the string should not be <see langword="null"/>, and should contain the same component as was used when the
+ component was added to the backup set using <see cref="M:Alphaleonis.Win32.Vss.IVssBackupComponents.AddComponent(System.Guid,System.Guid,Alphaleonis.Win32.Vss.VssComponentType,System.String,System.String)"/>.
+ </para>
+ </param>
+ <param name="status">
+ If all of the files were restored, the value of this parameter is <see cref="F:Alphaleonis.Win32.Vss.VssFileRestoreStatus.All"/>.
+ If some of the files were restored, the value of this parameter is <see cref="F:Alphaleonis.Win32.Vss.VssFileRestoreStatus.Failed"/>. If none of the files
+ were restored, the value of this parameter is <see cref="F:Alphaleonis.Win32.Vss.VssFileRestoreStatus.None"/>.
+ </param>
+ <remarks>This method should be called between calls to <see cref="M:Alphaleonis.Win32.Vss.IVssBackupComponents.PreRestore"/> and <see cref="M:Alphaleonis.Win32.Vss.IVssBackupComponents.PostRestore"/>.</remarks>
+ <exception cref="T:System.ArgumentNullException">One of the arguments that cannot be <see langword="null"/> was <see langword="null"/></exception>
+ <exception cref="T:System.ArgumentException">One of the parameter values is not valid.</exception>
+ <exception cref="T:System.OutOfMemoryException">Out of memory or other system resources.</exception>
+ <exception cref="T:System.SystemException">Unexpected VSS system error. The error code is logged in the event log.</exception>
+ <exception cref="T:Alphaleonis.Win32.Vss.VssBadStateException">The backup components object is not initialized, or this method has not been called within the correct sequence.</exception>
+ <exception cref="T:Alphaleonis.Win32.Vss.VssObjectNotFoundException">The backup component does not exist.</exception>
+ <exception cref="T:Alphaleonis.Win32.Vss.VssInvalidXmlDocumentException">The XML document is not valid. Check the event log for details.</exception>
+ </member>
+ <member name="M:Alphaleonis.Win32.Vss.IVssBackupComponents.SetPreviousBackupStamp(System.Guid,Alphaleonis.Win32.Vss.VssComponentType,System.String,System.String,System.String)">
+ <summary>
+ <para>
+ Sets the backup stamp of an earlier backup operation, upon which a differential or
+ incremental backup operation will be based.
+ </para>
+ <para>
+ The method can be called only during a backup operation.
+ </para>
+ </summary>
+ <param name="writerId">Writer identifier.</param>
+ <param name="componentType">Type of the component.</param>
+ <param name="logicalPath">
+ <para>
+ The logical path of the component. For more information, see
+ <see href="http://msdn.microsoft.com/en-us/library/aa384316(VS.85).aspx">Logical Pathing of Components</see>.
+ </para>
+ <para>
+ 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 <see cref="M:Alphaleonis.Win32.Vss.IVssBackupComponents.AddComponent(System.Guid,System.Guid,Alphaleonis.Win32.Vss.VssComponentType,System.String,System.String)"/>.
+ </para>
+ <para>
+ The logical path can be <see langword="null"/>.
+ </para>
+ <para>
+ There are no restrictions on the characters that can appear in a non-<c>null</c> logical path.
+ </para>
+ </param>
+ <param name="componentName">
+ <para>The name of the component.</para>
+ <para>
+ The value of the string should not be <see langword="null"/>, and should contain the same component as was used when the
+ component was added to the backup set using <see cref="M:Alphaleonis.Win32.Vss.IVssBackupComponents.AddComponent(System.Guid,System.Guid,Alphaleonis.Win32.Vss.VssComponentType,System.String,System.String)"/>.
+ </para>
+ </param>
+ <param name="previousBackupStamp">The backup stamp to be set.</param>
+ <remarks>
+ <para>This method should be called before <see cref="M:Alphaleonis.Win32.Vss.IVssBackupComponents.PrepareForBackup"/>.</para>
+ <para>Only requesters can call this method.</para>
+ <para>The backup stamp set by <see cref="M:Alphaleonis.Win32.Vss.IVssBackupComponents.SetPreviousBackupStamp(System.Guid,Alphaleonis.Win32.Vss.VssComponentType,System.String,System.String,System.String)"/> applies to all files in the component and any nonselectable Subcomponents it has.</para>
+ <para>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.</para>
+ <para>Therefore, the value set with <see cref="M:Alphaleonis.Win32.Vss.IVssBackupComponents.SetPreviousBackupStamp(System.Guid,Alphaleonis.Win32.Vss.VssComponentType,System.String,System.String,System.String)"/> should either be retrieved from the stored Backup Components Document of an earlier backup operation (using <see cref="P:Alphaleonis.Win32.Vss.IVssComponent.BackupStamp"/> for the correct component), or from information stored by the requester into its own internal records.</para>
+ <para>A writer will then obtain this value (using <c>IVssComponent::GetPreviousBackupStamp</c>) and using it will be able to mark the appropriate files for participation in an incremental or differential backup.</para>
+ </remarks>
+ <exception cref="T:System.ArgumentNullException">One of the arguments that cannot be <see langword="null"/> was <see langword="null"/></exception>
+ <exception cref="T:System.ArgumentException">One of the parameter values is not valid.</exception>
+ <exception cref="T:System.OutOfMemoryException">Out of memory or other system resources.</exception>
+ <exception cref="T:System.SystemException">Unexpected VSS system error. The error code is logged in the event log.</exception>
+ <exception cref="T:Alphaleonis.Win32.Vss.VssBadStateException">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.</exception>
+ <exception cref="T:Alphaleonis.Win32.Vss.VssObjectNotFoundException">The backup component does not exist.</exception>
+ <exception cref="T:Alphaleonis.Win32.Vss.VssInvalidXmlDocumentException">The XML document is not valid. Check the event log for details.</exception>
+ </member>
+ <member name="M:Alphaleonis.Win32.Vss.IVssBackupComponents.SetRangesFilePath(System.Guid,Alphaleonis.Win32.Vss.VssComponentType,System.String,System.String,System.Int32,System.String)">
+ <summary>
+ 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.
+ </summary>
+ <param name="writerId">Globally unique identifier (GUID) of the writer class containing the files involved in the partial file operation</param>
+ <param name="componentType">Type of the component.</param>
+ <param name="logicalPath">
+ <para>
+ The logical path of the component containing the files that are participating in the partial file operation. For more information, see
+ <see href="http://msdn.microsoft.com/en-us/library/aa384316(VS.85).aspx">Logical Pathing of Components</see>.
+ </para>
+ <para>
+ 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 <see cref="M:Alphaleonis.Win32.Vss.IVssBackupComponents.AddComponent(System.Guid,System.Guid,Alphaleonis.Win32.Vss.VssComponentType,System.String,System.String)"/>.
+ </para>
+ <para>
+ The logical path can be <see langword="null"/>.
+ </para>
+ <para>
+ There are no restrictions on the characters that can appear in a non-<c>null</c> logical path.
+ </para>
+ </param>
+ <param name="componentName">
+ <para>The name of the component containing the files that are participating in the partial file operation.</para>
+ <para>
+ The value of the string should not be <see langword="null"/>, and should contain the same component as was used when the
+ component was added to the backup set using <see cref="M:Alphaleonis.Win32.Vss.IVssBackupComponents.AddComponent(System.Guid,System.Guid,Alphaleonis.Win32.Vss.VssComponentType,System.String,System.String)"/>.
+ </para>
+ </param>
+ <param name="partialFileIndex">
+ Index number of the partial file. The value of this parameter is an integer between <c>0</c> and <c>n-1</c>,
+ where <c>n</c> is the total number of partial files associated with a given component. The value of <c>n</c> is the number
+ of items in <see cref="P:Alphaleonis.Win32.Vss.IVssComponent.PartialFiles"/>.
+ </param>
+ <param name="rangesFile">
+ The fully qualified path of a ranges file.
+ </param>
+ <remarks>
+ Calling <see cref="M:Alphaleonis.Win32.Vss.IVssBackupComponents.SetRangesFilePath(System.Guid,Alphaleonis.Win32.Vss.VssComponentType,System.String,System.String,System.Int32,System.String)"/> is not necessary if ranges files are restored in place.
+ <note><b>Windows XP and Windows Vista:</b> This method requires Windows Server 2008 or Windows Server 2003</note>
+ </remarks>
+ <exception cref="T:System.ArgumentNullException">One of the arguments that cannot be <see langword="null"/> was <see langword="null"/></exception>
+ <exception cref="T:System.ArgumentException">One of the parameter values is not valid.</exception>
+ <exception cref="T:System.OutOfMemoryException">Out of memory or other system resources.</exception>
+ <exception cref="T:System.SystemException">Unexpected VSS system error. The error code is logged in the event log.</exception>
+ <exception cref="T:Alphaleonis.Win32.Vss.VssBadStateException">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.</exception>
+ <exception cref="T:Alphaleonis.Win32.Vss.VssObjectNotFoundException">The backup component does not exist.</exception>
+ <exception cref="T:Alphaleonis.Win32.Vss.VssInvalidXmlDocumentException">The XML document is not valid. Check the event log for details.</exception>
+ <exception cref="T:System.NotSupportedException">The operation is not supported by the current operating system.</exception>
+ </member>
+ <member name="M:Alphaleonis.Win32.Vss.IVssBackupComponents.SetRestoreOptions(System.Guid,Alphaleonis.Win32.Vss.VssComponentType,System.String,System.String,System.String)">
+ <summary>
+ Sets a string of private, or writer-dependent, restore parameters for a writer component.
+ </summary>
+ <param name="writerId">Writer identifier.</param>
+ <param name="componentType">Type of the component.</param>
+ <param name="logicalPath">
+ <para>
+ The logical path of the component. For more information, see
+ <see href="http://msdn.microsoft.com/en-us/library/aa384316(VS.85).aspx">Logical Pathing of Components</see>.
+ </para>
+ <para>
+ 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 <see cref="M:Alphaleonis.Win32.Vss.IVssBackupComponents.AddComponent(System.Guid,System.Guid,Alphaleonis.Win32.Vss.VssComponentType,System.String,System.String)"/>.
+ </para>
+ <para>
+ The logical path can be <see langword="null"/>.
+ </para>
+ <para>
+ There are no restrictions on the characters that can appear in a non-<c>null</c> logical path.
+ </para>
+ </param>
+ <param name="componentName">
+ <para>The name of the component.</para>
+ <para>
+ The value of the string should not be <see langword="null"/>, and should contain the same component as was used when the
+ component was added to the backup set using <see cref="M:Alphaleonis.Win32.Vss.IVssBackupComponents.AddComponent(System.Guid,System.Guid,Alphaleonis.Win32.Vss.VssComponentType,System.String,System.String)"/>.
+ </para>
+ </param>
+ <param name="restoreOptions">The private string of restore parameters. For more information see <see href="http://msdn.microsoft.com/en-us/library/aa384610(VS.85).aspx">Setting VSS Restore Options</see>.</param>
+ <remarks>
+ <para>
+ This method must be called before <see cref="M:Alphaleonis.Win32.Vss.IVssBackupComponents.PreRestore"/>.
+ </para>
+ <para>
+ The exact syntax and content of the restore options set by the <paramref name="restoreOptions"/> parameter of the
+ <see cref="M:Alphaleonis.Win32.Vss.IVssBackupComponents.SetRestoreOptions(System.Guid,Alphaleonis.Win32.Vss.VssComponentType,System.String,System.String,System.String)"/> method will depend on the specific writer being contacted.
+ </para>
+ </remarks>
+ <exception cref="T:System.ArgumentNullException">One of the arguments that cannot be <see langword="null"/> was <see langword="null"/></exception>
+ <exception cref="T:System.ArgumentException">One of the parameter values is not valid.</exception>
+ <exception cref="T:System.OutOfMemoryException">Out of memory or other system resources.</exception>
+ <exception cref="T:System.SystemException">Unexpected VSS system error. The error code is logged in the event log.</exception>
+ <exception cref="T:Alphaleonis.Win32.Vss.VssBadStateException">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.</exception>
+ <exception cref="T:Alphaleonis.Win32.Vss.VssObjectNotFoundException">The backup component does not exist.</exception>
+ <exception cref="T:Alphaleonis.Win32.Vss.VssInvalidXmlDocumentException">The XML document is not valid. Check the event log for details.</exception>
+ </member>
+ <member name="M:Alphaleonis.Win32.Vss.IVssBackupComponents.SetRestoreState(Alphaleonis.Win32.Vss.VssRestoreType)">
+ <summary>
+ Defines an overall configuration for a restore operation.
+ </summary>
+ <param name="restoreType">The type of restore to be performed.</param>
+ <remarks>
+ <para>Typically, most restore operations will not need to override the default restore type <see cref="F:Alphaleonis.Win32.Vss.VssRestoreType.Undefined"/>.</para>
+ <para>If applications need to call <see cref="M:Alphaleonis.Win32.Vss.IVssBackupComponents.SetRestoreState(Alphaleonis.Win32.Vss.VssRestoreType)"/>, it should be called prior to calling <see cref="M:Alphaleonis.Win32.Vss.IVssBackupComponents.PreRestore"/>.</para>
+ <note><b>Windows XP:</b> This method requires Windows Vista, Windows Server 2008 or Windows Server 2003</note>
+ </remarks>
+ <exception cref="T:System.ArgumentException">One of the parameter values is not valid.</exception>
+ <exception cref="T:System.OutOfMemoryException">Out of memory or other system resources.</exception>
+ <exception cref="T:System.SystemException">Unexpected VSS system error. The error code is logged in the event log.</exception>
+ <exception cref="T:Alphaleonis.Win32.Vss.VssBadStateException">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.</exception>
+ <exception cref="T:Alphaleonis.Win32.Vss.VssObjectNotFoundException">The backup component does not exist.</exception>
+ <exception cref="T:Alphaleonis.Win32.Vss.VssInvalidXmlDocumentException">The XML document is not valid. Check the event log for details.</exception>
+ </member>
+ <member name="M:Alphaleonis.Win32.Vss.IVssBackupComponents.SetRollForward(System.Guid,Alphaleonis.Win32.Vss.VssComponentType,System.String,System.String,Alphaleonis.Win32.Vss.VssRollForwardType,System.String)">
+ <summary>
+ Sets the roll-forward operation type for a component and specifies the restore point for a partial roll-forward operation.
+ </summary>
+ <param name="writerId">The globally unique identifier (GUID) of the writer class.</param>
+ <param name="componentType">Type of the component.</param>
+ <param name="logicalPath">
+ <para>
+ The logical path of the component. For more information, see
+ <see href="http://msdn.microsoft.com/en-us/library/aa384316(VS.85).aspx">Logical Pathing of Components</see>.
+ </para>
+ <para>
+ 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 <see cref="M:Alphaleonis.Win32.Vss.IVssBackupComponents.AddComponent(System.Guid,System.Guid,Alphaleonis.Win32.Vss.VssComponentType,System.String,System.String)"/>.
+ </para>
+ <para>
+ The logical path can be <see langword="null"/>.
+ </para>
+ <para>
+ There are no restrictions on the characters that can appear in a non-<c>null</c> logical path.
+ </para>
+ </param>
+ <param name="componentName">
+ <para>The name of the component.</para>
+ <para>
+ The value of the string should not be <see langword="null"/>, and should contain the same component as was used when the
+ component was added to the backup set using <see cref="M:Alphaleonis.Win32.Vss.IVssBackupComponents.AddComponent(System.Guid,System.Guid,Alphaleonis.Win32.Vss.VssComponentType,System.String,System.String)"/>.
+ </para>
+ </param>
+ <param name="rollType">A <see cref="T:Alphaleonis.Win32.Vss.VssRollForwardType"/> enumeration value indicating the type of roll-forward operation to be performed.</param>
+ <param name="rollForwardPoint">
+ <para>A null-terminated wide character string specifying the roll-forward restore point.</para>
+ <para>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.</para>
+ </param>
+ <exception cref="T:System.ArgumentNullException">One of the arguments that cannot be <see langword="null"/> was <see langword="null"/></exception>
+ <exception cref="T:System.ArgumentException">One of the parameter values is not valid.</exception>
+ <exception cref="T:System.OutOfMemoryException">Out of memory or other system resources.</exception>
+ <exception cref="T:System.SystemException">Unexpected VSS system error. The error code is logged in the event log.</exception>
+ <exception cref="T:Alphaleonis.Win32.Vss.VssBadStateException">This method was not called during a restore operation.</exception>
+ <exception cref="T:Alphaleonis.Win32.Vss.VssObjectNotFoundException">The backup component does not exist.</exception>
+ <remarks>
+ <para>
+ <note>
+ <b>Windows XP and Windows 2003:</b> This method requires Windows Vista or Windows Server 2008.
+ </note>
+ </para>
+ </remarks>
+ </member>
+ <member name="M:Alphaleonis.Win32.Vss.IVssBackupComponents.SetSelectedForRestore(System.Guid,Alphaleonis.Win32.Vss.VssComponentType,System.String,System.String,System.Boolean)">
+ <summary>
+ Indicates whether the specified selectable component is selected for restoration.
+ </summary>
+ <overloads>
+ Indicates whether the specified selectable component is selected for restoration.
+ </overloads>
+ <param name="writerId">Writer identifier.</param>
+ <param name="componentType">Type of the component.</param>
+ <param name="logicalPath">
+ <para>
+ The logical path of the component. For more information, see
+ <see href="http://msdn.microsoft.com/en-us/library/aa384316(VS.85).aspx">Logical Pathing of Components</see>.
+ </para>
+ <para>
+ 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 <see cref="M:Alphaleonis.Win32.Vss.IVssBackupComponents.AddComponent(System.Guid,System.Guid,Alphaleonis.Win32.Vss.VssComponentType,System.String,System.String)"/>.
+ </para>
+ <para>
+ The logical path can be <see langword="null"/>.
+ </para>
+ <para>
+ There are no restrictions on the characters that can appear in a non-<c>null</c> logical path.
+ </para>
+ </param>
+ <param name="componentName">
+ <para>The name of the component.</para>
+ <para>
+ The value of the string should not be <see langword="null"/>, and should contain the same component as was used when the
+ component was added to the backup set using <see cref="M:Alphaleonis.Win32.Vss.IVssBackupComponents.AddComponent(System.Guid,System.Guid,Alphaleonis.Win32.Vss.VssComponentType,System.String,System.String)"/>.
+ </para>
+ </param>
+ <param name="selectedForRestore">
+ If the value of this parameter is <see langword="true"/>, the selected component has been selected for
+ restoration. If the value is <see langword="false"/>, the selected component has not been selected for restoration.
+ </param>
+ <remarks>
+ <para>SetSelectedForRestore has meaning only for restores taking place in component mode.</para>
+ <para><see cref="O:Alphaleonis.Win32.Vss.IVssBackupComponents.SetSelectedForRestore"/> can only be called for components that were explicitly added to the
+ backup document at backup time using <see cref="M:Alphaleonis.Win32.Vss.IVssBackupComponents.AddComponent(System.Guid,System.Guid,Alphaleonis.Win32.Vss.VssComponentType,System.String,System.String)"/>. Restoring a component that was implicitly
+ selected for backup as part of a component set must be done by calling <see cref="O:Alphaleonis.Win32.Vss.IVssBackupComponents.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 <see cref="M:Alphaleonis.Win32.Vss.IVssBackupComponents.AddRestoreSubcomponent(System.Guid,Alphaleonis.Win32.Vss.VssComponentType,System.String,System.String,System.String,System.String)"/>; this can only be done if the component
+ is selectable for restore.</para>
+ <para>This method must be called before <see cref="M:Alphaleonis.Win32.Vss.IVssBackupComponents.PreRestore"/>.</para>
+ </remarks>
+ <exception cref="T:System.ArgumentNullException">One of the arguments that cannot be <see langword="null"/> was <see langword="null"/></exception>
+ <exception cref="T:System.ArgumentException">One of the parameter values is not valid.</exception>
+ <exception cref="T:System.OutOfMemoryException">Out of memory or other system resources.</exception>
+ <exception cref="T:System.SystemException">Unexpected VSS system error. The error code is logged in the event log.</exception>
+ <exception cref="T:Alphaleonis.Win32.Vss.VssBadStateException">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.</exception>
+ <exception cref="T:Alphaleonis.Win32.Vss.VssObjectNotFoundException">The backup component does not exist.</exception>
+ <exception cref="T:Alphaleonis.Win32.Vss.VssInvalidXmlDocumentException">The XML document is not valid. Check the event log for details.</exception>
+ <overloads>indicates whether the specified selectable component is selected for restoration. This method has two overloads.</overloads>
+ </member>
+ <member name="M:Alphaleonis.Win32.Vss.IVssBackupComponents.SetSelectedForRestore(System.Guid,Alphaleonis.Win32.Vss.VssComponentType,System.String,System.String,System.Boolean,System.Guid)">
+ <summary>
+ Indicates whether the specified selectable component is selected for restoration to a specified writer instance.
+ </summary>
+ <param name="writerId">Globally unique identifier (GUID) of the writer class.</param>
+ <param name="componentType">Type of the component.</param>
+ <param name="logicalPath">
+ <para>
+ The logical path of the component. For more information, see
+ <see href="http://msdn.microsoft.com/en-us/library/aa384316(VS.85).aspx">Logical Pathing of Components</see>.
+ </para>
+ <para>
+ 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 <see cref="M:Alphaleonis.Win32.Vss.IVssBackupComponents.AddComponent(System.Guid,System.Guid,Alphaleonis.Win32.Vss.VssComponentType,System.String,System.String)"/>.
+ </para>
+ <para>
+ The logical path can be <see langword="null"/>.
+ </para>
+ <para>
+ There are no restrictions on the characters that can appear in a non-<c>null</c> logical path.
+ </para>
+ </param>
+ <param name="componentName">
+ <para>The name of the component.</para>
+ <para>
+ The value of the string should not be <see langword="null"/>, and should contain the same component as was used when the
+ component was added to the backup set using <see cref="M:Alphaleonis.Win32.Vss.IVssBackupComponents.AddComponent(System.Guid,System.Guid,Alphaleonis.Win32.Vss.VssComponentType,System.String,System.String)"/>.
+ </para>
+ </param>
+ <param name="selectedForRestore">
+ If the value of this parameter is <see langword="true"/>, the selected component has been selected for
+ restoration. If the value is <see langword="false"/>, the selected component has not been selected for restoration.
+ </param>
+ <param name="instanceId">
+ <para>GUID of the writer instance.</para>
+ </param>
+ <remarks>
+ <para>
+ <c>SetSelectedForRestore</c>, 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 <see cref="P:Alphaleonis.Win32.Vss.IVssExamineWriterMetadata.BackupSchema"/> method.
+ </para>
+ <para>
+ <c>SetSelectedForRestore</c> has meaning only for restores taking place in component mode.
+ </para>
+ <para>
+ <c>SetSelectedForRestore</c> 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 <c>SetSelectedForRestore</c> 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 <see cref="M:Alphaleonis.Win32.Vss.IVssBackupComponents.AddRestoreSubcomponent(System.Guid,Alphaleonis.Win32.Vss.VssComponentType,System.String,System.String,System.String,System.String)"/> method;
+ this can be done only if the component is selectable for restore (see
+ <see href="http://msdn.microsoft.com/en-us/library/aa384988(VS.85).aspx">Working with Selectability and Logical Paths</see>).
+ </para>
+ <para>
+ This method must be called before the <see cref="M:Alphaleonis.Win32.Vss.IVssBackupComponents.PreRestore"/> method.
+ </para>
+ <para>
+ The distinction between the <paramref name="instanceId"/> and <paramref name="writerID"/> parameters is necessary because it is
+ possible that multiple instances of the same writer are running on the computer.
+ </para>
+ <para>
+ If the value of the <paramref name="instanceId"/> parameter is <see cref="F:System.Guid.Empty"/>, this is equivalent to calling the
+ <see cref="M:Alphaleonis.Win32.Vss.IVssBackupComponents.SetSelectedForRestore(System.Guid,Alphaleonis.Win32.Vss.VssComponentType,System.String,System.String,System.Boolean)"/>.
+ </para>
+ <para>
+ The <paramref name="instanceId"/> parameter is used to specify that the component is to be restored to a different writer
+ instance. If the value of the <paramref name="instanceId"/> parameter is not <see cref="F:System.Guid.Empty"/>, it must match the
+ instance ID of a writer instance with the same writer class ID specified in in the <paramref name="writerId"/> parameter.
+ </para>
+ <para>
+ A writer's class identifier, instance identifier, and instance name can be found
+ in the properties of <see cref="T:Alphaleonis.Win32.Vss.IVssExamineWriterMetadata"/>.
+ </para>
+ <note>
+ <b>Windows XP and Windows 2003:</b> This method is not supported until Windows 2003 SP1.
+ </note>
+ </remarks>
+ <exception cref="T:System.ArgumentNullException">One of the arguments that cannot be <see langword="null"/> was <see langword="null"/></exception>
+ <exception cref="T:System.ArgumentException">One of the parameter values is not valid.</exception>
+ <exception cref="T:System.OutOfMemoryException">Out of memory or other system resources.</exception>
+ <exception cref="T:System.SystemException">Unexpected VSS system error. The error code is logged in the event log.</exception>
+ <exception cref="T:Alphaleonis.Win32.Vss.VssBadStateException">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.</exception>
+ <exception cref="T:Alphaleonis.Win32.Vss.VssObjectNotFoundException">The backup component does not exist.</exception>
+ <exception cref="T:Alphaleonis.Win32.Vss.VssInvalidXmlDocumentException">The XML document is not valid. Check the event log for details.</exception>
+ </member>
+ <member name="M:Alphaleonis.Win32.Vss.IVssBackupComponents.StartSnapshotSet">
+ <summary>
+ Creates a new, empty shadow copy set.
+ </summary>
+ <returns>Shadow copy set identifier.</returns>
+ <remarks>This method must be called before <see cref="M:Alphaleonis.Win32.Vss.IVssBackupComponents.PrepareForBackup"/> during backup operations.</remarks>
+ <exception cref="T:System.OutOfMemoryException">Out of memory or other system resources.</exception>
+ <exception cref="T:System.SystemException">Unexpected VSS system error. The error code is logged in the event log.</exception>
+ <exception cref="T:Alphaleonis.Win32.Vss.VssBadStateException">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.</exception>
+ <exception cref="T:Alphaleonis.Win32.Vss.VssSnapshotSetInProgressException">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.</exception>
+ </member>
+ <member name="M:Alphaleonis.Win32.Vss.IVssBackupComponents.UnexposeSnapshot(System.Guid)">
+ <summary>
+ Unexposes a shadow copy either by deleting the file share or by removing the drive letter or mount point.
+ </summary>
+ <param name="snapshotId">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.</param>
+ <exception cref="T:System.ArgumentException">One of the parameter values is not valid.</exception>
+ <exception cref="T:System.UnauthorizedAccessException">The caller does not have sufficient backup privileges or is not an administrator.</exception>
+ <exception cref="T:System.OutOfMemoryException">Out of memory or other system resources.</exception>
+ <exception cref="T:System.SystemException">Unexpected VSS system error. The error code is logged in the event log.</exception>
+ <exception cref="T:Alphaleonis.Win32.Vss.VssBadStateException">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.</exception>
+ <exception cref="T:Alphaleonis.Win32.Vss.VssObjectNotFoundException">The specified shadow copy does not exist or is not exposed.</exception>
+ <exception cref="T:Alphaleonis.Win32.Vss.VssProviderVetoException">Expected provider error. The provider logged the error in the event log.</exception>
+ <exception cref="T:Alphaleonis.Win32.Vss.VssUnexpectedProviderErrorException">Unexpected provider error. The error code is logged in the error log.</exception>
+ <remarks>
+ <para>
+ <note>
+ <b>Windows XP and Windows 2003:</b> This method requires Windows Vista or Windows Server 2008.
+ </note>
+ </para>
+ </remarks>
+ </member>
+ <member name="P:Alphaleonis.Win32.Vss.IVssBackupComponents.WriterComponents">
+ <summary>
+ A read-only list containing information about the components of each writer that has been stored in a requester's Backup Components Document.
+ </summary>
+ <remarks>
+ <para>
+ <see cref="P:Alphaleonis.Win32.Vss.IVssBackupComponents.WriterComponents"/> retrieves component information for a component stored in the Backup Components Document by earlier
+ calls to <see cref="M:Alphaleonis.Win32.Vss.IVssBackupComponents.AddComponent(System.Guid,System.Guid,Alphaleonis.Win32.Vss.VssComponentType,System.String,System.String)"/>.
+ </para>
+ <para>
+ 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 <see cref="P:Alphaleonis.Win32.Vss.IVssBackupComponents.WriterComponents"/>. This is in contrast with
+ component information found in the <see cref="T:Alphaleonis.Win32.Vss.IVssWMComponent"/> object returned by <see cref="P:Alphaleonis.Win32.Vss.IVssExamineWriterMetadata.Components"/>.
+ That information is read-only and comes from the Writer Metadata Document of a writer process.
+ </para>
+ <para>
+ The <see cref="T:Alphaleonis.Win32.Vss.IVssWriterComponents"/> instances that are returned should not be cached, because the following
+ <see cref="T:Alphaleonis.Win32.Vss.IVssBackupComponents"/> methods cause the instances that are returned by <see cref="P:Alphaleonis.Win32.Vss.IVssBackupComponents.WriterComponents"/> to
+ be no longer valid:
+ <list type="bullet">
+ <item><description><see cref="M:Alphaleonis.Win32.Vss.IVssBackupComponents.PrepareForBackup"/></description></item>
+ <item><description><see cref="M:Alphaleonis.Win32.Vss.IVssBackupComponents.DoSnapshotSet"/></description></item>
+ <item><description><see cref="M:Alphaleonis.Win32.Vss.IVssBackupComponents.BackupComplete"/></description></item>
+ <item><description><see cref="M:Alphaleonis.Win32.Vss.IVssBackupComponents.PreRestore"/></description></item>
+ <item><description><see cref="M:Alphaleonis.Win32.Vss.IVssBackupComponents.PostRestore"/></description></item>
+ </list>
+ </para>
+ <para>
+ If you call one of these methods after you have retrieved a <see cref="T:Alphaleonis.Win32.Vss.IVssWriterComponents"/> instance by calling
+ <see cref="P:Alphaleonis.Win32.Vss.IVssBackupComponents.WriterComponents"/>, you cannot reuse that instance, because it is no longer valid. Instead, you must call
+ <see cref="P:Alphaleonis.Win32.Vss.IVssBackupComponents.WriterComponents"/> again to retrieve a new <see cref="T:Alphaleonis.Win32.Vss.IVssWriterComponents"/> instance.
+ </para>
+ </remarks>
+ <value>
+ A read-only list containing information about the components of each writer that has been stored in a requester's Backup Components Document.
+ <note type="caution">This list must not be accessed after the <see cref="T:Alphaleonis.Win32.Vss.IVssBackupComponents"/> from which it
+ was obtained has been disposed.</note>
+ </value>
+ <exception cref="T:System.OutOfMemoryException">Out of memory or other system resources.</exception>
+ <exception cref="T:System.SystemException">Unexpected VSS system error. The error code is logged in the event log.</exception>
+ <exception cref="T:Alphaleonis.Win32.Vss.VssBadStateException">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.</exception>
+ </member>
+ <member name="P:Alphaleonis.Win32.Vss.IVssBackupComponents.WriterMetadata">
+ <summary>
+ A read-only list containing metadata for the writers running on the systsem.
+ </summary>
+ <value>
+ A read-only list containing metadata for the writers running on the system.
+ <note type="caution">This list must not be accessed after the <see cref="T:Alphaleonis.Win32.Vss.IVssBackupComponents"/> from which it
+ was obtained has been disposed.</note>
+ </value>
+ <remarks>
+ <para>
+ A requester must call the asynchronous operation <see cref="M:Alphaleonis.Win32.Vss.IVssBackupComponents.GatherWriterMetadata"/> and wait for it
+ to complete prior to using <see cref="P:Alphaleonis.Win32.Vss.IVssBackupComponents.WriterMetadata"/>.
+ </para>
+ <para>
+ Although <see cref="M:Alphaleonis.Win32.Vss.IVssBackupComponents.GatherWriterMetadata"/> must be called prior to either a restore or backup operation,
+ <see cref="P:Alphaleonis.Win32.Vss.IVssBackupComponents.WriterMetadata"/> is not typically used for restores.
+ </para>
+ <para>
+ Component information retrieved (during backup operations) using <see cref="P:Alphaleonis.Win32.Vss.IVssExamineWriterMetadata.Components"/>, where the
+ <see cref="T:Alphaleonis.Win32.Vss.IVssExamineWriterMetadata"/> instance has been returned by <see cref="P:Alphaleonis.Win32.Vss.IVssBackupComponents.WriterMetadata"/>, comes from the Writer
+ Metadata Document of a live writer process.
+ </para>
+ <para>
+ This is in contrast to the information returned by <see cref="P:Alphaleonis.Win32.Vss.IVssBackupComponents.WriterComponents"/> (during restore operations), which was
+ stored in the Backup Components Document by calls to <see cref="M:Alphaleonis.Win32.Vss.IVssBackupComponents.AddComponent(System.Guid,System.Guid,Alphaleonis.Win32.Vss.VssComponentType,System.String,System.String)"/>.
+ </para>
+ </remarks>
+ <exception cref="T:System.OutOfMemoryException">Out of memory or other system resources.</exception>
+ <exception cref="T:System.SystemException">Unexpected VSS system error. The error code is logged in the event log.</exception>
+ <exception cref="T:Alphaleonis.Win32.Vss.VssBadStateException">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.</exception>
+ <exception cref="T:Alphaleonis.Win32.Vss.VssInvalidXmlDocumentException">The XML document is not valid. Check the event log for details.</exception>
+ <exception cref="T:Alphaleonis.Win32.Vss.VssObjectNotFoundException">The specified shadow copy does not exist.</exception>
+ </member>
+ <member name="P:Alphaleonis.Win32.Vss.IVssBackupComponents.WriterStatus">
+ <summary>
+ A read-only list containing the status of the writers.
+ </summary>
+ <value>
+ A read-only list containing <see cref="T:Alphaleonis.Win32.Vss.VssWriterStatusInfo"/> instances representing the returned status for each respective writer.
+ <note type="caution">This list must not be accessed after the <see cref="T:Alphaleonis.Win32.Vss.IVssBackupComponents"/> from which it
+ was obtained has been disposed.</note>
+ </value>
+ <remarks>
+ <para>
+ A requester must call the asynchronous operation <see cref="M:Alphaleonis.Win32.Vss.IVssBackupComponents.GatherWriterStatus"/> and wait for it to
+ complete prior to using <see cref="P:Alphaleonis.Win32.Vss.IVssBackupComponents.WriterStatus"/>.
+ </para>
+ </remarks>
+ <exception cref="T:System.OutOfMemoryException">Out of memory or other system resources.</exception>
+ <exception cref="T:System.SystemException">Unexpected VSS system error. The error code is logged in the event log.</exception>
+ <exception cref="T:Alphaleonis.Win32.Vss.VssBadStateException">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.</exception>
+ <exception cref="T:Alphaleonis.Win32.Vss.VssObjectNotFoundException">The specified shadow copy does not exist.</exception>
+ </member>
+ <member name="T:Alphaleonis.Win32.Vss.VssTransactionThawTimeoutException">
+ <summary>
+ Exception thrown to indicate that the system was unable to thaw the
+ Distributed Transaction Coordinator (DTC) or the Kernel Transaction Manager (KTM).
+ </summary>
+ <remarks>
+ <note>
+ <b>Windows Server 2003 and Windows XP:</b> This exception is not supported until Windows Vista.
+ </note>
+ </remarks>
+ </member>
+ <member name="M:Alphaleonis.Win32.Vss.VssTransactionThawTimeoutException.#ctor">
+ <summary>
+ Initializes a new instance of the <see cref="T:Alphaleonis.Win32.Vss.VssTransactionThawTimeoutException"/>
+ class with a system-supplied message describing the error.
+ </summary>
+ </member>
+ <member name="M:Alphaleonis.Win32.Vss.VssTransactionThawTimeoutException.#ctor(System.String)">
+ <summary>
+ Initializes a new instance of the <see cref="T:Alphaleonis.Win32.Vss.VssTransactionThawTimeoutException"/> class with a specified error message.
+ </summary>
+ <param name="message">The message that describes the error</param>
+ </member>
+ <member name="M:Alphaleonis.Win32.Vss.VssTransactionThawTimeoutException.#ctor(System.String,System.Exception)">
+ <summary>
+ Initializes a new instance of the <see cref="T:Alphaleonis.Win32.Vss.VssTransactionThawTimeoutException"/> class with
+ a specified error message and a reference to the inner exception that is the cause of this exception.
+ </summary>
+ <param name="message">The message that describes the error</param>
+ <param name="innerException">The exception that is the cause of the current exception.</param>
+ </member>
+ <member name="M:Alphaleonis.Win32.Vss.VssTransactionThawTimeoutException.#ctor(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">
+ <summary>
+ Initializes a new instance of the <see cref="T:Alphaleonis.Win32.Vss.VssTransactionThawTimeoutException"/> class.
+ </summary>
+ <param name="info">The <see cref="T:System.Runtime.Serialization.SerializationInfo"/> that holds the serialized object data about the exception being thrown.</param>
+ <param name="context">The <see cref="T:System.Runtime.Serialization.StreamingContext"/> that contains contextual information about the source or destination.</param>
+ <exception cref="T:System.ArgumentNullException">The <paramref name="info"/> parameter is null. </exception>
+ <exception cref="T:System.Runtime.Serialization.SerializationException">The class name is null or <see cref="P:System.Exception.HResult"/> is zero (0). </exception>
+ </member>
+ <member name="T:Alphaleonis.Win32.Vss.VssObjectNotFoundException">
+ <summary>
+ Exception thrown to indicate that the requested object did not exists.
+ </summary>
+ </member>
+ <member name="M:Alphaleonis.Win32.Vss.VssObjectNotFoundException.#ctor">
+ <summary>
+ Initializes a new instance of the <see cref="T:Alphaleonis.Win32.Vss.VssObjectNotFoundException"/>
+ class with a system-supplied message describing the error.
+ </summary>
+ </member>
+ <member name="M:Alphaleonis.Win32.Vss.VssObjectNotFoundException.#ctor(System.String)">
+ <summary>
+ Initializes a new instance of the <see cref="T:Alphaleonis.Win32.Vss.VssObjectNotFoundException"/> class with a specified error message.
+ </summary>
+ <param name="message">The message that describes the error</param>
+ </member>
+ <member name="M:Alphaleonis.Win32.Vss.VssObjectNotFoundException.#ctor(System.String,System.Exception)">
+ <summary>
+ Initializes a new instance of the <see cref="T:Alphaleonis.Win32.Vss.VssObjectNotFoundException"/> class with
+ a specified error message and a reference to the inner exception that is the cause of this exception.
+ </summary>
+ <param name="message">The message that describes the error</param>
+ <param name="innerException">The exception that is the cause of the current exception.</param>
+ </member>
+ <member name="M:Alphaleonis.Win32.Vss.VssObjectNotFoundException.#ctor(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">
+ <summary>
+ Initializes a new instance of the <see cref="T:Alphaleonis.Win32.Vss.VssObjectNotFoundException"/> class.
+ </summary>
+ <param name="info">The <see cref="T:System.Runtime.Serialization.SerializationInfo"/> that holds the serialized object data about the exception being thrown.</param>
+ <param name="context">The <see cref="T:System.Runtime.Serialization.StreamingContext"/> that contains contextual information about the source or destination.</param>
+ <exception cref="T:System.ArgumentNullException">The <paramref name="info"/> parameter is null. </exception>
+ <exception cref="T:System.Runtime.Serialization.SerializationException">The class name is null or <see cref="P:System.Exception.HResult"/> is zero (0). </exception>
+ </member>
+ <member name="T:Alphaleonis.Win32.Vss.UnsupportedOperatingSystemException">
+ <summary>
+ 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.
+ </summary>
+ </member>
+ <member name="M:Alphaleonis.Win32.Vss.UnsupportedOperatingSystemException.#ctor">
+ <summary>
+ Initializes a new instance of the <see cref="T:Alphaleonis.Win32.Vss.UnsupportedOperatingSystemException"/> class.
+ </summary>
+ </member>
+ <member name="M:Alphaleonis.Win32.Vss.UnsupportedOperatingSystemException.#ctor(System.String)">
+ <summary>
+ Initializes a new instance of the <see cref="T:Alphaleonis.Win32.Vss.UnsupportedOperatingSystemException"/> class.
+ </summary>
+ <param name="message">The message.</param>
+ </member>
+ <member name="M:Alphaleonis.Win32.Vss.UnsupportedOperatingSystemException.#ctor(System.String,System.Exception)">
+ <summary>
+ Initializes a new instance of the <see cref="T:Alphaleonis.Win32.Vss.UnsupportedOperatingSystemException"/> class.
+ </summary>
+ <param name="message">The message.</param>
+ <param name="innerException">The inner exception.</param>
+ </member>
+ <member name="M:Alphaleonis.Win32.Vss.UnsupportedOperatingSystemException.#ctor(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">
+ <summary>
+ Initializes a new instance of the <see cref="T:Alphaleonis.Win32.Vss.UnsupportedOperatingSystemException"/> class.
+ </summary>
+ <param name="info">The <see cref="T:System.Runtime.Serialization.SerializationInfo"/> that holds the serialized object data about the exception being thrown.</param>
+ <param name="context">The <see cref="T:System.Runtime.Serialization.StreamingContext"/> that contains contextual information about the source or destination.</param>
+ <exception cref="T:System.ArgumentNullException">The <paramref name="info"/> parameter is null. </exception>
+ <exception cref="T:System.Runtime.Serialization.SerializationException">The class name is null or <see cref="P:System.Exception.HResult"/> is zero (0). </exception>
+ </member>
+ <member name="T:Alphaleonis.Win32.Vss.VssDirectedTargetInfo">
+ <summary>
+ 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.
+ </summary>
+ </member>
+ <member name="M:Alphaleonis.Win32.Vss.VssDirectedTargetInfo.#ctor(System.String,System.String,System.String,System.String,System.String,System.String)">
+ <summary>Initializes a new instance of the <see cref="T:Alphaleonis.Win32.Vss.VssDirectedTargetInfo"/> class.</summary>
+ <param name="sourcePath">The source path.</param>
+ <param name="sourceFileName">The source file name.</param>
+ <param name="sourceRangeList">The source range list.</param>
+ <param name="destinationPath">The destination path.</param>
+ <param name="destinationFileName">The destination file name.</param>
+ <param name="destinationRangeList">The destination range list.</param>
+ </member>
+ <member name="P:Alphaleonis.Win32.Vss.VssDirectedTargetInfo.SourcePath">
+ <summary>
+ 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).
+ </summary>
+ </member>
+ <member name="P:Alphaleonis.Win32.Vss.VssDirectedTargetInfo.SourceFileName">
+ <summary>
+ 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 (<see cref="P:Alphaleonis.Win32.Vss.VssDirectedTargetInfo.SourcePath"/>).
+ </summary>
+ </member>
+ <member name="P:Alphaleonis.Win32.Vss.VssDirectedTargetInfo.SourceRangeList">
+ <summary>
+ <para>
+ A comma-separated list of file offsets and lengths indicating the source file
+ support range (the sections of the file to be restored).
+ </para>
+ <para>
+ The number and length of the source file support ranges must match the number and size of destination file support ranges.
+ </para>
+ </summary>
+ </member>
+ <member name="P:Alphaleonis.Win32.Vss.VssDirectedTargetInfo.DestinationPath">
+ <summary>
+ The path to which source file data will be remapped at restore time.
+ </summary>
+ </member>
+ <member name="P:Alphaleonis.Win32.Vss.VssDirectedTargetInfo.DestinationFileName">
+ <summary>
+ The name of the file to which source file data will be remapped at restore time.
+ </summary>
+ </member>
+ <member name="P:Alphaleonis.Win32.Vss.VssDirectedTargetInfo.DestinationRangeList">
+ <summary>
+ <para>
+ 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).
+ </para>
+ <para>
+ The number and length of the destination file support ranges must match the number and size of source file support ranges.
+ </para>
+ </summary>
+ </member>
+ <member name="T:Alphaleonis.Win32.Vss.VssWriterRestore">
+ <summary>The <see cref="T:Alphaleonis.Win32.Vss.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.</summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Vss.VssWriterRestore.Undefined">
+ <summary>
+ <para>It is not known whether the writer will perform special operations during the restore operation.</para>
+ <para>This state indicates a writer error.</para>
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Vss.VssWriterRestore.Never">
+ <summary>The writer does not require restore events.</summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Vss.VssWriterRestore.IfReplaceFails">
+ <summary>
+ Indicates that the writer always expects to handle a <c>PreRestore</c> event, but expects to handle a
+ <c>PostRestore</c> event only if a restore fails when implementing either a
+ <see cref="F:Alphaleonis.Win32.Vss.VssRestoreMethod.RestoreIfNotThere"/> or
+ <see cref="F:Alphaleonis.Win32.Vss.VssRestoreMethod.RestoreIfCanReplace"/> restore method (<see cref="T:Alphaleonis.Win32.Vss.VssRestoreMethod"/>)
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Vss.VssWriterRestore.Always">
+ <summary>The writer always performs special operations during the restore operation.</summary>
+ </member>
+ <member name="T:Alphaleonis.Win32.Vss.VssMaximumDiffAreaAssociationsReachedException">
+ <summary>
+ 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.
+ </summary>
+ </member>
+ <member name="M:Alphaleonis.Win32.Vss.VssMaximumDiffAreaAssociationsReachedException.#ctor">
+ <summary>
+ Initializes a new instance of the <see cref="T:Alphaleonis.Win32.Vss.VssMaximumDiffAreaAssociationsReachedException"/>
+ class with a system-supplied message describing the error.
+ </summary>
+ </member>
+ <member name="M:Alphaleonis.Win32.Vss.VssMaximumDiffAreaAssociationsReachedException.#ctor(System.String)">
+ <summary>
+ Initializes a new instance of the <see cref="T:Alphaleonis.Win32.Vss.VssMaximumDiffAreaAssociationsReachedException"/> class with a specified error message.
+ </summary>
+ <param name="message">The message that describes the error</param>
+ </member>
+ <member name="M:Alphaleonis.Win32.Vss.VssMaximumDiffAreaAssociationsReachedException.#ctor(System.String,System.Exception)">
+ <summary>
+ Initializes a new instance of the <see cref="T:Alphaleonis.Win32.Vss.VssMaximumDiffAreaAssociationsReachedException"/> class with
+ a specified error message and a reference to the inner exception that is the cause of this exception.
+ </summary>
+ <param name="message">The message that describes the error</param>
+ <param name="innerException">The exception that is the cause of the current exception.</param>
+ </member>
+ <member name="M:Alphaleonis.Win32.Vss.VssMaximumDiffAreaAssociationsReachedException.#ctor(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">
+ <summary>
+ Initializes a new instance of the <see cref="T:Alphaleonis.Win32.Vss.VssMaximumDiffAreaAssociationsReachedException"/> class.
+ </summary>
+ <param name="info">The <see cref="T:System.Runtime.Serialization.SerializationInfo"/> that holds the serialized object data about the exception being thrown.</param>
+ <param name="context">The <see cref="T:System.Runtime.Serialization.StreamingContext"/> that contains contextual information about the source or destination.</param>
+ <exception cref="T:System.ArgumentNullException">The <paramref name="info"/> parameter is null. </exception>
+ <exception cref="T:System.Runtime.Serialization.SerializationException">The class name is null or <see cref="P:System.Exception.HResult"/> is zero (0). </exception>
+ </member>
+ <member name="T:Alphaleonis.Win32.Vss.VssRollForwardType">
+ <summary>
+ The <c>VssRollForwardType</c> enumeration is used by a requester to indicate the type of roll-forward operation it is about to perform.
+ </summary>
+ <remarks>
+ A requester sets the roll-forward operation type and specifies the restore point for partial roll-forward operations
+ using <see cref="M:Alphaleonis.Win32.Vss.IVssBackupComponents.SetRollForward(System.Guid,Alphaleonis.Win32.Vss.VssComponentType,System.String,System.String,Alphaleonis.Win32.Vss.VssRollForwardType,System.String)"/>.
+ </remarks>
+ </member>
+ <member name="F:Alphaleonis.Win32.Vss.VssRollForwardType.Undefined">
+ <summary>
+ <para>
+ No roll-forward type is defined.
+ </para>
+ <para>
+ This indicates an error on the part of the requester.
+ </para>
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Vss.VssRollForwardType.None">
+ <summary>
+ The roll-forward operation should not roll forward through logs.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Vss.VssRollForwardType.All">
+ <summary>
+ The roll-forward operation should roll forward through all logs.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Vss.VssRollForwardType.Partial">
+ <summary>
+ The roll-forward operation should roll forward through logs up to a specified restore point.
+ </summary>
+ </member>
+ <member name="T:Alphaleonis.Win32.Vss.ProcessorArchitecture">
+ <summary>
+ Enumeration used by <see cref="T:Alphaleonis.Win32.Vss.OperatingSystemInfo"/> to indicate the current
+ processor architecture for which the operating system is targeted and running.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Vss.ProcessorArchitecture.X86">
+ <summary>
+ The system is running a 32-bit version of Windows.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Vss.ProcessorArchitecture.IA64">
+ <summary>
+ The system is running an Itanium processor.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Vss.ProcessorArchitecture.X64">
+ <summary>
+ The system is running a 64-bit version of Windows.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Vss.ProcessorArchitecture.Unknown">
+ <summary>
+ Unknown architecture.
+ </summary>
+ </member>
+ <member name="T:Alphaleonis.Win32.Vss.VssWMRestoreMethod">
+ <summary>
+ Represents information about how a writer wants its data to be restored.
+ </summary>
+ <remarks>This class is a container for the data returned by <see cref="P:Alphaleonis.Win32.Vss.IVssExamineWriterMetadata.RestoreMethod"/>.</remarks>
+ </member>
+ <member name="M:Alphaleonis.Win32.Vss.VssWMRestoreMethod.#ctor(Alphaleonis.Win32.Vss.VssRestoreMethod,System.String,System.String,Alphaleonis.Win32.Vss.VssWriterRestore,System.Boolean,System.Int32)">
+ <summary>
+ Initializes a new instance of the <see cref="T:Alphaleonis.Win32.Vss.VssWMRestoreMethod"/> class.
+ </summary>
+ <param name="restoreMethod">The restore method.</param>
+ <param name="service">The service.</param>
+ <param name="userProcedure">The user procedure.</param>
+ <param name="writerRestore">The writer restore.</param>
+ <param name="rebootRequired">if set to <c>true</c> a reboot is required.</param>
+ <param name="mappings">The mappings.</param>
+ <remarks>This constructor is normally not used by application code. Rather instances of <see cref="T:Alphaleonis.Win32.Vss.VssWMRestoreMethod"/> are
+ returned by various query methods.</remarks>
+ </member>
+ <member name="P:Alphaleonis.Win32.Vss.VssWMRestoreMethod.Method">
+ <summary>
+ A <see cref="T:Alphaleonis.Win32.Vss.VssRestoreMethod"/> value that specifies file overwriting, the use of alternate locations specifying the method that
+ will be used in the restore operation.
+ </summary>
+ </member>
+ <member name="P:Alphaleonis.Win32.Vss.VssWMRestoreMethod.Service">
+ <summary>
+ If the value of <see cref="P:Alphaleonis.Win32.Vss.VssWMRestoreMethod.Method"/> is <see cref="F:Alphaleonis.Win32.Vss.VssRestoreMethod.StopRestoreStart"/>, a pointer to a string containing the name
+ of the service that is started and stopped. Otherwise, the value is <see langword="null"/>.
+ </summary>
+ </member>
+ <member name="P:Alphaleonis.Win32.Vss.VssWMRestoreMethod.UserProcedure">
+ <summary>
+ 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 <see langword="null" />.
+ </summary>
+ </member>
+ <member name="P:Alphaleonis.Win32.Vss.VssWMRestoreMethod.WriterRestore">
+ <summary>
+ A <see cref="T:Alphaleonis.Win32.Vss.VssWriterRestore"/> value specifying whether the writer will be involved in restoring its data.
+ </summary>
+ </member>
+ <member name="P:Alphaleonis.Win32.Vss.VssWMRestoreMethod.RebootRequired">
+ <summary>A <see langword="bool"/> indicating whether a reboot will be required after the restore operation is complete.</summary>
+ <value><see langword="true"/> if a reboot will be required and <see langword="false"/> if it will not.</value>
+ </member>
+ <member name="P:Alphaleonis.Win32.Vss.VssWMRestoreMethod.MappingCount">
+ <summary>The number of alternate mappings associated with the writer.</summary>
+ </member>
+ <member name="T:Alphaleonis.Win32.Vss.OperatingSystemInfo">
+ <summary>
+ Static class providing access to information about the operating system under which the
+ assembly is executing.
+ </summary>
+ </member>
+ <member name="M:Alphaleonis.Win32.Vss.OperatingSystemInfo.IsWow64Process">
+ <summary>
+ Determines whether the current process is running under WOW64.
+ </summary>
+ <returns>
+ <c>true</c> if the current process is running under WOW64; otherwise, <c>false</c>.
+ </returns>
+ </member>
+ <member name="M:Alphaleonis.Win32.Vss.OperatingSystemInfo.IsAtLeast(Alphaleonis.Win32.Vss.OSVersionName)">
+ <summary>
+ Determines whether the operating system is of the specified version or later.
+ </summary>
+ <param name="version">The lowest version for which to return <c>true</c>.</param>
+ <returns>
+ <c>true</c> if the operating system is of the specified <paramref name="version"/> or later; otherwise, <c>false</c>.
+ </returns>
+ </member>
+ <member name="M:Alphaleonis.Win32.Vss.OperatingSystemInfo.IsAtLeast(Alphaleonis.Win32.Vss.OSVersionName,System.Int32)">
+ <summary>
+ 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.
+ </summary>
+ <param name="version">The minimum required version.</param>
+ <param name="servicePackVersion">The major version of the service pack that must be installed on the
+ minimum required version to return <c>true</c>. This can be 0 to indicate that no service pack is required.</param>
+ <returns>
+ <c>true</c> if the operating system matches the specified <paramref name="version"/> with the specified service pack, or if the operating system is of a later version; otherwise, <c>false</c>.
+ </returns>
+ </member>
+ <member name="M:Alphaleonis.Win32.Vss.OperatingSystemInfo.IsWithSPAtLeast(Alphaleonis.Win32.Vss.OSVersionName,System.Int32)">
+ <summary>
+ Determines whether the current operating system matches the specified version and has at least the
+ specified service pack installed.
+ </summary>
+ <param name="osVersion">The required operating system version.</param>
+ <param name="servicePackVersion">The required service pack major version number.</param>
+ <returns>
+ <c>true</c> if the current operating system version matches <paramref name="version"/>
+ and has atleast service pack <paramref name="servicePackVersion"/> installed; otherwise, <c>false</c>.
+ </returns>
+ </member>
+ <member name="M:Alphaleonis.Win32.Vss.OperatingSystemInfo.Require(Alphaleonis.Win32.Vss.OSVersionName)">
+ <summary>
+ Determines whether the assembly is executing on the specified operating system version, and throws
+ an <see cref="T:Alphaleonis.Win32.Vss.UnsupportedOperatingSystemException"/> otherwise.
+ </summary>
+ <param name="version">The operating system version to match.</param>
+ <exception cref="T:Alphaleonis.Win32.Vss.UnsupportedOperatingSystemException">The current operating system version does not match the specified <paramref name="version"/>.</exception>
+ </member>
+ <member name="M:Alphaleonis.Win32.Vss.OperatingSystemInfo.Require(Alphaleonis.Win32.Vss.OSVersionName,System.Int32)">
+ <summary>
+ Determines whether the assembly is executing on the specified operating system version with the
+ service pack specified installed, and throws an <see cref="T:Alphaleonis.Win32.Vss.UnsupportedOperatingSystemException"/> otherwise.
+ </summary>
+ <param name="version">The operating system version to match.</param>
+ <param name="servicePackVersion">The major service pack version to match.</param>
+ <exception cref="T:Alphaleonis.Win32.Vss.UnsupportedOperatingSystemException">The current operating system version does not match the specified <paramref name="version"/>,
+ or the major version of the installed service pack does not match <paramref name="servicePackVersion"/>.</exception>
+ </member>
+ <member name="M:Alphaleonis.Win32.Vss.OperatingSystemInfo.RequireWithSPAtLeast(Alphaleonis.Win32.Vss.OSVersionName,System.Int32)">
+ <summary>
+ Determines whether the assembly is executing under the specified operating system version with
+ at least the specified service pack installed, and throws an exception otherwise.
+ </summary>
+ <param name="osVersion">The operating system version to match.</param>
+ <param name="servicePackVersion">The major service pack version to match.</param>
+ <exception cref="T:Alphaleonis.Win32.Vss.UnsupportedOperatingSystemException">The current operating system version does not match
+ the specified <paramref name="osVersion"/> with at least service pack <paramref name="servicePackVersion"/>.</exception>
+ </member>
+ <member name="M:Alphaleonis.Win32.Vss.OperatingSystemInfo.RequireWithSPAtLeast(Alphaleonis.Win32.Vss.OSVersionName,System.Int32,Alphaleonis.Win32.Vss.OSVersionName,System.Int32)">
+ <summary>
+ Determines whether the assembly is executing under one of the specified operating system versions with
+ at least the specified service pack installed, and throws an exception otherwise.
+ </summary>
+ <param name="osVersion1">The first operating system version to match.</param>
+ <param name="servicePackVersion1">The first major service pack version to match.</param>
+ <param name="osVersion2">The second operating system version to match.</param>
+ <param name="servicePackVersion2">The second major service pack version to match.</param>
+ <exception cref="T:Alphaleonis.Win32.Vss.UnsupportedOperatingSystemException">The current operating system version does not match
+ the specified <paramref name="osVersion1"/> with at least service pack <paramref name="servicePackVersion1"/> installed, <b>and</b>
+ it does not match the specified <paramref name="osVersion2"/> with at least service pack <paramref name="servicePackVersion2"/> installed.</exception>
+ </member>
+ <member name="M:Alphaleonis.Win32.Vss.OperatingSystemInfo.RequireAtLeast(Alphaleonis.Win32.Vss.OSVersionName)">
+ <summary>
+ Determines whether the assembly is executing on the specified operating system version or later.
+ If not, an exception is thrown.
+ </summary>
+ <param name="osVersion">The minimum operating system version required.</param>
+ <exception cref="T:Alphaleonis.Win32.Vss.UnsupportedOperatingSystemException">The current operating system is of a version earlier than the specified <paramref name="osVersion"/></exception>
+ </member>
+ <member name="M:Alphaleonis.Win32.Vss.OperatingSystemInfo.RequireAtLeast(Alphaleonis.Win32.Vss.OSVersionName,System.Int32)">
+ <summary>
+ 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.
+ </summary>
+ <param name="osVersion">The minimum operating system version required.</param>
+ <param name="servicePackVersion">The minimum service pack version required.</param>
+ <exception cref="T:Alphaleonis.Win32.Vss.UnsupportedOperatingSystemException">The current operating system is of a version earlier
+ than the specified <paramref name="osVersion"/> or the versions match but the operating system does not
+ have at least the specified service pack version <paramref name="servicePackVersion"/> installed.</exception>
+ </member>
+ <member name="P:Alphaleonis.Win32.Vss.OperatingSystemInfo.OSVersionName">
+ <summary>
+ Gets the named version of the operating system.
+ </summary>
+ <value>The named version of the operating system.</value>
+ </member>
+ <member name="P:Alphaleonis.Win32.Vss.OperatingSystemInfo.OSVersion">
+ <summary>
+ Gets the numeric version of the operating system. This is the same as returned by
+ <see cref="P:System.Environment.OSVersion"/>.
+ </summary>
+ <value>The numeric version of the operating system.</value>
+ </member>
+ <member name="P:Alphaleonis.Win32.Vss.OperatingSystemInfo.ServicePackVersion">
+ <summary>
+ Gets the version of the service pack currently installed on the operating system.
+ </summary>
+ <value>The version of the service pack currently installed on the operating system.</value>
+ <remarks>Only the <see cref="P:System.Version.Major"/> and <see cref="P:System.Version.Minor"/> fields are
+ used.</remarks>
+ </member>
+ <member name="P:Alphaleonis.Win32.Vss.OperatingSystemInfo.ProcessorArchitecture">
+ <summary>
+ Gets the processor architecture for which the operating system is targeted.
+ </summary>
+ <value>The processor architecture for which the operating system is targeted.</value>
+ <remarks>If running under WOW64 this will return a 32-bit processor. Use <see cref="M:Alphaleonis.Win32.Vss.OperatingSystemInfo.IsWow64Process"/> to
+ determine if this is the case.
+ </remarks>
+ </member>
+ <member name="T:Alphaleonis.Win32.Vss.IVssDifferentialSoftwareSnapshotManagement">
+ <summary>
+ The <see cref="T:Alphaleonis.Win32.Vss.IVssDifferentialSoftwareSnapshotManagement"/> interface contains methods that allow applications to query and
+ manage shadow copy storage areas generated by the system shadow copy provider.
+ </summary>
+ <remarks>
+ <para>
+ <note>
+ <para>
+ <b>Windows XP: </b> This interface requires Windows Server 2003 or later.
+ </para>
+ </note>
+ </para>
+ </remarks>
+ </member>
+ <member name="M:Alphaleonis.Win32.Vss.IVssDifferentialSoftwareSnapshotManagement.AddDiffArea(System.String,System.String,System.Int64)">
+ <summary>
+ The <see cref="M:Alphaleonis.Win32.Vss.IVssDifferentialSoftwareSnapshotManagement.AddDiffArea(System.String,System.String,System.Int64)"/> method adds a shadow copy storage area association for the specified volume.
+ If the association is not supported, an exception will be thrown.
+ </summary>
+ <param name="volumeName">
+ <para>
+ 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 <paramref name="volumeName"/> volume.
+ </para>
+ <para>
+ The name of the volume must be in one of the following formats:
+ <list type="bullet">
+ <item>
+ <description>
+ The path of a volume mount point with a backslash (\)
+ </description>
+ </item>
+ <item>
+ <description>
+ A drive letter with backslash (\), for example, <c>D:\</c>
+ </description>
+ </item>
+ <item>
+ <description>
+ A unique volume name of the form <c>\\?\Volume{GUID}\</c> (where
+ GUID is the unique global identifier of the volume) with a backslash (\)
+ </description>
+ </item>
+ </list>
+ </para>
+ </param>
+ <param name="diffAreaVolumeName">
+ <para>
+ Name of the volume that
+ will contain the shadow copy storage area to be associated with the
+ <paramref name="volumeName"/> volume.
+ </para>
+ <para>
+ The name of the volume must be in one of the following formats:
+ <list type="bullet">
+ <item>
+ <description>
+ The path of a volume mount point with a backslash (\)
+ </description>
+ </item>
+ <item>
+ <description>
+ A drive letter with backslash (\), for example, <c>D:\</c>
+ </description>
+ </item>
+ <item>
+ <description>
+ A unique volume name of the form <c>\\?\Volume{GUID}\</c> (where
+ GUID is the unique global identifier of the volume) with a backslash (\)
+ </description>
+ </item>
+ </list>
+ </para>
+ </param>
+ <param name="maximumDiffSpace">
+ <para>
+ 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.
+ </para>
+ <para>
+ Windows Server 2003: Prior to
+ Windows Server 2003 SP1 the shadow copy storage area size was fixed at 100 MB.
+ </para>
+ </param>
+ <remarks>
+ <para>
+ <note>
+ <para>
+ <b>Windows XP:</b> This method is not supported until Windows Server 2003.
+ </para>
+ </note>
+ </para>
+ </remarks>
+ <exception cref="T:System.UnauthorizedAccessException">Caller does not have sufficient backup privileges or is not an administrator.</exception>
+ <exception cref="T:System.OutOfMemoryException">The caller is out of memory or other system resources.</exception>
+ <exception cref="T:System.ArgumentException">One of the parameter values is not valid.</exception>
+ <exception cref="T:System.ArgumentNullException">One of the arguments was <see langword="null"/></exception>
+ <exception cref="T:System.SystemException">Unexpected error. The error code is logged in the error log file.</exception>
+ <exception cref="T:Alphaleonis.Win32.Vss.VssObjectAlreadyExistsException">The association between the <paramref name="volumeName"/> and <paramref name="diffAreaVolumeName"/> volumes already exists.</exception>
+ <exception cref="T:Alphaleonis.Win32.Vss.VssProviderVetoException">Expected provider error. The provider logged the error in the event log.</exception>
+ <exception cref="T:Alphaleonis.Win32.Vss.VssVolumeNotSupportedException">The <paramref name="diffAreaVolumeName"/> volume is not NTFS or has insufficient free space.</exception>
+ <exception cref="T:Alphaleonis.Win32.Vss.VssMaximumDiffAreaAssociationsReachedException">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>
+ </member>
+ <member name="M:Alphaleonis.Win32.Vss.IVssDifferentialSoftwareSnapshotManagement.ChangeDiffAreaMaximumSize(System.String,System.String,System.Int64)">
+ <summary>
+ The <see cref="O:Alphaleonis.Win32.Vss.IVssDifferentialSoftwareSnapshotManagement.ChangeDiffAreaMaximumSize"/> method updates the shadow copy storage area maximum size
+ for a certain volume. This may not have an immediate effect.
+ </summary>
+ <overloads>
+ Updates the shadow copy storage area maximum size
+ for a certain volume. This method has two overloads.
+ </overloads>
+ <param name="volumeName">
+ <para>
+ Name of the volume that is the source of shadow copies that are associated with a shadow copy
+ storage area on the <paramref name="diffAreaVolumeName"/> volume.
+ </para>
+ <para>
+ The name of the volume must be in one of the following formats:
+ <list type="bullet">
+ <item>
+ <description>
+ The path of a volume mount point with a backslash (\)
+ </description>
+ </item>
+ <item>
+ <description>
+ A drive letter with backslash (\), for example, <c>D:\</c>
+ </description>
+ </item>
+ <item>
+ <description>
+ A unique volume name of the form <c>\\?\Volume{GUID}\</c> (where
+ GUID is the unique global identifier of the volume) with a backslash (\)
+ </description>
+ </item>
+ </list>
+ </para>
+ </param>
+ <param name="diffAreaVolumeName">
+ <para>
+ Name of the volume that contains the shadow copy storage area associated with
+ the <paramref name="volumeName"/> volume.
+ </para>
+ <para>
+ The name of the volume must be in one of the following formats:
+ <list type="bullet">
+ <item>
+ <description>
+ The path of a volume mount point with a backslash (\)
+ </description>
+ </item>
+ <item>
+ <description>
+ A drive letter with backslash (\), for example, <c>D:\</c>
+ </description>
+ </item>
+ <item>
+ <description>
+ A unique volume name of the form <c>\\?\Volume{GUID}\</c> (where
+ GUID is the unique global identifier of the volume) with a backslash (\)
+ </description>
+ </item>
+ </list>
+ </para>
+ </param>
+ <param name="maximumDiffSpace">
+ 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.
+ </param>
+ <exception cref="T:System.UnauthorizedAccessException">Caller does not have sufficient backup privileges or is not an administrator.</exception>
+ <exception cref="T:System.OutOfMemoryException">The caller is out of memory or other system resources.</exception>
+ <exception cref="T:System.ArgumentException">One of the parameter values is not valid.</exception>
+ <exception cref="T:System.ArgumentNullException">One of the arguments was <see langword="null"/></exception>
+ <exception cref="T:System.SystemException">Unexpected error. The error code is logged in the error log file.</exception>
+ <exception cref="T:Alphaleonis.Win32.Vss.VssObjectNotFoundException">The association between the <paramref name="volumeName"/> and <paramref name="diffAreaVolumeName"/> volumes was not found.</exception>
+ <exception cref="T:Alphaleonis.Win32.Vss.VssProviderVetoException">Expected provider error. The provider logged the error in the event log.</exception>
+ <exception cref="T:Alphaleonis.Win32.Vss.VssInsufficientStorageException">The <paramref name="diffAreaVolumeName"/> volume does not have sufficient free space.</exception>
+ <exception cref="T:Alphaleonis.Win32.Vss.VssVolumeInUseException">A shadow copy is currently using the shadow copy storage area.</exception>
+ </member>
+ <member name="M:Alphaleonis.Win32.Vss.IVssDifferentialSoftwareSnapshotManagement.QueryDiffAreasForSnapshot(System.Guid)">
+ <summary>
+ The <see cref="M:Alphaleonis.Win32.Vss.IVssDifferentialSoftwareSnapshotManagement.QueryDiffAreasForSnapshot(System.Guid)"/> method queries shadow copy storage areas in use by the
+ original volume associated with the input shadow copy.
+ </summary>
+ <param name="snapshotId">The snapshot id.</param>
+ <returns>A list of <see cref="T:Alphaleonis.Win32.Vss.VssDiffAreaProperties"/> describing the shadow copy storage areas in use by the
+ shadow copy specified.</returns>
+ <exception cref="T:System.UnauthorizedAccessException">Caller does not have sufficient backup privileges or is not an administrator.</exception>
+ <exception cref="T:System.OutOfMemoryException">The caller is out of memory or other system resources.</exception>
+ <exception cref="T:System.ArgumentException">One of the parameter values is not valid.</exception>
+ <exception cref="T:System.ArgumentNullException">One of the arguments was <see langword="null"/></exception>
+ <exception cref="T:System.SystemException">Unexpected error. The error code is logged in the error log file.</exception>
+ <exception cref="T:Alphaleonis.Win32.Vss.VssProviderVetoException">Expected provider error. The provider logged the error in the event log.</exception>
+ </member>
+ <member name="M:Alphaleonis.Win32.Vss.IVssDifferentialSoftwareSnapshotManagement.QueryDiffAreasForVolume(System.String)">
+ <summary>
+ The <see cref="M:Alphaleonis.Win32.Vss.IVssDifferentialSoftwareSnapshotManagement.QueryDiffAreasForVolume(System.String)"/> method queries shadow copy storage areas in use by the volume specified.
+ </summary>
+ <param name="volumeName">
+ <para>
+ Name of the volume that contains shadow copy storage areas.
+ </para>
+ <para>
+ The name of the volume must be in one of the following formats:
+ <list type="bullet">
+ <item>
+ <description>
+ The path of a volume mount point with a backslash (\)
+ </description>
+ </item>
+ <item>
+ <description>
+ A drive letter with backslash (\), for example, <c>D:\</c>
+ </description>
+ </item>
+ <item>
+ <description>
+ A unique volume name of the form <c>\\?\Volume{GUID}\</c> (where
+ GUID is the unique global identifier of the volume) with a backslash (\)
+ </description>
+ </item>
+ </list>
+ </para>
+ </param>
+ <returns>A list containing <see cref="T:Alphaleonis.Win32.Vss.VssDiffAreaProperties"/> objects describing the shadow
+ copy storage areas in use by the volume specified.</returns>
+ <exception cref="T:System.UnauthorizedAccessException">Caller does not have sufficient backup privileges or is not an administrator.</exception>
+ <exception cref="T:System.OutOfMemoryException">The caller is out of memory or other system resources.</exception>
+ <exception cref="T:System.ArgumentException">One of the parameter values is not valid.</exception>
+ <exception cref="T:System.ArgumentNullException">One of the arguments was <see langword="null"/></exception>
+ <exception cref="T:System.SystemException">Unexpected error. The error code is logged in the error log file.</exception>
+ <exception cref="T:Alphaleonis.Win32.Vss.VssProviderVetoException">Expected provider error. The provider logged the error in the event log.</exception>
+ </member>
+ <member name="M:Alphaleonis.Win32.Vss.IVssDifferentialSoftwareSnapshotManagement.QueryDiffAreasOnVolume(System.String)">
+ <summary>
+ The <see cref="M:Alphaleonis.Win32.Vss.IVssDifferentialSoftwareSnapshotManagement.QueryDiffAreasOnVolume(System.String)"/> method queries shadow copy storage areas that physically
+ reside on the given volume
+ </summary>
+ <param name="volumeName">
+ <para>
+ Name of the volume that contains shadow copy storage areas.
+ </para>
+ <para>
+ The name of the volume must be in one of the following formats:
+ <list type="bullet">
+ <item>
+ <description>
+ The path of a volume mount point with a backslash (\)
+ </description>
+ </item>
+ <item>
+ <description>
+ A drive letter with backslash (\), for example, <c>D:\</c>
+ </description>
+ </item>
+ <item>
+ <description>
+ A unique volume name of the form <c>\\?\Volume{GUID}\</c> (where
+ GUID is the unique global identifier of the volume) with a backslash (\)
+ </description>
+ </item>
+ </list>
+ </para>
+ </param>
+ <returns>A list of <see cref="T:Alphaleonis.Win32.Vss.VssDiffAreaProperties"/> objects describing the
+ shadow copy storage areas that physically reside on the given volume.</returns>
+ <exception cref="T:System.UnauthorizedAccessException">Caller does not have sufficient backup privileges or is not an administrator.</exception>
+ <exception cref="T:System.OutOfMemoryException">The caller is out of memory or other system resources.</exception>
+ <exception cref="T:System.ArgumentException">One of the parameter values is not valid.</exception>
+ <exception cref="T:System.ArgumentNullException">One of the arguments was <see langword="null"/></exception>
+ <exception cref="T:System.SystemException">Unexpected error. The error code is logged in the error log file.</exception>
+ <exception cref="T:Alphaleonis.Win32.Vss.VssProviderVetoException">Expected provider error. The provider logged the error in the event log.</exception>
+ </member>
+ <member name="M:Alphaleonis.Win32.Vss.IVssDifferentialSoftwareSnapshotManagement.QueryVolumesSupportedForDiffAreas(System.String)">
+ <summary>
+ The <see cref="M:Alphaleonis.Win32.Vss.IVssDifferentialSoftwareSnapshotManagement.QueryVolumesSupportedForDiffAreas(System.String)"/> method queries volumes that support shadow copy storage
+ areas (including volumes with disabled shadow copy storage areas).
+ </summary>
+ <param name="originalVolumeName">
+ <para>
+ Name of the original volume that is the source of the shadow copies.
+ </para>
+ <para>
+ The name of the volume must be in one of the following formats:
+ <list type="bullet">
+ <item>
+ <description>
+ The path of a volume mount point with a backslash (\)
+ </description>
+ </item>
+ <item>
+ <description>
+ A drive letter with backslash (\), for example, <c>D:\</c>
+ </description>
+ </item>
+ <item>
+ <description>
+ A unique volume name of the form <c>\\?\Volume{GUID}\</c> (where
+ GUID is the unique global identifier of the volume) with a backslash (\)
+ </description>
+ </item>
+ </list>
+ </para>
+ </param>
+ <returns>A list of <see cref="T:Alphaleonis.Win32.Vss.VssDiffVolumeProperties"/> describing the volumes that support shadow
+ copy storage areas (including volumes with disabled shadow copy storage areas).</returns>
+ <exception cref="T:System.UnauthorizedAccessException">Caller does not have sufficient backup privileges or is not an administrator.</exception>
+ <exception cref="T:System.OutOfMemoryException">The caller is out of memory or other system resources.</exception>
+ <exception cref="T:System.ArgumentException">One of the parameter values is not valid.</exception>
+ <exception cref="T:System.ArgumentNullException">One of the arguments was <see langword="null"/></exception>
+ <exception cref="T:System.SystemException">Unexpected error. The error code is logged in the error log file.</exception>
+ <exception cref="T:Alphaleonis.Win32.Vss.VssProviderVetoException">Expected provider error. The provider logged the error in the event log.</exception>
+ </member>
+ <member name="M:Alphaleonis.Win32.Vss.IVssDifferentialSoftwareSnapshotManagement.ChangeDiffAreaMaximumSize(System.String,System.String,System.Int64,System.Boolean)">
+ <summary>
+ The <see cref="O:Alphaleonis.Win32.Vss.IVssDifferentialSoftwareSnapshotManagement.ChangeDiffAreaMaximumSize"/> method updates the shadow copy storage area maximum size
+ for a certain volume. This may not have an immediate effect.
+ </summary>
+ <param name="volumeName">
+ <para>
+ Name of the volume that is the source of shadow copies that are associated with a shadow copy
+ storage area on the <paramref name="diffAreaVolumeName"/> volume.
+ </para>
+ <para>
+ The name of the volume must be in one of the following formats:
+ <list type="bullet">
+ <item>
+ <description>
+ The path of a volume mount point with a backslash (\)
+ </description>
+ </item>
+ <item>
+ <description>
+ A drive letter with backslash (\), for example, <c>D:\</c>
+ </description>
+ </item>
+ <item>
+ <description>
+ A unique volume name of the form <c>\\?\Volume{GUID}\</c> (where
+ GUID is the unique global identifier of the volume) with a backslash (\)
+ </description>
+ </item>
+ </list>
+ </para>
+ </param>
+ <param name="diffAreaVolumeName">
+ <para>
+ Name of the volume that contains the shadow copy storage area associated with
+ the <paramref name="volumeName"/> volume.
+ </para>
+ <para>
+ The name of the volume must be in one of the following formats:
+ <list type="bullet">
+ <item>
+ <description>
+ The path of a volume mount point with a backslash (\)
+ </description>
+ </item>
+ <item>
+ <description>
+ A drive letter with backslash (\), for example, <c>D:\</c>
+ </description>
+ </item>
+ <item>
+ <description>
+ A unique volume name of the form <c>\\?\Volume{GUID}\</c> (where
+ GUID is the unique global identifier of the volume) with a backslash (\)
+ </description>
+ </item>
+ </list>
+ </para>
+ </param>
+ <param name="maximumDiffSpace">
+ 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.
+ </param>
+ <param name="isVolatile">
+ <para>
+ <see langword="true"/> to indicate that the effect of calling the
+ <see cref="O:Alphaleonis.Win32.Vss.IVssDifferentialSoftwareSnapshotManagement.ChangeDiffAreaMaximumSize"/> method should not continue if
+ the computer is rebooted; otherwise, <see langword="false"/>.
+ </para>
+ <para>
+ If the <paramref name="maximumDiffSpcae"/> parameter is zero, the
+ <paramref name="isVolatile"/> parameter must be <see langword="false"/>.
+ </para>
+ </param>
+ <exception cref="T:System.UnauthorizedAccessException">Caller does not have sufficient backup privileges or is not an administrator.</exception>
+ <exception cref="T:System.OutOfMemoryException">The caller is out of memory or other system resources.</exception>
+ <exception cref="T:System.ArgumentException">One of the parameter values is not valid.</exception>
+ <exception cref="T:System.ArgumentNullException">One of the arguments was <see langword="null"/></exception>
+ <exception cref="T:System.SystemException">Unexpected error. The error code is logged in the error log file.</exception>
+ <exception cref="T:Alphaleonis.Win32.Vss.VssObjectNotFoundException">The association between the <paramref name="volumeName"/> and <paramref name="diffAreaVolumeName"/> volumes was not found.</exception>
+ <exception cref="T:Alphaleonis.Win32.Vss.VssProviderVetoException">Expected provider error. The provider logged the error in the event log.</exception>
+ <exception cref="T:Alphaleonis.Win32.Vss.VssInsufficientStorageException">The <paramref name="diffAreaVolumeName"/> volume does not have sufficient free space.</exception>
+ <exception cref="T:Alphaleonis.Win32.Vss.VssVolumeInUseException">A shadow copy is currently using the shadow copy storage area.</exception>
+ </member>
+ <member name="M:Alphaleonis.Win32.Vss.IVssDifferentialSoftwareSnapshotManagement.ClearVolumeProtectFault(System.String)">
+ <summary>
+ Clears the protection fault state for the specified volume.
+ </summary>
+ <para>
+ 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 <paramref name="volumeName"/> volume.
+ </para>
+ <param name="volumeName">
+ <para>The name of the volume. This parameter is required and cannot be <see langword="null"/>.</para>
+ <para>
+ The name of the volume must be in one of the following formats:
+ <list type="bullet">
+ <item>
+ <description>
+ The path of a volume mount point with a backslash (\)
+ </description>
+ </item>
+ <item>
+ <description>
+ A drive letter with backslash (\), for example, <c>D:\</c>
+ </description>
+ </item>
+ <item>
+ <description>
+ A unique volume name of the form <c>\\?\Volume{GUID}\</c> (where
+ GUID is the unique global identifier of the volume) with a backslash (\)
+ </description>
+ </item>
+ </list>
+ </para>
+ </param>
+ <remarks>
+ <para>
+ The <see cref="M:Alphaleonis.Win32.Vss.IVssDifferentialSoftwareSnapshotManagement.ClearVolumeProtectFault(System.String)"/> method dismounts the volume and resets the
+ volume's protection fault member to <see langword="false"/> to allow normal I/O to continue
+ on the volume. If the volume is not in a faulted state, this method does nothing.
+ </para>
+ <para>
+ <note>
+ <para>
+ <b>Windows XP, Windows Server 2003 and Windows Vista:</b> This method requires Windows Server 2008.
+ </para>
+ </note>
+ </para>
+ </remarks>
+ <exception cref="T:System.UnauthorizedAccessException">Caller does not have sufficient backup privileges or is not an administrator.</exception>
+ <exception cref="T:System.OutOfMemoryException">The caller is out of memory or other system resources.</exception>
+ <exception cref="T:System.ArgumentException">One of the parameter values is not valid.</exception>
+ <exception cref="T:System.ArgumentNullException">One of the arguments was <see langword="null"/></exception>
+ <exception cref="T:System.NotImplementedException">The provider for the volume does not support shadow copy protection.</exception>
+ <exception cref="T:Alphaleonis.Win32.Vss.VssProviderVetoException">Expected provider error. The provider logged the error in the event log.</exception>
+ <exception cref="T:Alphaleonis.Win32.Vss.VssObjectNotFoundException">The specified volume was not found.</exception>
+ </member>
+ <member name="M:Alphaleonis.Win32.Vss.IVssDifferentialSoftwareSnapshotManagement.DeleteUnusedDiffAreas(System.String)">
+ <summary>
+ Deletes all shadow copy storage areas (also called diff areas) on the specified volume that are not in use.
+ </summary>
+ <param name="diffAreaVolumeName">
+ <para>The name of the volume. This parameter is required and cannot be <see langword="null"/>.</para>
+ <para>
+ The name of the volume must be in one of the following formats:
+ <list type="bullet">
+ <item>
+ <description>
+ The path of a volume mount point with a backslash (\)
+ </description>
+ </item>
+ <item>
+ <description>
+ A drive letter with backslash (\), for example, <c>D:\</c>
+ </description>
+ </item>
+ <item>
+ <description>
+ A unique volume name of the form <c>\\?\Volume{GUID}\</c> (where
+ GUID is the unique global identifier of the volume) with a backslash (\)
+ </description>
+ </item>
+ </list>
+ </para>
+ </param>
+ <remarks>
+ <para>
+ 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 <see cref="M:Alphaleonis.Win32.Vss.IVssDifferentialSoftwareSnapshotManagement.DeleteUnusedDiffAreas(System.String)"/> method is the only way to
+ recover the abandoned storage area space.
+ </para>
+ <para>
+ <note>
+ <para>
+ <b>Windows XP, Windows Server 2003 and Windows Vista:</b> This method requires Windows Server 2008.
+ </para>
+ </note>
+ </para>
+ </remarks>
+ <exception cref="T:System.UnauthorizedAccessException">Caller does not have sufficient backup privileges or is not an administrator.</exception>
+ <exception cref="T:System.OutOfMemoryException">The caller is out of memory or other system resources.</exception>
+ <exception cref="T:System.ArgumentException">One of the parameter values is not valid.</exception>
+ <exception cref="T:System.ArgumentNullException">One of the arguments was <see langword="null"/></exception>
+ <exception cref="T:System.NotImplementedException">The provider for the volume does not support shadow copy protection.</exception>
+ <exception cref="T:Alphaleonis.Win32.Vss.VssProviderVetoException">Expected provider error. The provider logged the error in the event log.</exception>
+ <exception cref="T:Alphaleonis.Win32.Vss.VssObjectNotFoundException">The specified volume was not found.</exception>
+ </member>
+ <member name="M:Alphaleonis.Win32.Vss.IVssDifferentialSoftwareSnapshotManagement.GetVolumeProtectionLevel(System.String)">
+ <summary>
+ Gets the shadow copy protection level and status for the specified volume.
+ </summary>
+ <param name="volumeName">
+ <para>The name of the volume. This parameter is required and cannot be <see langword="null"/>.</para>
+ <para>
+ The name of the volume must be in one of the following formats:
+ <list type="bullet">
+ <item>
+ <description>
+ The path of a volume mount point with a backslash (\)
+ </description>
+ </item>
+ <item>
+ <description>
+ A drive letter with backslash (\), for example, <c>D:\</c>
+ </description>
+ </item>
+ <item>
+ <description>
+ A unique volume name of the form <c>\\?\Volume{GUID}\</c> (where
+ GUID is the unique global identifier of the volume) with a backslash (\)
+ </description>
+ </item>
+ </list>
+ </para>
+ </param>
+ <returns>A <see cref="T:Alphaleonis.Win32.Vss.VssVolumeProtectionInfo"/> class instance that contains information about the volume's
+ shadow copy protection level.</returns>
+ <exception cref="T:System.UnauthorizedAccessException">Caller does not have sufficient backup privileges or is not an administrator.</exception>
+ <exception cref="T:System.OutOfMemoryException">The caller is out of memory or other system resources.</exception>
+ <exception cref="T:System.ArgumentException">One of the parameter values is not valid.</exception>
+ <exception cref="T:System.ArgumentNullException">One of the arguments was <see langword="null"/></exception>
+ <exception cref="T:System.NotImplementedException">The provider for the volume does not support shadow copy protection.</exception>
+ <exception cref="T:Alphaleonis.Win32.Vss.VssProviderVetoException">Expected provider error. The provider logged the error in the event log.</exception>
+ <exception cref="T:Alphaleonis.Win32.Vss.VssObjectNotFoundException">The specified volume was not found.</exception>
+ <para>
+ <note>
+ <para>
+ <b>Windows XP, Windows Server 2003 and Windows Vista:</b> This method requires Windows Server 2008.
+ </para>
+ </note>
+ </para>
+ <remarks>
+ <para>
+ The <see cref="M:Alphaleonis.Win32.Vss.IVssDifferentialSoftwareSnapshotManagement.GetVolumeProtectionLevel(System.String)"/> method gets information about the volume's current protection level.
+ If the volume is in a faulted state, the <see cref="P:Alphaleonis.Win32.Vss.VssVolumeProtectionInfo.ProtectionFault"/> member of the
+ <see cref="T:Alphaleonis.Win32.Vss.VssVolumeProtectionInfo"/> structure contains the current protection fault,
+ and the <see cref="P:Alphaleonis.Win32.Vss.VssVolumeProtectionInfo.FailureStatus"/> member contains the reason why the volume
+ is in a faulted state. If the volume is not in a faulted state,
+ the <see cref="P:Alphaleonis.Win32.Vss.VssVolumeProtectionInfo.ProtectionFault"/> and <see cref="P:Alphaleonis.Win32.Vss.VssVolumeProtectionInfo.FailureStatus"/>
+ members will be zero.
+ </para>
+ </remarks>
+ </member>
+ <member name="M:Alphaleonis.Win32.Vss.IVssDifferentialSoftwareSnapshotManagement.SetVolumeProtectionLevel(System.String,Alphaleonis.Win32.Vss.VssProtectionLevel)">
+ <summary>
+ Sets the shadow copy protection level for an original volume or a shadow copy storage area volume.
+ </summary>
+ <param name="volumeName">
+ <para>The name of the volume. This parameter is required and cannot be <see langword="null"/>.</para>
+ <para>
+ The name of the volume must be in one of the following formats:
+ <list type="bullet">
+ <item>
+ <description>
+ The path of a volume mount point with a backslash (\)
+ </description>
+ </item>
+ <item>
+ <description>
+ A drive letter with backslash (\), for example, <c>D:\</c>
+ </description>
+ </item>
+ <item>
+ <description>
+ A unique volume name of the form <c>\\?\Volume{GUID}\</c> (where
+ GUID is the unique global identifier of the volume) with a backslash (\)
+ </description>
+ </item>
+ </list>
+ </para>
+ </param>
+ <param name="protectionLevel">
+ A value from the <see cref="T:Alphaleonis.Win32.Vss.VssProtectionLevel"/> enumeration that specifies the shadow
+ copy protection level.
+ </param>
+ <exception cref="T:System.UnauthorizedAccessException">Caller does not have sufficient backup privileges or is not an administrator.</exception>
+ <exception cref="T:System.OutOfMemoryException">The caller is out of memory or other system resources.</exception>
+ <exception cref="T:System.ArgumentException">One of the parameter values is not valid.</exception>
+ <exception cref="T:System.ArgumentNullException">One of the arguments was <see langword="null"/></exception>
+ <exception cref="T:System.NotImplementedException">The provider for the volume does not support shadow copy protection.</exception>
+ <exception cref="T:Alphaleonis.Win32.Vss.VssProviderVetoException">Expected provider error. The provider logged the error in the event log.</exception>
+ <exception cref="T:Alphaleonis.Win32.Vss.VssObjectNotFoundException">The specified volume was not found.</exception>
+ <remarks>
+ <para>
+ The <see cref="M:Alphaleonis.Win32.Vss.IVssDifferentialSoftwareSnapshotManagement.SetVolumeProtectionLevel(System.String,Alphaleonis.Win32.Vss.VssProtectionLevel)"/> method checks the current shadow copy protection
+ level of the volume. If the volume is in a faulted state and
+ <see cref="F:Alphaleonis.Win32.Vss.VssProtectionLevel.OriginalVolume"/> is specified for the
+ <paramref name="protectionLevel"/> parameter, <see cref="M:Alphaleonis.Win32.Vss.IVssDifferentialSoftwareSnapshotManagement.SetVolumeProtectionLevel(System.String,Alphaleonis.Win32.Vss.VssProtectionLevel)"/> dismounts
+ the volume before setting the protection level.
+ </para>
+ <para>
+ If the current protection level of the volume is the same as the value of the
+ <paramref name="protectionLevel"/> parameter,
+ <see cref="M:Alphaleonis.Win32.Vss.IVssDifferentialSoftwareSnapshotManagement.SetVolumeProtectionLevel(System.String,Alphaleonis.Win32.Vss.VssProtectionLevel)"/> does nothing.
+ </para>
+ <para>
+ <note>
+ <para>
+ <b>Windows XP, Windows Server 2003 and Windows Vista:</b> This method requires Windows Server 2008.
+ </para>
+ </note>
+ </para>
+ </remarks>
+ </member>
+ <member name="T:Alphaleonis.Win32.Vss.VssVolumeSnapshotAttributes">
+ <summary>
+ Allows additional attributes to be specified for a shadow copy. The context of a shadow copy (as set by the SetContext method in <see cref="T:Alphaleonis.Win32.Vss.IVssBackupComponents"/> method)
+ may be modified by a bitmask that contains a valid combination of <see cref="T:Alphaleonis.Win32.Vss.VssVolumeSnapshotAttributes"/> and
+ <see cref="T:Alphaleonis.Win32.Vss.VssSnapshotContext"/> enumeration values.
+ </summary>
+ <remarks>In the VSS API, these values are represented by the enumeration
+ <seealso cref="T:Alphaleonis.Win32.Vss.VssSnapshotContext"/> </remarks>
+ </member>
+ <member name="F:Alphaleonis.Win32.Vss.VssVolumeSnapshotAttributes.Persistent">
+ <summary>The shadow copy is persistent across reboots.
+ This attribute is automatically set for <see cref="T:Alphaleonis.Win32.Vss.VssSnapshotContext"/> contexts of <c>AppRollback</c>
+ <c>ClientAccessible</c>, <c>ClientAccessibleWriters</c> and <c>NasRollback</c>.
+ This attribute should not be used explicitly by requesters when setting the context of a shadow copy.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Vss.VssVolumeSnapshotAttributes.NoAutoRecovery">
+ <summary>
+ <para>Auto-recovery is disabled for the shadow copy.</para>
+ <para>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.</para>
+ <para>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.</para>
+ <para>Disabling auto-recovery also prevents writers from excluding files from the shadow copy. </para>
+ <para><b>Windows Server 2003 and Windows XP:</b> This value is not supported until Windows Vista.</para>
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Vss.VssVolumeSnapshotAttributes.ClientAccessible">
+ <summary>
+ <para>The specified shadow copy is a client-accessible copy, supports Shadow Copies for Shared Folders, and should not be exposed. </para>
+ <para>This attribute is automatically set for <c>ClientAccessible</c> and <c>ClientAccessibleWriters</c>.</para>
+ <para>This attribute should not be used explicitly by requesters when setting the context of a shadow copy.</para>
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Vss.VssVolumeSnapshotAttributes.NoAutoRelease">
+ <summary>
+ <para>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 <see cref="M:Alphaleonis.Win32.Vss.IVssBackupComponents.DeleteSnapshot(System.Guid,System.Boolean)"/> or
+ <see cref="M:Alphaleonis.Win32.Vss.IVssBackupComponents.DeleteSnapshotSet(System.Guid,System.Boolean)"/>.</para>
+ <para>This attribute is automatically set for <see cref="T:Alphaleonis.Win32.Vss.VssSnapshotContext"/> contexts of <c>Rollback</c>,
+ <c>ClientAccessible</c>, <c>ClientAccessibleWriters</c> and <c>Rollback</c>.</para>
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Vss.VssVolumeSnapshotAttributes.NoWriters">
+ <summary>
+ <para>No writers are involved in creating the shadow copy. </para>
+ <para>This attribute is automatically set for <see cref="T:Alphaleonis.Win32.Vss.VssSnapshotContext"/> contexts of <c>NasRollback</c>,
+ <c>FileShareBackup</c> and <c>ClientAccessible</c>.</para>
+ <para>This attribute should not be used explicitly by requesters when setting the context of a shadow copy.</para>
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Vss.VssVolumeSnapshotAttributes.Transportable">
+ <summary>
+ <para>The shadow copy is to be transported and therefore should not be surfaced locally. </para>
+ <para>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.</para>
+ <para><b>Windows Server 2003, Standard Edition, Windows Server 2003, Web Edition, and Windows XP:</b> This attribute is not supported.
+ All editions of Windows Server 2003 SP1 support this attribute.</para>
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Vss.VssVolumeSnapshotAttributes.NotSurfaced">
+ <summary>
+ <para>The shadow copy is not currently exposed. </para>
+ <para>Unless the shadow copy is explicitly exposed or mounted, this attribute is set for all shadow copies.</para>
+ <para>This attribute should not be used explicitly by requesters when setting the context of a shadow copy.</para>
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Vss.VssVolumeSnapshotAttributes.NotTransacted">
+ <summary>
+ <para>The shadow copy is not transacted.</para>
+ <para>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.</para>
+ <para>Setting this attribute guarantees that the requester will not receive <see cref="T:Alphaleonis.Win32.Vss.VssTransactionFreezeTimeoutException"/> errors. However, it may
+ cause unwanted consequences, such as the loss of transactional integrity or even data loss.</para>
+ <para><b>Windows Server 2003 and Windows XP:</b> This value is not supported until Windows Vista.</para>
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Vss.VssVolumeSnapshotAttributes.HardwareAssisted">
+ <summary>
+ <para>Indicates that a given provider is a hardware-based provider. </para>
+ <para>This attribute is automatically set for hardware-based providers.</para>
+ <para>This enumeration value cannot be used to manually set the context (using the <see cref="M:Alphaleonis.Win32.Vss.IVssBackupComponents.SetContext(Alphaleonis.Win32.Vss.VssVolumeSnapshotAttributes)"/> method)
+ of a shadow copy by a bit mask (or bitwise OR) of this enumeration value and a valid shadow copy context value from
+ <see cref="T:Alphaleonis.Win32.Vss.VssSnapshotContext"/>.</para>
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Vss.VssVolumeSnapshotAttributes.Differential">
+ <summary>
+ <para>Indicates that a given provider uses differential data or a copy-on-write mechanism to implement shadow copies. </para>
+ <para>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 <see cref="T:Alphaleonis.Win32.Vss.VssVolumeNotSupportedException"/> error will be returned to <see cref="M:Alphaleonis.Win32.Vss.IVssBackupComponents.AddToSnapshotSet(System.String,System.Guid)"/>.</para>
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Vss.VssVolumeSnapshotAttributes.Plex">
+ <summary>
+ <para>Indicates that a given provider uses a PLEX or mirrored split mechanism to implement shadow copies. </para>
+ <para>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 <see cref="T:Alphaleonis.Win32.Vss.VssVolumeNotSupportedException"/> error will be returned to <see cref="M:Alphaleonis.Win32.Vss.IVssBackupComponents.AddToSnapshotSet(System.String,System.Guid)"/>.</para>
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Vss.VssVolumeSnapshotAttributes.Imported">
+ <summary>
+ <para>The shadow copy of the volume was imported onto this machine using the <see cref="M:Alphaleonis.Win32.Vss.IVssBackupComponents.ImportSnapshots"/> method
+ rather than created using the <see cref="M:Alphaleonis.Win32.Vss.IVssBackupComponents.DoSnapshotSet"/> method. </para>
+ <para>This attribute is automatically set if a shadow copy is imported.</para>
+ <para>This attribute should not be used explicitly by requesters when setting the context of a shadow copy.</para>
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Vss.VssVolumeSnapshotAttributes.ExposedLocally">
+ <summary>
+ <para>The shadow copy is locally exposed. If this bit flag and the <c>ExposedRemotely</c> bit flag are not set,
+ the shadow copy is hidden. </para>
+ <para>The attribute is automatically added to a shadow copy context upon calling the <see cref="M:Alphaleonis.Win32.Vss.IVssBackupComponents.ExposeSnapshot(System.Guid,System.String,Alphaleonis.Win32.Vss.VssVolumeSnapshotAttributes,System.String)"/>
+ method to expose a shadow copy locally.</para>
+ <para>This attribute should not be used explicitly by requesters when setting the context of a shadow copy.</para>
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Vss.VssVolumeSnapshotAttributes.ExposedRemotely">
+ <summary>
+ <para>The shadow copy is remotely exposed. If this bit flag and the <c>ExposedLocally</c> bit flag are not set, the shadow copy is hidden. </para>
+ <para>The attribute is automatically added to a shadow copy context upon calling the <see cref="M:Alphaleonis.Win32.Vss.IVssBackupComponents.ExposeSnapshot(System.Guid,System.String,Alphaleonis.Win32.Vss.VssVolumeSnapshotAttributes,System.String)"/>
+ method to expose a shadow copy locally.</para>
+ <para>This attribute should not be used explicitly by requesters when setting the context of a shadow copy.</para>
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Vss.VssVolumeSnapshotAttributes.AutoRecover">
+ <summary>
+ <para>Indicates that the writer will need to auto-recover the component in <c>CVssWriter::OnPostSnapshot</c>. </para>
+ <para>This attribute should not be used explicitly by requesters when setting the context of a shadow copy.</para>
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Vss.VssVolumeSnapshotAttributes.RollbackRecovery">
+ <summary>
+ <para>Indicates that the writer will need to auto-recover the component in <c>CVssWriter::OnPostSnapshot</c> if the shadow copy is being used
+ for rollback (for data mining, for example). </para>
+ <para>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.</para>
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Vss.VssVolumeSnapshotAttributes.DelayedPostSnapshot">
+ <summary>
+ <para>Reserved for system use.</para>
+ <para><b>Windows Vista, Windows Server 2003, and Windows XP:</b> This value is not supported until Windows Server 2008.</para>
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Vss.VssVolumeSnapshotAttributes.TxFRecovery">
+ <summary>
+ <para>Indicates that TxF recovery should be enforced during shadow copy creation.</para>
+ <para><b>Windows Vista, Windows Server 2003, and Windows XP:</b> This value is not supported until Windows Server 2008.</para>
+ </summary>
+ </member>
+ <member name="T:Alphaleonis.Win32.Vss.VssTransactionFreezeTimeoutException">
+ <summary>
+ Exception thrown to indicate that the system was unable to freeze the Distributed Transaction Coordinator (DTC)
+ or the Kernel Transaction Manager (KTM).
+ </summary>
+ <remarks>
+ <note>
+ <b>Windows Server 2003 and Windows XP:</b> This exception is not supported until Windows Vista.
+ </note>
+ </remarks>
+ </member>
+ <member name="M:Alphaleonis.Win32.Vss.VssTransactionFreezeTimeoutException.#ctor">
+ <summary>
+ Initializes a new instance of the <see cref="T:Alphaleonis.Win32.Vss.VssTransactionFreezeTimeoutException"/>
+ class with a system-supplied message describing the error.
+ </summary>
+ </member>
+ <member name="M:Alphaleonis.Win32.Vss.VssTransactionFreezeTimeoutException.#ctor(System.String)">
+ <summary>
+ Initializes a new instance of the <see cref="T:Alphaleonis.Win32.Vss.VssTransactionFreezeTimeoutException"/> class with a specified error message.
+ </summary>
+ <param name="message">The message that describes the error</param>
+ </member>
+ <member name="M:Alphaleonis.Win32.Vss.VssTransactionFreezeTimeoutException.#ctor(System.String,System.Exception)">
+ <summary>
+ Initializes a new instance of the <see cref="T:Alphaleonis.Win32.Vss.VssTransactionFreezeTimeoutException"/> class with
+ a specified error message and a reference to the inner exception that is the cause of this exception.
+ </summary>
+ <param name="message">The message that describes the error</param>
+ <param name="innerException">The exception that is the cause of the current exception.</param>
+ </member>
+ <member name="M:Alphaleonis.Win32.Vss.VssTransactionFreezeTimeoutException.#ctor(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">
+ <summary>
+ Initializes a new instance of the <see cref="T:Alphaleonis.Win32.Vss.VssTransactionFreezeTimeoutException"/> class.
+ </summary>
+ <param name="info">The <see cref="T:System.Runtime.Serialization.SerializationInfo"/> that holds the serialized object data about the exception being thrown.</param>
+ <param name="context">The <see cref="T:System.Runtime.Serialization.StreamingContext"/> that contains contextual information about the source or destination.</param>
+ <exception cref="T:System.ArgumentNullException">The <paramref name="info"/> parameter is null. </exception>
+ <exception cref="T:System.Runtime.Serialization.SerializationException">The class name is null or <see cref="P:System.Exception.HResult"/> is zero (0). </exception>
+ </member>
+ <member name="T:Alphaleonis.Win32.Vss.VssError">
+ <summary>
+ <para>
+ The <see cref="T:Alphaleonis.Win32.Vss.VssError"/> enumeration represents error- and success codes that may be
+ returned by some Vss methods.
+ </para>
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Vss.VssError.Success">
+ <summary>Indication of a successful operation.</summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Vss.VssError.AsyncCanceled">
+ <summary>
+ The asynchronous operation was cancelled.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Vss.VssError.AsyncFinished">
+ <summary>
+ The asynchronous operation was completed successfully.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Vss.VssError.AsyncPending">
+ <summary>
+ The asynchronous operation is still running.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Vss.VssError.Unexpected">
+ <summary>
+ Unexpected error. The error code is logged in the error log file.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Vss.VssError.BadState">
+ <summary>
+ A method call was made when the object was in an incorrect state
+ for that method.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Vss.VssError.ProviderAlreadyRegistered">
+ <summary>
+ The provider has already been registered.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Vss.VssError.ProviderNotRegistered">
+ <summary>
+ The specified identifier does not correspond to a registered provider.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Vss.VssError.ProviderVeto">
+ <summary>
+ 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.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Vss.VssError.ProviderInUse">
+ <summary>
+ The shadow copy provider is currently in use and cannot be unregistered.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Vss.VssError.ObjectNotFound">
+ <summary>
+ The specified object was not found.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Vss.VssError.VolumeNotSupported">
+ <summary>
+ No VSS provider indicates that it supports the specified volume.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Vss.VssError.VolumeNotSupportedByProvider">
+ <summary>
+ The volume is not supported by the specified provider.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Vss.VssError.ObjectAlreadyExists">
+ <summary>
+ The object already exists.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Vss.VssError.UnexpectedProviderError">
+ <summary>
+ 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.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Vss.VssError.InvalidXmlDocument">
+ <summary>
+ The given XML document is invalid. It is either incorrectly-formed XML or it does not match the schema.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Vss.VssError.MaximumNumberOfVolumesReached">
+ <summary>
+ The maximum number of volumes has been added to the shadow copy set. The specified volume was not added to the shadow copy set.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Vss.VssError.UnexpectedWriterError">
+ <summary>
+ VSS encountered problems while sending events to writers.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Vss.VssError.SnapshotSetInProgress">
+ <summary>
+ Another shadow copy creation is already in progress. Please wait a few moments and try again.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Vss.VssError.MaximumNumberOfSnapshotsReached">
+ <summary>
+ The volume has been added to the maximum number of shadow copy sets. The specified volume was not added to the shadow copy set.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Vss.VssError.WriterInfrastructureError">
+ <summary>
+ 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.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Vss.VssError.WriterNotResponding">
+ <summary>
+ 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.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Vss.VssError.WriterAlreadySubscribed">
+ <summary>
+ The writer has already sucessfully called the Subscribe function. It cannot call
+ subscribe multiple times.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Vss.VssError.UnsupportedContext">
+ <summary>
+ The shadow copy provider does not support the specified shadow copy type.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Vss.VssError.VolumeInUse">
+ <summary>
+ The specified shadow copy storage association is in use and so can't be deleted.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Vss.VssError.MaximumDiffareaAssociationsReached">
+ <summary>
+ Maximum number of shadow copy storage associations already reached.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Vss.VssError.InsufficientStorage">
+ <summary>
+ The system or provider has insufficient storage space. If possible delete any old or unnecessary persistent shadow copies and try again.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Vss.VssError.NoSnapshotsImported">
+ <summary>
+ No shadow copies were successfully imported.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Vss.VssError.SomeSnapshotsNotImportedSuccess">
+ <summary>
+ Some shadow copies were not succesfully imported.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Vss.VssError.SomeSnapshotsNotImportedError">
+ <summary>
+ Some shadow copies were not succesfully imported.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Vss.VssError.MaximumNumberOfRemoteMachinesReached">
+ <summary>
+ The maximum number of remote machines for this operation has been reached.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Vss.VssError.RemoteServerUnavailable">
+ <summary>
+ The remote server is unavailable.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Vss.VssError.RemoteServerUnsupported">
+ <summary>
+ The remote server is running a version of the Volume Shadow Copy Service that does not
+ support remote shadow-copy creation.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Vss.VssError.RevertInProgress">
+ <summary>
+ A revert is currently in progress for the specified volume. Another revert
+ cannot be initiated until the current revert completes.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Vss.VssError.RevertVolumeLost">
+ <summary>
+ The volume being reverted was lost during revert.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Vss.VssError.RebootRequired">
+ <summary>
+ <para>The provider encountered an error that requires the user to restart the computer.</para>
+ <para><b>Windows Server 2003 and Windows XP:</b>This value is not supported until Windows Vista.</para>
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Vss.VssError.TransactionFreezeTimeout">
+ <summary>
+ <para>The system was unable to freeze the Distributed Transaction Coordinator (DTC) or the Kernel Transaction Manager (KTM).</para>
+ <para><b>Windows Server 2003 and Windows XP:</b>This value is not supported until Windows Vista.</para>
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Vss.VssError.TransactionThawTimeout">
+ <summary>
+ <para>The system was unable to thaw the Distributed Transaction Coordinator (DTC) or the Kernel Transaction Manager (KTM).</para>
+ <para><b>Windows Server 2003 and Windows XP:</b>This value is not supported until Windows Vista.</para>
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Vss.VssError.WriterErrorInconsistentSnapshot">
+ <summary>
+ The shadow copy contains only a subset of the volumes needed by the writer to correctly back
+ up the application component.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Vss.VssError.WriterOutOfResources">
+ <summary>
+ 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.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Vss.VssError.WriterTimeout">
+ <summary>
+ 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.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Vss.VssError.WriterErrorRetryable">
+ <summary>
+ 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.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Vss.VssError.WriterErrorNonRetryable">
+ <summary>
+ The writer experienced a non-transient error. If the backup process is retried,
+ the error is likely to reoccur.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Vss.VssError.WriterErrorRecoveryFailed">
+ <summary>
+ The writer experienced an error while trying to recover the shadow-copy volume.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Vss.VssError.BreakRevertIdFailed">
+ <summary>
+ 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.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Vss.VssError.LegacyProvider">
+ <summary>
+ This version of the hardware provider does not support this operation.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Vss.VssError.BreakFailFromProvider">
+ <summary>
+ At least one of the providers in this Shadow Copy Set failed the break operation for a snapshot.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Vss.VssError.AsrDiskAssignmentFailed">
+ <summary>
+ 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.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Vss.VssError.AsrDiskRecreationFailed">
+ <summary>
+ 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.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Vss.VssError.AsrNoArcPath">
+ <summary>
+ The computer needs to be restarted to finish preparing a hard disk for restore. To continue, restart your computer and run the restore again.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Vss.VssError.AsrMissingDynamicDisk">
+ <summary>
+ The backup failed due to a missing disk for a dynamic volume. Please ensure the disk is online and retry the backup.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Vss.VssError.AsrSharedCriticalDiskError">
+ <summary>
+ Automated System Recovery failed the shadow copy, because a selected critical volume is located on a cluster shared disk.
+ This is an unsupported configuration.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Vss.VssError.AsrDatadiskRdisk0">
+ <summary>
+ 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.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Vss.VssError.AsrRdisk0TooSmall">
+ <summary>
+ 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.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Vss.VssError.AsrCriticalDisksTooSmall">
+ <summary>
+ 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.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Vss.VssError.WriterStatusNotAvailable">
+ <summary>
+ <para>
+ 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.
+ </para>
+ <para>
+ <b>Windows Vista, Windows Server 2003, and Windows XP:</b> This value is not supported.
+ </para>
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Vss.VssError.FlushWritesTimeout">
+ <summary>
+ 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.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Vss.VssError.HoldWritesTimeout">
+ <summary>
+ 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.
+ </summary>
+ </member>
+ <member name="T:Alphaleonis.Win32.Vss.VssRevertInProgressException">
+ <summary>
+ Exception thrown to indicate that the volume already has a revert in progress.
+ </summary>
+ <remarks>
+ <note>
+ <b>Windows XP and Windows 2003:</b> This error is not supported until Windows Vista.
+ </note>
+ </remarks>
+ </member>
+ <member name="M:Alphaleonis.Win32.Vss.VssRevertInProgressException.#ctor">
+ <summary>
+ Initializes a new instance of the <see cref="T:Alphaleonis.Win32.Vss.VssRevertInProgressException"/>
+ class with a system-supplied message describing the error.
+ </summary>
+ </member>
+ <member name="M:Alphaleonis.Win32.Vss.VssRevertInProgressException.#ctor(System.String)">
+ <summary>
+ Initializes a new instance of the <see cref="T:Alphaleonis.Win32.Vss.VssRevertInProgressException"/> class with a specified error message.
+ </summary>
+ <param name="message">The message that describes the error</param>
+ </member>
+ <member name="M:Alphaleonis.Win32.Vss.VssRevertInProgressException.#ctor(System.String,System.Exception)">
+ <summary>
+ Initializes a new instance of the <see cref="T:Alphaleonis.Win32.Vss.VssRevertInProgressException"/> class with
+ a specified error message and a reference to the inner exception that is the cause of this exception.
+ </summary>
+ <param name="message">The message that describes the error</param>
+ <param name="innerException">The exception that is the cause of the current exception.</param>
+ </member>
+ <member name="M:Alphaleonis.Win32.Vss.VssRevertInProgressException.#ctor(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">
+ <summary>
+ Initializes a new instance of the <see cref="T:Alphaleonis.Win32.Vss.VssRevertInProgressException"/> class.
+ </summary>
+ <param name="info">The <see cref="T:System.Runtime.Serialization.SerializationInfo"/> that holds the serialized object data about the exception being thrown.</param>
+ <param name="context">The <see cref="T:System.Runtime.Serialization.StreamingContext"/> that contains contextual information about the source or destination.</param>
+ <exception cref="T:System.ArgumentNullException">The <paramref name="info"/> parameter is null. </exception>
+ <exception cref="T:System.Runtime.Serialization.SerializationException">The class name is null or <see cref="P:System.Exception.HResult"/> is zero (0). </exception>
+ </member>
+ <member name="T:Alphaleonis.Win32.Vss.VssProviderVetoException">
+ <summary>
+ Exception thrown to indicate an expected provider error. The provider logged the error in the event log.
+ </summary>
+ </member>
+ <member name="M:Alphaleonis.Win32.Vss.VssProviderVetoException.#ctor">
+ <summary>
+ Initializes a new instance of the <see cref="T:Alphaleonis.Win32.Vss.VssProviderVetoException"/>
+ class with a system-supplied message describing the error.
+ </summary>
+ </member>
+ <member name="M:Alphaleonis.Win32.Vss.VssProviderVetoException.#ctor(System.String)">
+ <summary>
+ Initializes a new instance of the <see cref="T:Alphaleonis.Win32.Vss.VssProviderVetoException"/> class with a specified error message.
+ </summary>
+ <param name="message">The message that describes the error</param>
+ </member>
+ <member name="M:Alphaleonis.Win32.Vss.VssProviderVetoException.#ctor(System.String,System.Exception)">
+ <summary>
+ Initializes a new instance of the <see cref="T:Alphaleonis.Win32.Vss.VssProviderVetoException"/> class with
+ a specified error message and a reference to the inner exception that is the cause of this exception.
+ </summary>
+ <param name="message">The message that describes the error</param>
+ <param name="innerException">The exception that is the cause of the current exception.</param>
+ </member>
+ <member name="M:Alphaleonis.Win32.Vss.VssProviderVetoException.#ctor(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">
+ <summary>
+ Initializes a new instance of the <see cref="T:Alphaleonis.Win32.Vss.VssProviderVetoException"/> class.
+ </summary>
+ <param name="info">The <see cref="T:System.Runtime.Serialization.SerializationInfo"/> that holds the serialized object data about the exception being thrown.</param>
+ <param name="context">The <see cref="T:System.Runtime.Serialization.StreamingContext"/> that contains contextual information about the source or destination.</param>
+ <exception cref="T:System.ArgumentNullException">The <paramref name="info"/> parameter is null. </exception>
+ <exception cref="T:System.Runtime.Serialization.SerializationException">The class name is null or <see cref="P:System.Exception.HResult"/> is zero (0). </exception>
+ </member>
+ <member name="T:Alphaleonis.Win32.Vss.VssRestoreTarget">
+ <summary>
+ <para>
+ The <see cref="T:Alphaleonis.Win32.Vss.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.
+ </para>
+ <para>
+ Setting a restore target modifies or overrides the restore method set during backup (see <see cref="T:Alphaleonis.Win32.Vss.VssRestoreMethod"/>).
+ </para>
+ </summary>
+ <remarks>For more information see the MSDN documentation on the VSS_RESTORE_TARGET enumeration.</remarks>
+ </member>
+ <member name="F:Alphaleonis.Win32.Vss.VssRestoreTarget.Undefined">
+ <summary>
+ <para>No target is defined.</para>
+ <para>This value indicates an error on the part of the writer.</para>
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Vss.VssRestoreTarget.Original">
+ <summary>
+ <para>
+ This is the default restore target.
+ </para>
+ <para>
+ 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 <see cref="T:Alphaleonis.Win32.Vss.VssRestoreMethod"/> value.
+ </para>
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Vss.VssRestoreTarget.Alternate">
+ <summary>
+ <para>
+ The files are restored to a location determined from an existing alternate location mapping.
+ </para>
+ <para>
+ The restore target should be set to <see cref="F:Alphaleonis.Win32.Vss.VssRestoreTarget.Alternate"/> only when
+ alternate location mappings have been set for all the files managed by
+ a selected component or component set.
+ </para>
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Vss.VssRestoreTarget.Directed">
+ <summary>
+ <para>
+ Use directed targeting by the writer at restore time to restore a file.
+ </para>
+ <para>
+ 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.
+ </para>
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Vss.VssRestoreTarget.OriginalLocation">
+ <summary>
+ <para>
+ 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 <see cref="F:Alphaleonis.Win32.Vss.VssRestoreMethod.RestoreToAlternateLocation"/>.
+ </para>
+ <para>
+ <b>Windows Server 2003 and Windows XP:</b> This value is not supported.
+ </para>
+ </summary>
+ </member>
+ <member name="T:Alphaleonis.Win32.Vss.IVssAsync">
+ <summary>
+ <para>
+ The <see cref="T:Alphaleonis.Win32.Vss.IVssAsync"/> interface is returned to calling applications by methods that initiate asynchronous operations,
+ which run in the background and typically require a long time to complete.
+ </para>
+ <para>
+ The <see cref="T:Alphaleonis.Win32.Vss.IVssAsync"/> interface permits an application to monitor and control an asynchronous operation by waiting
+ on its completion, querying its status, or canceling it.
+ </para>
+ <para>
+ The calling application is responsible for calling <c>Dispose()</c> to release the resources held
+ by the returned <see cref="T:Alphaleonis.Win32.Vss.IVssAsync"/> interface when it is no longer needed.
+ </para>
+ <para>
+ The following methods return an <see cref="T:Alphaleonis.Win32.Vss.IVssAsync"/> interface:
+ <list type="bullet">
+ <item><description><see cref="M:Alphaleonis.Win32.Vss.IVssBackupComponents.BackupComplete"/></description></item>
+ <item><description><see cref="M:Alphaleonis.Win32.Vss.IVssBackupComponents.DoSnapshotSet"/></description></item>
+ <item><description><see cref="M:Alphaleonis.Win32.Vss.IVssBackupComponents.GatherWriterMetadata"/></description></item>
+ <item><description><see cref="M:Alphaleonis.Win32.Vss.IVssBackupComponents.GatherWriterStatus"/></description></item>
+ <item><description><see cref="M:Alphaleonis.Win32.Vss.IVssBackupComponents.ImportSnapshots"/></description></item>
+ <item><description><see cref="M:Alphaleonis.Win32.Vss.IVssBackupComponents.PostRestore"/></description></item>
+ <item><description><see cref="M:Alphaleonis.Win32.Vss.IVssBackupComponents.PrepareForBackup"/></description></item>
+ <item><description><see cref="M:Alphaleonis.Win32.Vss.IVssBackupComponents.PreRestore"/></description></item>
+ </list>
+ </para>
+ </summary>
+ </member>
+ <member name="M:Alphaleonis.Win32.Vss.IVssAsync.Cancel">
+ <summary>Cancels an incomplete asynchronous operation.</summary>
+ <returns>
+ <list type="table">
+ <item>
+ <term><see cref="F:Alphaleonis.Win32.Vss.VssError.Success"/></term>
+ <description>The asynchronous operation had been successfully cancelled.</description>
+ </item>
+ <item>
+ <term><see cref="F:Alphaleonis.Win32.Vss.VssError.AsyncCanceled"/></term>
+ <description>The asynchronous operation had been canceled prior to calling this method.</description>
+ </item>
+ <item>
+ <term><see cref="F:Alphaleonis.Win32.Vss.VssError.AsyncFinished"/></term>
+ <description>The asynchronous operation had completed prior to calling this method.</description>
+ </item>
+ </list>
+ <para>Additional return values can be returned, but depend on the return codes of the method that initially returned the <see cref="T:Alphaleonis.Win32.Vss.IVssAsync"/> object.</para>
+ </returns>
+ <remarks>If an operation has completed unsuccessfully before <see cref="M:Alphaleonis.Win32.Vss.IVssAsync.Cancel"/> was called, then <see cref="M:Alphaleonis.Win32.Vss.IVssAsync.Cancel"/> throws the error that
+ operation encountered.</remarks>
+ </member>
+ <member name="M:Alphaleonis.Win32.Vss.IVssAsync.QueryStatus">
+ <summary>The <see cref="M:Alphaleonis.Win32.Vss.IVssAsync.QueryStatus"/> method queries the status of an asynchronous operation.</summary>
+ <returns>
+ <list type="table">
+ <item>
+ <term><see cref="F:Alphaleonis.Win32.Vss.VssError.Success"/></term>
+ <description>The asynchronous operation had been successfully canceled.</description>
+ </item>
+ <item>
+ <term><see cref="F:Alphaleonis.Win32.Vss.VssError.AsyncCanceled"/></term>
+ <description>The asynchronous operation had been canceled prior to calling this method.</description>
+ </item>
+ <item>
+ <term><see cref="F:Alphaleonis.Win32.Vss.VssError.AsyncFinished"/></term>
+ <description>The asynchronous operation had completed prior to calling this method.</description>
+ </item>
+ </list>
+ <para>Additional return values can be returned, but depend on the return codes of the method that initially returned the <see cref="T:Alphaleonis.Win32.Vss.IVssAsync"/> object.</para>
+ </returns>
+ </member>
+ <member name="M:Alphaleonis.Win32.Vss.IVssAsync.Wait">
+ <summary>
+ The Wait method waits until an incomplete asynchronous operation finishes.
+ </summary>
+ </member>
+ <member name="T:Alphaleonis.Win32.Vss.VssWriterInfrastructureException">
+ <summary>
+ Exception thrown to indicate that the writer infrastructure is not operating properly.
+ </summary>
+ <remarks>
+ Check that the Event Service and VSS have been started, and check for errors associated with those services in the error log.
+ </remarks>
+ </member>
+ <member name="M:Alphaleonis.Win32.Vss.VssWriterInfrastructureException.#ctor">
+ <summary>
+ Initializes a new instance of the <see cref="T:Alphaleonis.Win32.Vss.VssWriterInfrastructureException"/>
+ class with a system-supplied message describing the error.
+ </summary>
+ </member>
+ <member name="M:Alphaleonis.Win32.Vss.VssWriterInfrastructureException.#ctor(System.String)">
+ <summary>
+ Initializes a new instance of the <see cref="T:Alphaleonis.Win32.Vss.VssWriterInfrastructureException"/> class with a specified error message.
+ </summary>
+ <param name="message">The message that describes the error</param>
+ </member>
+ <member name="M:Alphaleonis.Win32.Vss.VssWriterInfrastructureException.#ctor(System.String,System.Exception)">
+ <summary>
+ Initializes a new instance of the <see cref="T:Alphaleonis.Win32.Vss.VssWriterInfrastructureException"/> class with
+ a specified error message and a reference to the inner exception that is the cause of this exception.
+ </summary>
+ <param name="message">The message that describes the error</param>
+ <param name="innerException">The exception that is the cause of the current exception.</param>
+ </member>
+ <member name="M:Alphaleonis.Win32.Vss.VssWriterInfrastructureException.#ctor(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">
+ <summary>
+ Initializes a new instance of the <see cref="T:Alphaleonis.Win32.Vss.VssWriterInfrastructureException"/> class.
+ </summary>
+ <param name="info">The <see cref="T:System.Runtime.Serialization.SerializationInfo"/> that holds the serialized object data about the exception being thrown.</param>
+ <param name="context">The <see cref="T:System.Runtime.Serialization.StreamingContext"/> that contains contextual information about the source or destination.</param>
+ <exception cref="T:System.ArgumentNullException">The <paramref name="info"/> parameter is null. </exception>
+ <exception cref="T:System.Runtime.Serialization.SerializationException">The class name is null or <see cref="P:System.Exception.HResult"/> is zero (0). </exception>
+ </member>
+ <member name="T:Alphaleonis.Win32.Vss.VssBackupSchema">
+ <summary>The <see cref="T:Alphaleonis.Win32.Vss.VssBackupSchema"/> 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 <see cref="T:Alphaleonis.Win32.Vss.VssBackupSchema"/> values.</summary>
+ <remarks>
+ <para>
+ <note>
+ <b>Windows XP:</b> This enumeration is not available until Windows Server 2003 or later.
+ </note>
+ </para>
+ <para>
+ Writer set their backup schemas with calls to <c>IVssCreateWriterMetadata.SetBackupSchema"</c>.
+ </para>
+ <para>
+ Requesters use <see cref="P:Alphaleonis.Win32.Vss.IVssExamineWriterMetadata.BackupSchema"/> to determine the backup schema that a writer supports.
+ </para>
+ <para>
+ 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.
+ </para>
+ <para>
+ For example, to involve a writer in an incremental backup operation, the requester must set the backup type to
+ <see cref="F:Alphaleonis.Win32.Vss.VssBackupType.Incremental"/>, and the writer should have a backup schema that includes <see cref="F:Alphaleonis.Win32.Vss.VssBackupSchema.Incremental"/>.
+ </para>
+ <para>
+ 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 <see cref="M:Alphaleonis.Win32.Vss.IVssBackupComponents.DisableWriterClasses(System.Guid[])"/> or
+ <see cref="M:Alphaleonis.Win32.Vss.IVssBackupComponents.DisableWriterInstances(System.Guid[])"/>).
+ </para>
+ </remarks>
+ </member>
+ <member name="F:Alphaleonis.Win32.Vss.VssBackupSchema.Undefined">
+ <summary>
+ The writer supports a simple full backup and restoration of entire files (as defined by a <see cref="T:Alphaleonis.Win32.Vss.VssBackupType"/> value of <see cref="F:Alphaleonis.Win32.Vss.VssBackupType.Full"/>).
+ This backup scheme can be used as the basis of an incremental or differential backup. This is the default value.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Vss.VssBackupSchema.Differential">
+ <summary>
+ The writer supports differential backups (corresponding to the <see cref="T:Alphaleonis.Win32.Vss.VssBackupType"/> value <see cref="F:Alphaleonis.Win32.Vss.VssBackupType.Differential"/>).
+ 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.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Vss.VssBackupSchema.Incremental">
+ <summary>
+ The writer supports incremental backups (corresponding to the <see cref="T:Alphaleonis.Win32.Vss.VssBackupType"/> value <see cref="F:Alphaleonis.Win32.Vss.VssBackupType.Incremental"/>). 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.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Vss.VssBackupSchema.ExclusiveIncrementalDifferential">
+ <summary>
+ 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 (<see cref="F:Alphaleonis.Win32.Vss.VssBackupSchema.Differential"/> | <see cref="F:Alphaleonis.Win32.Vss.VssBackupSchema.Incremental"/>).
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Vss.VssBackupSchema.Log">
+ <summary>
+ <para>The writer supports backups that involve only the log files it manages (corresponding to a <see cref="T:Alphaleonis.Win32.Vss.VssBackupType"/> value of <see cref="F:Alphaleonis.Win32.Vss.VssBackupType.Log"/>). </para>
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Vss.VssBackupSchema.Copy">
+ <summary>
+ Similar to the default backup schema (<see cref="F:Alphaleonis.Win32.Vss.VssBackupType.Undefined"/>), the writer supports copy backup operations
+ (corresponding to <see cref="F:Alphaleonis.Win32.Vss.VssBackupType.Copy"/>) 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.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Vss.VssBackupSchema.Timestamped">
+ <summary>
+ <para>
+ A writer supports using the VSS time-stamp mechanism when evaluating if a file should be included in
+ differential or incremental operations (corresponding to <see cref="F:Alphaleonis.Win32.Vss.VssBackupType.Differential"/> and
+ <see cref="F:Alphaleonis.Win32.Vss.VssBackupType.Incremental"/>, respectively) using the <see cref="P:Alphaleonis.Win32.Vss.IVssComponent.PreviousBackupStamp"/>,
+ <see cref="P:Alphaleonis.Win32.Vss.IVssComponent.BackupStamp"/> setters, and the <see cref="M:Alphaleonis.Win32.Vss.IVssBackupComponents.SetPreviousBackupStamp(System.Guid,Alphaleonis.Win32.Vss.VssComponentType,System.String,System.String,System.String)"/> method.
+ </para>
+ <para>
+ A writer cannot support this schema if it does not support either differential or incremental backup schemas
+ (<see cref="F:Alphaleonis.Win32.Vss.VssBackupSchema.Differential"/> or <see cref="F:Alphaleonis.Win32.Vss.VssBackupSchema.Incremental"/>).
+ </para>
+
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Vss.VssBackupSchema.LastModify">
+ <summary>
+ <para>
+ When implementing incremental or differential backups with differenced files, a writer can provide last modification
+ time information for files (using <c>IVssComponent.AddDifferencedFileByLastModifyTime</c>).
+ A requester then can use <see cref="P:Alphaleonis.Win32.Vss.IVssComponent.DifferencedFiles"/> 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.
+ </para>
+ <para>
+ This scheme does not apply to partial file implementations of incremental and differential backup operations.
+ </para>
+ <para>
+ A writer cannot support this schema if it does not support either incremental or differential backup
+ schemas (<see cref="F:Alphaleonis.Win32.Vss.VssBackupSchema.Differential"/> or <see cref="F:Alphaleonis.Win32.Vss.VssBackupSchema.Incremental"/>.
+ </para>
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Vss.VssBackupSchema.Lsn">
+ <summary>
+ Reserved for system use.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Vss.VssBackupSchema.WriterSupportsNewTarget">
+ <summary>
+ The writer supports a requester changing the target for file restoration using
+ <see cref="M:Alphaleonis.Win32.Vss.IVssBackupComponents.AddNewTarget(System.Guid,Alphaleonis.Win32.Vss.VssComponentType,System.String,System.String,System.String,System.String,System.Boolean,System.String)"/>.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Vss.VssBackupSchema.WriterSupportsRestoreWithMove">
+ <summary>
+ <para>
+ 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
+ <see cref="O:Alphaleonis.Win32.Vss.IVssBackupComponents.SetSelectedForRestore"/>.
+ </para>
+ <para>
+ <b>Windows Server 2003:</b> This value is not supported until Windows Server 2003 SP1.
+ </para>
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Vss.VssBackupSchema.IndependentSystemState">
+ <summary>
+ <para>
+ 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.
+ </para>
+ <para>
+ <b>Windows Server 2003:</b> This value is not supported until Windows Vista.
+ </para>
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Vss.VssBackupSchema.RollForwardRestore">
+ <summary>
+ <para>
+ The writer supports a requester setting a roll-forward restore point using <see cref="M:Alphaleonis.Win32.Vss.IVssBackupComponents.SetRollForward(System.Guid,Alphaleonis.Win32.Vss.VssComponentType,System.String,System.String,Alphaleonis.Win32.Vss.VssRollForwardType,System.String)"/>.
+ </para>
+ <para>
+ <b>Windows Server 2003:</b> This value is not supported until Windows Vista.
+ </para>
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Vss.VssBackupSchema.RestoreRename">
+ <summary>
+ <para>
+ The writer supports a requester setting a restore name using <see cref="M:Alphaleonis.Win32.Vss.IVssBackupComponents.SetRestoreName(System.Guid,Alphaleonis.Win32.Vss.VssComponentType,System.String,System.String,System.String)"/>.
+ </para>
+ <para>
+ <b>Windows Server 2003:</b> This value is not supported until Windows Vista.
+ </para>
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Vss.VssBackupSchema.AuthoritativeRestore">
+ <summary>
+ <para>
+ The writer supports a requester setting authoritative restore using <see cref="M:Alphaleonis.Win32.Vss.IVssBackupComponents.SetAuthoritativeRestore(System.Guid,Alphaleonis.Win32.Vss.VssComponentType,System.String,System.String,System.Boolean)"/>.
+ </para>
+ <para>
+ <b>Windows Server 2003:</b> This value is not supported until Windows Vista.
+ </para>
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Vss.VssBackupSchema.WriterSupportsParallelRestores">
+ <summary>
+ <para>
+ The writer supports multiple unsynchronized restore events.
+ </para>
+ <para>
+ <b>Windows Vista and Windows Server 2003:</b> This value is not supported until Windows Server 2008.
+ </para>
+ </summary>
+ </member>
+ <member name="T:Alphaleonis.Win32.Vss.VssWriterStatusInfo">
+ <summary>
+ Represenation of the status for a specific writer.
+ </summary>
+ <remarks>This class acts as a container for the information returned from
+ <see href="http://msdn.microsoft.com/en-us/library/aa382680(VS.85).aspx">IVssBackupComponents.GetWriterStatus</see> in the original
+ VSS API</remarks>
+ </member>
+ <member name="M:Alphaleonis.Win32.Vss.VssWriterStatusInfo.#ctor(System.Guid,System.Guid,System.String,Alphaleonis.Win32.Vss.VssWriterState,Alphaleonis.Win32.Vss.VssError)">
+ <summary>
+ Initializes a new instance of the <see cref="T:Alphaleonis.Win32.Vss.VssWriterStatusInfo"/> class.
+ </summary>
+ <param name="instanceId">The instance id.</param>
+ <param name="writerId">The writer id.</param>
+ <param name="writerName">Name of the writer.</param>
+ <param name="state">The state.</param>
+ <param name="failure">The failure.</param>
+ </member>
+ <member name="P:Alphaleonis.Win32.Vss.VssWriterStatusInfo.InstanceId">
+ <summary>
+ The instance id of the writer.
+ </summary>
+ </member>
+ <member name="P:Alphaleonis.Win32.Vss.VssWriterStatusInfo.ClassId">
+ <summary>
+ The identifier of the writer class.
+ </summary>
+ </member>
+ <member name="P:Alphaleonis.Win32.Vss.VssWriterStatusInfo.Name">
+ <summary>
+ The name of the writer.
+ </summary>
+ </member>
+ <member name="P:Alphaleonis.Win32.Vss.VssWriterStatusInfo.State">
+ <summary>
+ A <see cref="T:Alphaleonis.Win32.Vss.VssWriterState"/> value containing the state of the writer.
+ </summary>
+ </member>
+ <member name="P:Alphaleonis.Win32.Vss.VssWriterStatusInfo.Failure">
+ <summary>
+ A <see cref="T:Alphaleonis.Win32.Vss.VssError"/> value indicating the failure code (if any) of the writer.
+ </summary>
+ <remarks>
+ <para>
+ The following are the supported values for <see cref="P:Alphaleonis.Win32.Vss.VssWriterStatusInfo.Failure"/>:
+ <list type="table">
+ <listheader>
+ <term>Value</term>
+ <description>Meaning</description>
+ </listheader>
+ <item>
+ <term><see cref="F:Alphaleonis.Win32.Vss.VssError.Success"/></term>
+ <description>The writer was successful.</description>
+ </item>
+ <item>
+ <term><see cref="F:Alphaleonis.Win32.Vss.VssError.WriterErrorInconsistentSnapshot"/></term>
+ <description>The shadow copy contains only a subset of the volumes needed by the writer to correctly back up the application component.</description>
+ </item>
+ <item>
+ <term><see cref="F:Alphaleonis.Win32.Vss.VssError.WriterOutOfResources"/></term>
+ <description>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.</description>
+ </item>
+ <item>
+ <term><see cref="F:Alphaleonis.Win32.Vss.VssError.WriterTimeout"/></term>
+ <description>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.</description>
+ </item>
+ <item>
+ <term><see cref="F:Alphaleonis.Win32.Vss.VssError.WriterErrorRetryable"/></term>
+ <description>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.</description>
+ </item>
+ <item>
+ <term><see cref="F:Alphaleonis.Win32.Vss.VssError.WriterErrorNonRetryable"/></term>
+ <description>The writer operation failed because of an error that might recur if another shadow copy is created.</description>
+ </item>
+ <item>
+ <term><see cref="F:Alphaleonis.Win32.Vss.VssError.WriterNotResponding"/></term>
+ <description>The writer is not responding.</description>
+ </item>
+ <item>
+ <term><see cref="F:Alphaleonis.Win32.Vss.VssError.WriterStatusNotAvailable"/></term>
+ <description>
+ <para>
+ 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.
+ </para>
+ <para>
+ <b>Windows Vista, Windows Server 2003 and Windows XP:</b> This value is not supported.
+ </para>
+ </description>
+ </item>
+ </list>
+ </para>
+ </remarks>
+ </member>
+ <member name="T:Alphaleonis.Win32.Vss.VssRestoreSubcomponentInfo">
+ <summary>
+ Represents information about a Subcomponent associated with a given component.
+ </summary>
+ </member>
+ <member name="M:Alphaleonis.Win32.Vss.VssRestoreSubcomponentInfo.#ctor(System.String,System.String)">
+ <summary>
+ Initializes a new instance of <see cref="T:Alphaleonis.Win32.Vss.VssRestoreSubcomponentInfo"/>.
+ </summary>
+ <param name="logicalPath">The logical path of the Subcomponent. This can not be empty when working with Subcomponents.</param>
+ <param name="componentName">The name of the Subcomponent. This can not be empty.</param>
+ </member>
+ <member name="P:Alphaleonis.Win32.Vss.VssRestoreSubcomponentInfo.LogicalPath">
+ <summary>The logical path of the Subcomponent. This can not be empty when working with Subcomponents.</summary>
+ </member>
+ <member name="P:Alphaleonis.Win32.Vss.VssRestoreSubcomponentInfo.ComponentName">
+ <summary>The name of the Subcomponent. This can not be empty.</summary>
+ </member>
+ <member name="T:Alphaleonis.Win32.Vss.IVssImplementation">
+ <summary>
+ <c>IVssImplementation</c> provides an interface to the global methods of the VSS API compiled for a specific
+ platform.
+ </summary>
+ <remarks>
+ An instance of <c>IVssImplementation</c> can be obtained either by using the factory methods of
+ <see cref="T:Alphaleonis.Win32.Vss.VssUtils"/> 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 <c>VssImplementation</c>
+ from that assembly.
+ </remarks>
+ <seealso cref="T:Alphaleonis.Win32.Vss.VssUtils"/>
+ </member>
+ <member name="M:Alphaleonis.Win32.Vss.IVssImplementation.CreateVssBackupComponents">
+ <summary>
+ The <c>CreateVssBackupComponents</c> method creates an <see cref="T:Alphaleonis.Win32.Vss.IVssBackupComponents"/> interface object
+ for the current implementation and returns a reference to it.
+ </summary>
+ <remarks>
+ The calling application is responsible for calling <c>Dispose"</c> to release the
+ resources held by the <see cref="T:Alphaleonis.Win32.Vss.IVssBackupComponents"/> instance when it is no longer needed.
+ </remarks>
+ <returns>A reference to the newly created <see cref="T:Alphaleonis.Win32.Vss.IVssBackupComponents"/> instance.</returns>
+ <exception cref="T:System.UnauthorizedAccessException">The caller does not have sufficient backup privileges or is not an administrator.</exception>
+ <exception cref="T:System.OutOfMemoryException">Out of memory or other system resources.</exception>
+ <exception cref="T:System.SystemException">Unexpected VSS system error. The error code is logged in the event log.</exception>
+ <seealso cref="T:Alphaleonis.Win32.Vss.IVssBackupComponents"/>
+ </member>
+ <member name="M:Alphaleonis.Win32.Vss.IVssImplementation.IsVolumeSnapshotted(System.String)">
+ <summary>
+ The <c>IsVolumeSnapshotted</c> function determines whether any shadow copies exist for the specified volume.
+ </summary>
+ <remarks>
+ Use <see cref="M:Alphaleonis.Win32.Vss.IVssImplementation.GetSnapshotCompatibility(System.String)"/> to determine whether certain volume control or file I/O operations are
+ disabled for the given volume if a shadow copy of it exists.
+ </remarks>
+ <param name="volumeName">
+ Name of the volume. The name of the volume to be checked must be in one of the following formats:
+ <list type="bullet">
+ <item><description>The path of a volume mount point with a backslash (\)</description></item>
+ <item><description>A drive letter with backslash (\), for example, D:\</description></item>
+ <item><description>A unique volume name of the form \\?\Volume{GUID}\ (where GUID is the unique global identifier of the volume) with a backslash (\)</description></item>
+ </list>
+ </param>
+ <returns><c>true</c> if the volume has a shadow copy, and <c>false</c> if the volume does not have a shadow copy.</returns>
+ <exception cref="T:System.ArgumentException">One of the parameters is not valid.</exception>
+ <exception cref="T:System.UnauthorizedAccessException">The caller does not have sufficient backup privileges or is not an administrator.</exception>
+ <exception cref="T:System.OutOfMemoryException">Out of memory or other system resources.</exception>
+ <exception cref="T:System.SystemException">Unexpected VSS system error. The error code is logged in the event log.</exception>
+ <exception cref="T:Alphaleonis.Win32.Vss.VssProviderVetoException">Expected provider error. The provider logged the error in the event log.</exception>
+ <exception cref="T:Alphaleonis.Win32.Vss.VssObjectNotFoundException">The specified volume was not found.</exception>
+ <exception cref="T:Alphaleonis.Win32.Vss.VssUnexpectedProviderErrorException">Unexpected provider error. The error code is logged in the event log file.</exception>
+ </member>
+ <member name="M:Alphaleonis.Win32.Vss.IVssImplementation.GetSnapshotCompatibility(System.String)">
+ <summary>
+ Determines whether certain volume control or file I/O operations are disabled for the given volume if a shadow copy of it exists.
+ </summary>
+ <param name="volumeName">
+ Name of the volume. The name of the volume to be checked must be in one of the following formats:
+ <list type="bullet">
+ <item><description>The path of a volume mount point with a backslash (\)</description></item>
+ <item><description>A drive letter with backslash (\), for example, D:\</description></item>
+ <item><description>A unique volume name of the form \\?\Volume{GUID}\ (where GUID is the unique global identifier of the volume) with a backslash (\)</description></item>
+ </list>
+ </param>
+ <returns>
+ A bit mask (or bitwise OR) of <see cref="T:Alphaleonis.Win32.Vss.VssSnapshotCompatibility"/> 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.
+ </returns>
+ <remarks>
+ <para>
+ Use <see cref="M:Alphaleonis.Win32.Vss.IVssImplementation.IsVolumeSnapshotted(System.String)"/> to determine whether a snapshot exists for the specified volume or not.
+ </para>
+ <para>
+ 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 <see cref="F:Alphaleonis.Win32.Vss.VssSnapshotCompatibility.None"/>.
+ </para>
+ </remarks>
+ <seealso cref="M:Alphaleonis.Win32.Vss.IVssImplementation.IsVolumeSnapshotted(System.String)"/>
+ <exception cref="T:System.ArgumentException">One of the parameters is not valid.</exception>
+ <exception cref="T:System.UnauthorizedAccessException">The caller does not have sufficient backup privileges or is not an administrator.</exception>
+ <exception cref="T:System.OutOfMemoryException">Out of memory or other system resources.</exception>
+ <exception cref="T:System.SystemException">Unexpected VSS system error. The error code is logged in the event log.</exception>
+ <exception cref="T:Alphaleonis.Win32.Vss.VssProviderVetoException">Expected provider error. The provider logged the error in the event log.</exception>
+ <exception cref="T:Alphaleonis.Win32.Vss.VssObjectNotFoundException">The specified volume was not found.</exception>
+ <exception cref="T:Alphaleonis.Win32.Vss.VssUnexpectedProviderErrorException">Unexpected provider error. The error code is logged in the event log file.</exception>
+ </member>
+ <member name="M:Alphaleonis.Win32.Vss.IVssImplementation.ShouldBlockRevert(System.String)">
+ <summary>
+ Checks the registry for writers that should block revert operations on the specified volume.
+ </summary>
+ <param name="volumeName">
+ The name of the volume. The name must be in one of the following formats:
+ <list type="bullet">
+ <item><description>The path of a volume mount point with a backslash (\)</description></item>
+ <item><description>A drive letter with backslash (\), for example, D:\</description></item>
+ <item><description>A unique volume name of the form \\?\Volume{GUID}\ (where GUID is the unique global identifier of the volume) with a backslash (\)</description></item>
+ </list>
+ </param>
+ <returns>
+ <see langword="true" /> if the volume contains components from any writers that are listed in the registry as writers that should block
+ revert operations; otherwise, <see langword="false"/>
+ </returns>
+ </member>
+ <member name="M:Alphaleonis.Win32.Vss.IVssImplementation.CreateVssExamineWriterMetadata(System.String)">
+ <summary>
+ The <b>CreateVssExamineWriterMetadata</b> function creates a new <see cref="T:Alphaleonis.Win32.Vss.IVssExamineWriterMetadata"/> instance from an
+ XML document for the current implementation.
+ </summary>
+ <param name="xml">A string containing a Writer Metadata Document with which to initialize the returned <see cref="T:Alphaleonis.Win32.Vss.IVssExamineWriterMetadata"/> object.</param>
+ <remarks>
+ This method attempts to load the returned <see cref="T:Alphaleonis.Win32.Vss.IVssExamineWriterMetadata"/> object with metadata previously stored by a call to
+ <see cref="M:Alphaleonis.Win32.Vss.IVssExamineWriterMetadata.SaveAsXml"/>. Users should not tamper with this metadata document.
+ </remarks>
+ <returns>a <see cref="T:Alphaleonis.Win32.Vss.IVssExamineWriterMetadata"/> instance initialized with the specified XML document.</returns>
+ </member>
+ <member name="M:Alphaleonis.Win32.Vss.IVssImplementation.GetSnapshotManagementInterface">
+ <summary>
+ Gets a snapshot management interface for the current implementation.
+ </summary>
+ <returns>A snapshot management interface for the current implementation.</returns>
+ </member>
+ <member name="T:Alphaleonis.Win32.Vss.VssVolumeInUseException">
+ <summary>
+ Exception indicating that the volume was in use and could not be locked.
+ </summary>
+ </member>
+ <member name="M:Alphaleonis.Win32.Vss.VssVolumeInUseException.#ctor">
+ <summary>
+ Initializes a new instance of the <see cref="T:Alphaleonis.Win32.Vss.VssVolumeInUseException"/>
+ class with a system-supplied message describing the error.
+ </summary>
+ </member>
+ <member name="M:Alphaleonis.Win32.Vss.VssVolumeInUseException.#ctor(System.String)">
+ <summary>
+ Initializes a new instance of the <see cref="T:Alphaleonis.Win32.Vss.VssVolumeInUseException"/> class with a specified error message.
+ </summary>
+ <param name="message">The message that describes the error</param>
+ </member>
+ <member name="M:Alphaleonis.Win32.Vss.VssVolumeInUseException.#ctor(System.String,System.Exception)">
+ <summary>
+ Initializes a new instance of the <see cref="T:Alphaleonis.Win32.Vss.VssVolumeInUseException"/> class with
+ a specified error message and a reference to the inner exception that is the cause of this exception.
+ </summary>
+ <param name="message">The message that describes the error</param>
+ <param name="innerException">The exception that is the cause of the current exception.</param>
+ </member>
+ <member name="M:Alphaleonis.Win32.Vss.VssVolumeInUseException.#ctor(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">
+ <summary>
+ Initializes a new instance of the <see cref="T:Alphaleonis.Win32.Vss.VssVolumeInUseException"/> class.
+ </summary>
+ <param name="info">The <see cref="T:System.Runtime.Serialization.SerializationInfo"/> that holds the serialized object data about the exception being thrown.</param>
+ <param name="context">The <see cref="T:System.Runtime.Serialization.StreamingContext"/> that contains contextual information about the source or destination.</param>
+ <exception cref="T:System.ArgumentNullException">The <paramref name="info"/> parameter is null. </exception>
+ <exception cref="T:System.Runtime.Serialization.SerializationException">The class name is null or <see cref="P:System.Exception.HResult"/> is zero (0). </exception>
+ </member>
+ <member name="T:Alphaleonis.Win32.Vss.VssUnexpectedWriterErrorException">
+ <summary>
+ Exception thrown to indicate that an unexpected error occurred during communication with writers.
+ </summary>
+ <remarks>
+ The error code is logged in the error log file.
+ </remarks>
+ </member>
+ <member name="M:Alphaleonis.Win32.Vss.VssUnexpectedWriterErrorException.#ctor">
+ <summary>
+ Initializes a new instance of the <see cref="T:Alphaleonis.Win32.Vss.VssUnexpectedWriterErrorException"/>
+ class with a system-supplied message describing the error.
+ </summary>
+ </member>
+ <member name="M:Alphaleonis.Win32.Vss.VssUnexpectedWriterErrorException.#ctor(System.String)">
+ <summary>
+ Initializes a new instance of the <see cref="T:Alphaleonis.Win32.Vss.VssUnexpectedWriterErrorException"/> class with a specified error message.
+ </summary>
+ <param name="message">The message that describes the error</param>
+ </member>
+ <member name="M:Alphaleonis.Win32.Vss.VssUnexpectedWriterErrorException.#ctor(System.String,System.Exception)">
+ <summary>
+ Initializes a new instance of the <see cref="T:Alphaleonis.Win32.Vss.VssUnexpectedWriterErrorException"/> class with
+ a specified error message and a reference to the inner exception that is the cause of this exception.
+ </summary>
+ <param name="message">The message that describes the error</param>
+ <param name="innerException">The exception that is the cause of the current exception.</param>
+ </member>
+ <member name="M:Alphaleonis.Win32.Vss.VssUnexpectedWriterErrorException.#ctor(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">
+ <summary>
+ Initializes a new instance of the <see cref="T:Alphaleonis.Win32.Vss.VssUnexpectedWriterErrorException"/> class.
+ </summary>
+ <param name="info">The <see cref="T:System.Runtime.Serialization.SerializationInfo"/> that holds the serialized object data about the exception being thrown.</param>
+ <param name="context">The <see cref="T:System.Runtime.Serialization.StreamingContext"/> that contains contextual information about the source or destination.</param>
+ <exception cref="T:System.ArgumentNullException">The <paramref name="info"/> parameter is null. </exception>
+ <exception cref="T:System.Runtime.Serialization.SerializationException">The class name is null or <see cref="P:System.Exception.HResult"/> is zero (0). </exception>
+ </member>
+ <member name="T:Alphaleonis.Win32.Vss.VssFlushWritesTimeoutException">
+ <summary>
+ Exception thrown to indicate The system was unable to flush I/O writes.
+ </summary>
+ <remarks>
+ This can be a transient problem. It is recommended to wait ten minutes and try again, up to three times.
+ </remarks>
+ </member>
+ <member name="M:Alphaleonis.Win32.Vss.VssFlushWritesTimeoutException.#ctor">
+ <summary>
+ Initializes a new instance of the <see cref="T:Alphaleonis.Win32.Vss.VssFlushWritesTimeoutException"/>
+ class with a system-supplied message describing the error.
+ </summary>
+ </member>
+ <member name="M:Alphaleonis.Win32.Vss.VssFlushWritesTimeoutException.#ctor(System.String)">
+ <summary>
+ Initializes a new instance of the <see cref="T:Alphaleonis.Win32.Vss.VssFlushWritesTimeoutException"/> class with a specified error message.
+ </summary>
+ <param name="message">The message that describes the error</param>
+ </member>
+ <member name="M:Alphaleonis.Win32.Vss.VssFlushWritesTimeoutException.#ctor(System.String,System.Exception)">
+ <summary>
+ Initializes a new instance of the <see cref="T:Alphaleonis.Win32.Vss.VssFlushWritesTimeoutException"/> class with
+ a specified error message and a reference to the inner exception that is the cause of this exception.
+ </summary>
+ <param name="message">The message that describes the error</param>
+ <param name="innerException">The exception that is the cause of the current exception.</param>
+ </member>
+ <member name="M:Alphaleonis.Win32.Vss.VssFlushWritesTimeoutException.#ctor(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">
+ <summary>
+ Initializes a new instance of the <see cref="T:Alphaleonis.Win32.Vss.VssFlushWritesTimeoutException"/> class.
+ </summary>
+ <param name="info">The <see cref="T:System.Runtime.Serialization.SerializationInfo"/> that holds the serialized object data about the exception being thrown.</param>
+ <param name="context">The <see cref="T:System.Runtime.Serialization.StreamingContext"/> that contains contextual information about the source or destination.</param>
+ <exception cref="T:System.ArgumentNullException">The <paramref name="info"/> parameter is null. </exception>
+ <exception cref="T:System.Runtime.Serialization.SerializationException">The class name is null or <see cref="P:System.Exception.HResult"/> is zero (0). </exception>
+ </member>
+ <member name="T:Alphaleonis.Win32.Vss.VssFileSpecificationBackupType">
+ <summary>
+ <para>
+ The <see cref="T:Alphaleonis.Win32.Vss.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).
+ </para>
+ <para>
+ File sets stored in the Writer Metadata Document are tagged with a bit mask (or bitwise OR) of <see cref="T:Alphaleonis.Win32.Vss.VssFileSpecificationBackupType"/>
+ values indicating the following:
+ <list type="bullet">
+ <item>
+ <description>
+ Whether the writer and the requester have to
+ evaluate a given file set for participation in the specified type of backup operations
+ </description>
+ </item>
+ <item>
+ <description>
+ Whether backing up the specified file will require a shadow copy
+ </description>
+ </item>
+ </list>
+ </para>
+ </summary>
+ <remarks>
+ For more information see the MSDN documentation on
+ <see href="http://msdn.microsoft.com/en-us/library/aa384951(VS.85).aspx">VSS_FILE_SPEC_BACKUP_TYPE Enumeration</see>
+ </remarks>
+ </member>
+ <member name="F:Alphaleonis.Win32.Vss.VssFileSpecificationBackupType.Unknown">
+ <summary>
+ Used on operating systems where this enumeration is not supported, i.e. Windows XP.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Vss.VssFileSpecificationBackupType.FullBackupRequired">
+ <summary>
+ <para>
+ A file set tagged with this value must be involved in all types of backup operations.
+ </para>
+ <para>
+ 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 <see cref="T:Alphaleonis.Win32.Vss.VssBackupType"/> of
+ <see cref="F:Alphaleonis.Win32.Vss.VssBackupType.Full"/>.
+ </para>
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Vss.VssFileSpecificationBackupType.DifferentialBackupRequired">
+ <summary>
+ 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 <see cref="T:Alphaleonis.Win32.Vss.VssBackupType"/> of
+ <see cref="F:Alphaleonis.Win32.Vss.VssBackupType.Differential"/>.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Vss.VssFileSpecificationBackupType.IncrementalBackupRequired">
+ <summary>
+ 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
+ <see cref="T:Alphaleonis.Win32.Vss.VssBackupType"/> of <see cref="F:Alphaleonis.Win32.Vss.VssBackupType.Incremental"/>.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Vss.VssFileSpecificationBackupType.LogBackupRequired">
+ <summary>
+ 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
+ <see cref="T:Alphaleonis.Win32.Vss.VssBackupType"/> of <see cref="F:Alphaleonis.Win32.Vss.VssBackupType.Log"/>.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Vss.VssFileSpecificationBackupType.FullSnapshotRequired">
+ <summary>
+ 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
+ <see cref="T:Alphaleonis.Win32.Vss.VssBackupType"/> of <see cref="F:Alphaleonis.Win32.Vss.VssBackupType.Full"/>.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Vss.VssFileSpecificationBackupType.DifferentialSnapshotRequired">
+ <summary>
+ 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
+ <see cref="T:Alphaleonis.Win32.Vss.VssBackupType"/> of <see cref="F:Alphaleonis.Win32.Vss.VssBackupType.Differential"/>.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Vss.VssFileSpecificationBackupType.IncrementalSnapshotRequired">
+ <summary>
+ 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
+ <see cref="T:Alphaleonis.Win32.Vss.VssBackupType"/> of <see cref="F:Alphaleonis.Win32.Vss.VssBackupType.Incremental"/>.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Vss.VssFileSpecificationBackupType.LogSnapshotRequired">
+ <summary>
+ 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
+ <see cref="T:Alphaleonis.Win32.Vss.VssBackupType"/> of <see cref="F:Alphaleonis.Win32.Vss.VssBackupType.Log"/>.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Vss.VssFileSpecificationBackupType.AllBackupRequired">
+ <summary>
+ The default file backup specification type. A file set tagged with this value must always participate in backup and restore operations.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Vss.VssFileSpecificationBackupType.AllSnapshotRequired">
+ <summary>
+ 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.
+ </summary>
+ </member>
+ <member name="T:Alphaleonis.Win32.Vss.VssProtectionFault">
+ <summary>
+ 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).
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Vss.VssProtectionFault.None">
+ <summary>
+ No shadow copy protection fault has occurred.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Vss.VssProtectionFault.DiffAreaMissing">
+ <summary>
+ 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.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Vss.VssProtectionFault.IOFailureDuringOnline">
+ <summary>
+ The volume that contains the shadow copy storage area could not be brought online because an I/O failure occurred.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Vss.VssProtectionFault.MetadataCorruption">
+ <summary>
+ The shadow copy metadata for the shadow copy storage area has been corrupted.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Vss.VssProtectionFault.MemoryAllocationFailure">
+ <summary>
+ 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.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Vss.VssProtectionFault.MappedMemoryFailure">
+ <summary>
+ 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.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Vss.VssProtectionFault.CowReadFailure">
+ <summary>
+ 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.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Vss.VssProtectionFault.CowWriteFailure">
+ <summary>
+ 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.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Vss.VssProtectionFault.DiffAreaFull">
+ <summary>
+ 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:
+ <list type="bullet">
+ <item><description>Delete unused shadow copy storage areas by calling the <see cref="M:Alphaleonis.Win32.Vss.IVssDifferentialSoftwareSnapshotManagement.DeleteUnusedDiffAreas(System.String)"/> method.</description></item>
+ <item><description>Increase the shadow copy storage area maximum size for the volume by calling the <see cref="O:Alphaleonis.Win32.Vss.IVssDifferentialSoftwareSnapshotManagement.ChangeDiffAreaMaximumSize"/> method.</description></item>
+ </list>
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Vss.VssProtectionFault.GrowTooSlow">
+ <summary>
+ 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.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Vss.VssProtectionFault.GrowFailed">
+ <summary>
+ The size of the shadow copy storage area could not be increased.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Vss.VssProtectionFault.DestroyAllSnapshots">
+ <summary>
+ An unexpected error occurred.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Vss.VssProtectionFault.FileSystemFailure">
+ <summary>
+ 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.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Vss.VssProtectionFault.IOFailure">
+ <summary>
+ A read or write failure occurred on the shadow copy storage area volume.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Vss.VssProtectionFault.DiffAreaRemoved">
+ <summary>
+ The shadow copy storage area volume was removed from the system or could not be accessed for some other reason.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Vss.VssProtectionFault.ExternalWriterToDiffArea">
+ <summary>
+ Another application attempted to write to the shadow copy storage area.
+ </summary>
+ </member>
+ <member name="T:Alphaleonis.Win32.Vss.VssWMDependency">
+ <summary>
+ <see cref="T:Alphaleonis.Win32.Vss.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.</summary>
+ <remarks>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.
+ <note><b>Windows XP:</b> This class is not supported until Windows Server 2003</note>
+ </remarks>
+ <seealso href="http://msdn.microsoft.com/en-us/library/aa384301(VS.85).aspx"/>
+ </member>
+ <member name="M:Alphaleonis.Win32.Vss.VssWMDependency.#ctor(System.Guid,System.String,System.String)">
+ <summary>
+ Initializes a new instance of the <see cref="T:Alphaleonis.Win32.Vss.VssWMDependency"/> class.
+ </summary>
+ <param name="writerId">The writer id.</param>
+ <param name="logicalPath">The logical path.</param>
+ <param name="componentName">Name of the component.</param>
+ </member>
+ <member name="P:Alphaleonis.Win32.Vss.VssWMDependency.WriterId">
+ <summary>
+ The class ID of a writer containing a component that the current component depends on.
+ </summary>
+ </member>
+ <member name="P:Alphaleonis.Win32.Vss.VssWMDependency.LogicalPath">
+ <summary>
+ The logical path of a component that the current component depends on.
+ </summary>
+ </member>
+ <member name="P:Alphaleonis.Win32.Vss.VssWMDependency.ComponentName">
+ <summary>
+ Retrieves the name of a component that the current component depends on.
+ </summary>
+ </member>
+ <member name="T:Alphaleonis.Win32.Vss.VssVolumeProtectionInfo">
+ <summary>
+ Contains information about a volume's shadow copy protection level.
+ </summary>
+ </member>
+ <member name="M:Alphaleonis.Win32.Vss.VssVolumeProtectionInfo.#ctor(Alphaleonis.Win32.Vss.VssProtectionLevel,System.Boolean,Alphaleonis.Win32.Vss.VssProtectionFault,System.UInt32,System.Boolean)">
+ <summary>
+ Initializes a new instance of the <see cref="T:Alphaleonis.Win32.Vss.VssVolumeProtectionInfo"/> class.
+ </summary>
+ <param name="protectionLevel">The protection level.</param>
+ <param name="volumeIsOfflineForProtection">if set to <c>true</c> the volume is offline for protection.</param>
+ <param name="protectionFault">The protection fault.</param>
+ <param name="failureStatus">The failure status.</param>
+ <param name="volumeHasUnusedDiffArea">if set to <c>true</c> the volume has unused diff area.</param>
+ </member>
+ <member name="P:Alphaleonis.Win32.Vss.VssVolumeProtectionInfo.ProtectionLevel">
+ <summary>
+ Gets the target protection level for the volume.
+ </summary>
+ <value>The target protection level for the volume.</value>
+ </member>
+ <member name="P:Alphaleonis.Win32.Vss.VssVolumeProtectionInfo.VolumeIsOfflineForProtection">
+ <summary>
+ Gets a value indicating whether the volume is offline due to a protection fault.
+ </summary>
+ <value>
+ <c>true</c> if the volume is offline due to a protection fault; otherwise, <c>false</c>.
+ </value>
+ </member>
+ <member name="P:Alphaleonis.Win32.Vss.VssVolumeProtectionInfo.ProtectionFault">
+ <summary>
+ Gets a value that describes the shadow copy protection fault that caused the volume to go offline.
+ </summary>
+ <value>A value that describes the shadow copy protection fault that caused the volume to go offline.</value>
+ </member>
+ <member name="P:Alphaleonis.Win32.Vss.VssVolumeProtectionInfo.FailureStatus">
+ <summary>
+ Gets the internal failure status code.
+ </summary>
+ <value>The internal failure status code.</value>
+ </member>
+ <member name="P:Alphaleonis.Win32.Vss.VssVolumeProtectionInfo.VolumeHasUnusedDiffArea">
+ <summary>
+ Gets a value indicating whether the volume has unused shadow copy storage area files or not.
+ </summary>
+ <value>
+ <c>true</c> if the volume has unused shadow copy storage area files; otherwise, <c>false</c>.
+ </value>
+ </member>
+ <member name="T:Alphaleonis.Win32.Vss.VssVolumeNotSupportedByProviderException">
+ <summary>
+ Exception thrown to indicate that the volume is not supported by the specified provider.
+ </summary>
+ </member>
+ <member name="M:Alphaleonis.Win32.Vss.VssVolumeNotSupportedByProviderException.#ctor">
+ <summary>
+ Initializes a new instance of the <see cref="T:Alphaleonis.Win32.Vss.VssVolumeNotSupportedByProviderException"/>
+ class with a system-supplied message describing the error.
+ </summary>
+ </member>
+ <member name="M:Alphaleonis.Win32.Vss.VssVolumeNotSupportedByProviderException.#ctor(System.String)">
+ <summary>
+ Initializes a new instance of the <see cref="T:Alphaleonis.Win32.Vss.VssVolumeNotSupportedByProviderException"/> class with a specified error message.
+ </summary>
+ <param name="message">The message that describes the error</param>
+ </member>
+ <member name="M:Alphaleonis.Win32.Vss.VssVolumeNotSupportedByProviderException.#ctor(System.String,System.Exception)">
+ <summary>
+ Initializes a new instance of the <see cref="T:Alphaleonis.Win32.Vss.VssVolumeNotSupportedByProviderException"/> class with
+ a specified error message and a reference to the inner exception that is the cause of this exception.
+ </summary>
+ <param name="message">The message that describes the error</param>
+ <param name="innerException">The exception that is the cause of the current exception.</param>
+ </member>
+ <member name="M:Alphaleonis.Win32.Vss.VssVolumeNotSupportedByProviderException.#ctor(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">
+ <summary>
+ Initializes a new instance of the <see cref="T:Alphaleonis.Win32.Vss.VssVolumeNotSupportedByProviderException"/> class.
+ </summary>
+ <param name="info">The <see cref="T:System.Runtime.Serialization.SerializationInfo"/> that holds the serialized object data about the exception being thrown.</param>
+ <param name="context">The <see cref="T:System.Runtime.Serialization.StreamingContext"/> that contains contextual information about the source or destination.</param>
+ <exception cref="T:System.ArgumentNullException">The <paramref name="info"/> parameter is null. </exception>
+ <exception cref="T:System.Runtime.Serialization.SerializationException">The class name is null or <see cref="P:System.Exception.HResult"/> is zero (0). </exception>
+ </member>
+ <member name="T:Alphaleonis.Win32.Vss.VssRestoreType">
+ <summary>The <see cref="T:Alphaleonis.Win32.Vss.VssRestoreType"/> enumeration is used by a requester to indicate the type of restore operation it is about to perform.</summary>
+ <remarks>
+ <para>A requester sets the type of a restore operation using <see cref="M:Alphaleonis.Win32.Vss.IVssBackupComponents.SetRestoreState(Alphaleonis.Win32.Vss.VssRestoreType)"/>.</para>
+ <!-- <para>A writer can retrieve the type of a restore operation by calling CVssWriter::GetRestoreType.</para> -->
+ </remarks>
+ </member>
+ <member name="F:Alphaleonis.Win32.Vss.VssRestoreType.Undefined">
+ <summary>
+ <para>No restore type is defined.</para>
+ <para>This indicates an error on the part of the requester.</para>
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Vss.VssRestoreType.ByCopy">
+ <summary>The default restore type: A requester restores backed-up data to the original volume from a backup medium.</summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Vss.VssRestoreType.Import">
+ <summary>
+ <para>
+ 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.
+ </para>
+ <para>
+ <b>Windows Server 2003, Standard Edition and Windows Server 2003, Web Edition:</b> This value is not supported. All editions of Windows Server 2003 SP1 support this value.
+ </para>
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Vss.VssRestoreType.Other">
+ <summary>A restore type not currently enumerated. This value indicates an application error.</summary>
+ </member>
+ <member name="T:Alphaleonis.Win32.Vss.VssVolumeProperties">
+ <summary>
+ The <see cref="T:Alphaleonis.Win32.Vss.VssVolumeProperties"/> class contains the properties of a shadow copy source volume.
+ </summary>
+ </member>
+ <member name="M:Alphaleonis.Win32.Vss.VssVolumeProperties.#ctor(System.String,System.String)">
+ <summary>
+ Initializes a new instance of the <see cref="T:Alphaleonis.Win32.Vss.VssVolumeProperties"/> class.
+ </summary>
+ <param name="volumeName">Name of the volume.</param>
+ <param name="volumeDisplayName">Display name of the volume.</param>
+ </member>
+ <member name="P:Alphaleonis.Win32.Vss.VssVolumeProperties.VolumeName">
+ <summary>
+ Gets the volume name, in <c>\\?\Volume{GUID}\</c> format.
+ </summary>
+ <value>The volume name, in <c>\\?\Volume{GUID}\</c> format.</value>
+ </member>
+ <member name="P:Alphaleonis.Win32.Vss.VssVolumeProperties.VolumeDisplayName">
+ <summary>
+ Gets a string that can be displayed to the user containing the shortest mount point (for example C:\).
+ </summary>
+ <value>A string that can be displayed to the user containing the shortest mount point (for example C:\).</value>
+ </member>
+ <member name="T:Alphaleonis.Win32.Vss.VssSourceType">
+ <summary>The <see cref="T:Alphaleonis.Win32.Vss.VssSourceType"/> enumeration specifies the type of data that a writer manages.</summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Vss.VssSourceType.Undefined">
+ <summary><para>The source of the data is not known.</para><para>This indicates a writer error, and the requester should report it.</para></summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Vss.VssSourceType.TransactedDB">
+ <summary>The source of the data is a database that supports transactions, such as Microsoft SQL Server.</summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Vss.VssSourceType.NonTransactedDB">
+ <summary>The source of the data is a database that does not support transactions.</summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Vss.VssSourceType.Other">
+ <summary>
+ <para>Unclassified source type—data will be in a file group.</para>
+ <para>This is the default source type.</para>
+ </summary>
+ </member>
+ <member name="T:Alphaleonis.Win32.Vss.IVssWriterComponents">
+ <summary>
+ The <see cref="T:Alphaleonis.Win32.Vss.IVssWriterComponents"/> interface contains methods used to obtain and modify component information
+ (in the form of <see cref="T:Alphaleonis.Win32.Vss.IVssComponent"/> instances) associated with a given writer but stored in a
+ requester's Backup Components Document.
+ </summary>
+ </member>
+ <member name="P:Alphaleonis.Win32.Vss.IVssWriterComponents.Components">
+ <summary>
+ A read-only collection of <see cref="T:Alphaleonis.Win32.Vss.IVssComponent"/> instances to the a given writer's
+ components explicitly stored in the Backup Components Document.
+ </summary>
+ <value>A read-only collection of <see cref="T:Alphaleonis.Win32.Vss.IVssComponent"/> instances to the a given writer's
+ components explicitly stored in the Backup Components Document. <note type="caution">This list
+ must not be accessed after the <see cref="T:Alphaleonis.Win32.Vss.IVssComponent"/> from which it was obtained has been disposed.</note>
+ </value>
+ </member>
+ <member name="P:Alphaleonis.Win32.Vss.IVssWriterComponents.InstanceId">
+ <summary>
+ Identifier of the writer instance responsible for the components.
+ </summary>
+ </member>
+ <member name="P:Alphaleonis.Win32.Vss.IVssWriterComponents.WriterId">
+ <summary>
+ Identifier of the writer class responsible for the components.
+ </summary>
+ </member>
+ <member name="T:Alphaleonis.Win32.Vss.IVssWMComponent">
+ <summary>
+ <see cref="T:Alphaleonis.Win32.Vss.IVssWMComponent"/> is a class that allows access to component information stored in a Writer Metadata Document.
+ Instances of <see cref="T:Alphaleonis.Win32.Vss.IVssWMComponent"/> are obtained by enumerating <cee cref="P:Alphaleonis.Win32.Vss.IVssExamineWriterMetadata.Components"/>.
+ </summary>
+ </member>
+ <member name="M:Alphaleonis.Win32.Vss.IVssWMComponent.GetIcon">
+ <summary>
+ Gets a buffer containing the binary data for a displayable icon representing the component.
+ </summary>
+ <remarks>
+ 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 <see langword="null"/>.
+ </remarks>
+ <returns>A buffer containing the binary data for a displayable icon representing the component. </returns>
+ </member>
+ <member name="P:Alphaleonis.Win32.Vss.IVssWMComponent.Type">
+ <summary>
+ The component type.
+ </summary>
+ </member>
+ <member name="P:Alphaleonis.Win32.Vss.IVssWMComponent.LogicalPath">
+ <summary>
+ The logical path of the component.
+ </summary>
+ <value>A string containing the logical path of the component, which may be <see langword="null"/>.
+ <remarks>There are no restrictions on the characters that can appear in a non-NULL logical path.</remarks></value>
+ </member>
+ <member name="P:Alphaleonis.Win32.Vss.IVssWMComponent.ComponentName">
+ <summary>
+ The name of the component. A component name string cannot be <see langword="null"/>.
+ </summary>
+ </member>
+ <member name="P:Alphaleonis.Win32.Vss.IVssWMComponent.Caption">
+ <summary>
+ The description of the component. A caption string can be <see langword="null" />.
+ </summary>
+ </member>
+ <member name="P:Alphaleonis.Win32.Vss.IVssWMComponent.RestoreMetadata">
+ <summary>
+ Boolean that indicates whether there is private metadata associated with the restoration of the component.
+ </summary>
+ <value>
+ The Boolean is <see langword="true"/> if there is private metadata associated with the restoration
+ of the components, and <see langword="false"/> if there is not.
+ </value>
+ </member>
+ <member name="P:Alphaleonis.Win32.Vss.IVssWMComponent.NotifyOnBackupComplete">
+ <summary>Reserved for future use.</summary>
+ </member>
+ <member name="P:Alphaleonis.Win32.Vss.IVssWMComponent.Selectable">
+ <summary>
+ Boolean that indicates (for component mode operations) if the component is selectable for backup.
+ </summary>
+ <remarks>
+ The value of <see cref="P:Alphaleonis.Win32.Vss.IVssWMComponent.Selectable"/> helps determine whether a requester has the option of including or excluding
+ a given component in backup operations.
+ </remarks>
+ <value>
+ <see langword="true"/> if the component is selectable for backup and <see langword="false"/> if it is not.
+ </value>
+ <seealso href="http://msdn.microsoft.com/en-us/library/aa384680(VS.85).aspx">VSS_COMPONENTINFO structure on MSDN</seealso>
+ </member>
+ <member name="P:Alphaleonis.Win32.Vss.IVssWMComponent.SelectableForRestore">
+ <summary>
+ Boolean that indicates (for component-mode operations) whether the component is selectable for restore.
+ </summary>
+ <remarks>
+ <para>
+ <see cref="P:Alphaleonis.Win32.Vss.IVssWMComponent.SelectableForRestore"/> allows the requester to determine whether this component can be individually selected
+ for restore if it had earlier been implicitly included in the backup.
+ </para>
+ <para>
+ <note>
+ <b>Windows XP:</b> This requires Windows Server 2003 or later
+ </note>
+ </para>
+ </remarks>
+ <value>
+ The Boolean is <see langword="true"/> if the component is selectable for restore and <see langword="false"/> if it is not.
+ </value>
+ </member>
+ <member name="P:Alphaleonis.Win32.Vss.IVssWMComponent.ComponentFlags">
+ <summary>
+ A bit mask (or bitwise OR) of values of the <see cref="T:Alphaleonis.Win32.Vss.VssComponentFlags"/> enumeration, indicating the
+ features this component supports.
+ </summary>
+ <remarks>
+ <note>
+ <b>Windows Server 2003 and Windows XP:</b> Before Windows Server 2003 SP1, this member is reserved for system use.
+ </note>
+ </remarks>
+ </member>
+ <member name="P:Alphaleonis.Win32.Vss.IVssWMComponent.Files">
+ <summary>
+ The file descriptors associated with this component.
+ </summary>
+ <remarks>This collection represents the method <c>GetFile()</c> of <c>IVssWMComponent</c> in the VSS API</remarks>
+ </member>
+ <member name="P:Alphaleonis.Win32.Vss.IVssWMComponent.DatabaseFiles">
+ <summary>
+ A list of <see cref="T:Alphaleonis.Win32.Vss.VssWMFileDescription"/> instances containing information about the database backup component files.
+ </summary>
+ </member>
+ <member name="P:Alphaleonis.Win32.Vss.IVssWMComponent.DatabaseLogFiles">
+ <summary>
+ A list of file descriptors for the log files associated with the specified database backup component.
+ </summary>
+ </member>
+ <member name="P:Alphaleonis.Win32.Vss.IVssWMComponent.Dependencies">
+ <summary>
+ A list of <see cref="T:Alphaleonis.Win32.Vss.VssWMDependency"/> instances containing accessors for obtaining information about explicit writer-component
+ dependencies of one of the current components.
+ </summary>
+ </member>
+ <member name="T:Alphaleonis.Win32.Vss.VssObjectType">
+ <summary>
+ The <see cref="T:Alphaleonis.Win32.Vss.VssObjectType"/> enumeration is used by requesters to identify an object as
+ a shadow copy set, shadow copy, or provider.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Vss.VssObjectType.Unknown">
+ <summary>
+ <para>
+ The object type is not known.
+ </para>
+ <para>
+ This indicates an application error.
+ </para>
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Vss.VssObjectType.None">
+ <summary>
+ <para>
+ 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.
+ </para>
+ <para>
+ 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, <see cref="F:Alphaleonis.Win32.Vss.VssObjectType.None"/> can be thought
+ of as a wildcard input.
+ </para>
+ <para>
+ When returned as an output, the object type is not known and means that
+ there has been an application error.
+ </para>
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Vss.VssObjectType.SnapshotSet">
+ <summary>Shadow copy set.</summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Vss.VssObjectType.Snapshot">
+ <summary>Shadow copy.</summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Vss.VssObjectType.Provider">
+ <summary>Shadow copy provider.</summary>
+ </member>
+ <member name="T:Alphaleonis.Win32.Vss.VssDifferencedFileInfo">
+ <summary>
+ 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).
+ </summary>
+ </member>
+ <member name="M:Alphaleonis.Win32.Vss.VssDifferencedFileInfo.#ctor(System.String,System.String,System.Boolean,System.DateTime)">
+ <summary>Initializes a new instance of the <see cref="T:Alphaleonis.Win32.Vss.VssDifferencedFileInfo"/> class.</summary>
+ <param name="path">The path to the differenced files.</param>
+ <param name="fileSpecification">The file specification of the differenced files.</param>
+ <param name="lastModifyTime">The time of last modification for the difference files.</param>
+ <param name="isRecursive"><see langword="true"/> if the filespec for the differenced files should be interpreted recursively, <see langword="false"/> otherwise.</param>
+ </member>
+ <member name="P:Alphaleonis.Win32.Vss.VssDifferencedFileInfo.Path">
+ <summary>
+ <para>
+ The path to the differenced files.
+ </para>
+ <para>
+ Users of this method need to check to determine whether this path ends with a backslash (\).
+ </para>
+ </summary>
+ </member>
+ <member name="P:Alphaleonis.Win32.Vss.VssDifferencedFileInfo.FileSpecification">
+ <summary>The file specification of the differenced files.</summary>
+ </member>
+ <member name="P:Alphaleonis.Win32.Vss.VssDifferencedFileInfo.IsRecursive">
+ <summary>
+ Boolean specifying whether the file specification for the differenced files should be interpreted recursively.
+ If <see langword="true"/>, then the entire directory hierarchy will need to be searched for files matching the
+ file specification <see cref="P:Alphaleonis.Win32.Vss.VssDifferencedFileInfo.FileSpecification"/> to find files to be handled as differenced files during incremental
+ or differential backups. If <see langword="false"/>, only the root directory needs to be searched.
+ </summary>
+ </member>
+ <member name="P:Alphaleonis.Win32.Vss.VssDifferencedFileInfo.LastModifyTime">
+ <summary>
+ The writer specification of the time of last modification for the difference files.
+ </summary>
+ </member>
+ <member name="T:Alphaleonis.Win32.Vss.VssDiffAreaProperties">
+ <summary>
+ The <see cref="T:Alphaleonis.Win32.Vss.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).
+ </summary>
+ </member>
+ <member name="M:Alphaleonis.Win32.Vss.VssDiffAreaProperties.#ctor(System.String,System.String,System.Int64,System.Int64,System.Int64)">
+ <summary>
+ Initializes a new instance of the <see cref="T:Alphaleonis.Win32.Vss.VssDiffAreaProperties"/> class.
+ </summary>
+ <param name="volumeName">Name of the volume.</param>
+ <param name="diffAreaVolumeName">Name of the diff area volume.</param>
+ <param name="maximumDiffSpace">The maximum diff space.</param>
+ <param name="allocatedDiffSpace">The allocated diff space.</param>
+ <param name="usedDiffSpace">The used diff space.</param>
+ </member>
+ <member name="P:Alphaleonis.Win32.Vss.VssDiffAreaProperties.VolumeName">
+ <summary>
+ Gets the original volume name.
+ </summary>
+ <value>The original volume name.</value>
+ </member>
+ <member name="P:Alphaleonis.Win32.Vss.VssDiffAreaProperties.DiffAreaVolumeName">
+ <summary>
+ Gets the shadow copy storage area volume name.
+ </summary>
+ <value>The shadow copy storage area volume name.</value>
+ </member>
+ <member name="P:Alphaleonis.Win32.Vss.VssDiffAreaProperties.MaximumDiffSpace">
+ <summary>
+ Gets the maximum space used on the shadow copy storage area volume for this association.
+ </summary>
+ <value>The maximum space used on the shadow copy storage area volume for this association.</value>
+ </member>
+ <member name="P:Alphaleonis.Win32.Vss.VssDiffAreaProperties.AllocatedDiffSpace">
+ <summary>
+ Gets the allocated space on the shadow copy storage area volume by this association.
+ This must be less than or equal to <see cref="P:Alphaleonis.Win32.Vss.VssDiffAreaProperties.MaximumDiffSpace"/>.
+ </summary>
+ <value>The allocated space on the shadow copy storage area volume by this association.</value>
+ </member>
+ <member name="P:Alphaleonis.Win32.Vss.VssDiffAreaProperties.UsedDiffSpace">
+ <summary>
+ Gets the used space from the allocated area. This must be less than or equal to <see cref="P:Alphaleonis.Win32.Vss.VssDiffAreaProperties.AllocatedDiffSpace"/>.
+ </summary>
+ <value>The the used space from the allocated area.</value>
+ </member>
+ <member name="T:Alphaleonis.Win32.Vss.VssUtils">
+ <summary>
+ The <see cref="T:Alphaleonis.Win32.Vss.VssUtils"/> class is a static utility class for accessing the platform specific
+ instances of the various VSS interfaces in a platform-independent manner.
+ </summary>
+ <remarks>
+ Use the <see cref="O:Alphaleonis.Win32.Vss.VssUtils.LoadImplementation"/> under normal circumstances to load
+ the correct assembly and create an instance of <see cref="T:Alphaleonis.Win32.Vss.IVssImplementation"/> 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 <c>Alphaleonis.Win32.Vss.VssImplementation</c> from the platform specific
+ assembly. This class implements the <see cref="T:Alphaleonis.Win32.Vss.IVssImplementation"/> interface, and has a public parameterless constructor.
+ </remarks>
+ </member>
+ <member name="M:Alphaleonis.Win32.Vss.VssUtils.GetPlatformSpecificAssemblyShortName">
+ <summary>
+ Gets the short name of the platform specific assembly for the platform on which the assembly
+ is currently executing.
+ </summary>
+ <returns>the short name of the platform specific assembly for the platform on which the assembly
+ is currently executing.</returns>
+ <exception cref="T:Alphaleonis.Win32.Vss.UnsupportedOperatingSystemException">The operating system could not be detected or is unsupported.</exception>
+ </member>
+ <member name="M:Alphaleonis.Win32.Vss.VssUtils.GetPlatformSpecificAssemblyName">
+ <summary>
+ Gets the full name of the platform specific assembly for the platform on which the assembly is currently executing.
+ </summary>
+ <returns>The full name of the platform specific assembly for the platform on which the assembly is currently executing.</returns>
+ <exception cref="T:Alphaleonis.Win32.Vss.UnsupportedOperatingSystemException">The operating system could not be detected or is unsupported.</exception>
+ </member>
+ <member name="M:Alphaleonis.Win32.Vss.VssUtils.LoadImplementation">
+ <summary>
+ Loads the assembly containing the correct implementation of the <see cref="T:Alphaleonis.Win32.Vss.IVssImplementation"/> interface
+ for the operating system on which the assembly is currently executing.
+ </summary>
+ <overloads>
+ Loads the assembly containing the correct implementation of the <see cref="T:Alphaleonis.Win32.Vss.IVssImplementation"/> interface
+ for the operating system on which the assembly is currently executing, optionally allowing the specification
+ of an <see cref="T:System.AppDomain"/> into which to load the assembly.
+ </overloads>
+ <remarks>
+ <para>
+ The assembly will be loaded into the same <see cref="T:System.AppDomain"/> as the calling assembly.
+ </para>
+ <para>
+ 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.
+ </para>
+ </remarks>
+
+ <returns>An newly created instance of <see cref="T:Alphaleonis.Win32.Vss.IVssImplementation"/> suitable for the
+ operating system on which the assembly is currently executing.</returns>
+ <exception cref="T:Alphaleonis.Win32.Vss.UnsupportedOperatingSystemException">The operating system could not be detected or is unsupported.</exception>
+ </member>
+ <member name="M:Alphaleonis.Win32.Vss.VssUtils.LoadImplementation(System.AppDomain)">
+ <summary>
+ Loads the assembly containing the correct implementation of the <see cref="T:Alphaleonis.Win32.Vss.IVssImplementation"/> interface
+ for the operating system on which the assembly is currently executing allowing the specification
+ of an <see cref="T:System.AppDomain"/> into which to load the assembly.
+ </summary>
+ <param name="domain">The <see cref="T:System.AppDomain"/> into which to load the platform specific assembly.</param>
+ <remarks>
+ <para>
+ 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.
+ </para>
+ </remarks>
+ <returns>
+ An newly created instance of <see cref="T:Alphaleonis.Win32.Vss.IVssImplementation"/> suitable for the
+ operating system on which the assembly is currently executing.
+ </returns>
+ <exception cref="T:Alphaleonis.Win32.Vss.UnsupportedOperatingSystemException">The operating system could not be detected or is unsupported.</exception>
+ </member>
+ <member name="T:Alphaleonis.Win32.Vss.VssSnapshotProperties">
+ <summary>
+ The <see cref="T:Alphaleonis.Win32.Vss.VssSnapshotProperties"/> class contains the properties of a shadow copy or shadow copy set.
+ </summary>
+ </member>
+ <member name="M:Alphaleonis.Win32.Vss.VssSnapshotProperties.#ctor(System.Guid,System.Guid,System.Int64,System.String,System.String,System.String,System.String,System.String,System.String,System.Guid,Alphaleonis.Win32.Vss.VssVolumeSnapshotAttributes,System.DateTime,Alphaleonis.Win32.Vss.VssSnapshotState)">
+ <summary>
+ Initializes a new instance of the <see cref="T:Alphaleonis.Win32.Vss.VssSnapshotProperties"/> class.
+ </summary>
+ <param name="snapshotId">The snapshot id.</param>
+ <param name="snapshotSetId">The snapshot set id.</param>
+ <param name="snapshotCount">The snapshot count.</param>
+ <param name="snapshotDeviceObject">The snapshot device object.</param>
+ <param name="originalVolumeName">Name of the original volume.</param>
+ <param name="originatingMachine">The originating machine.</param>
+ <param name="serviceMachine">The service machine.</param>
+ <param name="exposedName">Name of the exposed.</param>
+ <param name="exposedPath">The exposed path.</param>
+ <param name="providerId">The provider id.</param>
+ <param name="snapshotAttributes">The snapshot attributes.</param>
+ <param name="creationTimestamp">The creation timestamp.</param>
+ <param name="snapshotState">State of the snapshot.</param>
+ </member>
+ <member name="P:Alphaleonis.Win32.Vss.VssSnapshotProperties.SnapshotId">
+ <summary>A <see cref="T:System.Guid"/> uniquely identifying the shadow copy identifier.</summary>
+ </member>
+ <member name="P:Alphaleonis.Win32.Vss.VssSnapshotProperties.SnapshotSetId">
+ <summary>A <see cref="T:System.Guid"/> uniquely identifying the shadow copy set containing the shadow copy.</summary>
+ </member>
+ <member name="P:Alphaleonis.Win32.Vss.VssSnapshotProperties.SnapshotsCount">
+ <summary>
+ <para>
+ 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 <see cref="P:Alphaleonis.Win32.Vss.VssSnapshotProperties.SnapshotsCount"/>
+ </para>
+ <para>
+ The maximum number of shadow-copied volumes permitted in a shadow copy set is 64.
+ </para>
+ </summary>
+ </member>
+ <member name="P:Alphaleonis.Win32.Vss.VssSnapshotProperties.SnapshotDeviceObject">
+ <summary>
+ <para>
+ 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.
+ </para>
+ <para>
+ The device name does not contain a trailing "\".
+ </para>
+ </summary>
+ </member>
+ <member name="P:Alphaleonis.Win32.Vss.VssSnapshotProperties.OriginalVolumeName">
+ <summary>The name of the volume that had been shadow copied.</summary>
+ </member>
+ <member name="P:Alphaleonis.Win32.Vss.VssSnapshotProperties.OriginatingMachine">
+ <summary>The name of the machine containing the original volume.</summary>
+ </member>
+ <member name="P:Alphaleonis.Win32.Vss.VssSnapshotProperties.ServiceMachine">
+ <summary>The name of the machine running the Volume Shadow Copy Service that created the shadow copy.</summary>
+ </member>
+ <member name="P:Alphaleonis.Win32.Vss.VssSnapshotProperties.ExposedName">
+ <summary>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. </summary>
+ </member>
+ <member name="P:Alphaleonis.Win32.Vss.VssSnapshotProperties.ExposedPath">
+ <summary>The portion of the shadow copy of a volume made available if it is exposed as a share.</summary>
+ </member>
+ <member name="P:Alphaleonis.Win32.Vss.VssSnapshotProperties.ProviderId">
+ <summary>A <see cref="T:System.Guid"/> uniquely identifying the provider used to create this shadow copy.</summary>
+ </member>
+ <member name="P:Alphaleonis.Win32.Vss.VssSnapshotProperties.SnapshotAttributes">
+ <summary>
+ The attributes of the shadow copy expressed as a bit mask (or bitwise OR) of members of
+ the <see cref="T:Alphaleonis.Win32.Vss.VssVolumeSnapshotAttributes"/> enumeration.
+ </summary>
+ </member>
+ <member name="P:Alphaleonis.Win32.Vss.VssSnapshotProperties.CreationTimestamp">
+ <summary>Time stamp indicating when the shadow copy was created. The exact time is determined by the provider.</summary>
+ </member>
+ <member name="P:Alphaleonis.Win32.Vss.VssSnapshotProperties.Status">
+ <summary>Current shadow copy creation status. See <see cref="T:Alphaleonis.Win32.Vss.VssSnapshotState"/>.</summary>
+ </member>
+ <member name="T:Alphaleonis.Win32.Vss.IVssExamineWriterMetadata">
+ <summary>
+ 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.
+ </summary>
+ <remarks>
+ A <see cref="T:Alphaleonis.Win32.Vss.IVssExamineWriterMetadata"/> interface to a live writer's metadata is obtained by a call to
+ <see cref="P:Alphaleonis.Win32.Vss.IVssBackupComponents.WriterMetadata"/>.
+ </remarks>
+ </member>
+ <member name="M:Alphaleonis.Win32.Vss.IVssExamineWriterMetadata.LoadFromXml(System.String)">
+ <summary>
+ The <see cref="M:Alphaleonis.Win32.Vss.IVssExamineWriterMetadata.LoadFromXml(System.String)"/> method loads an XML document that contains a writer's metadata document into a
+ <see cref="T:Alphaleonis.Win32.Vss.IVssExamineWriterMetadata"/> instance.
+ </summary>
+ <param name="xml">String that contains an XML document that represents a writer's metadata document.</param>
+ <returns><see langword="true"/> if the XML document was successfully loaded, or <see langword="false"/> if the XML document could not
+ be loaded.</returns>
+ </member>
+ <member name="M:Alphaleonis.Win32.Vss.IVssExamineWriterMetadata.SaveAsXml">
+ <summary>
+ The <see cref="M:Alphaleonis.Win32.Vss.IVssExamineWriterMetadata.SaveAsXml"/> 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.
+ </summary>
+ <returns>The Writer Metadata Document that contains a writer's state information.</returns>
+ </member>
+ <member name="P:Alphaleonis.Win32.Vss.IVssExamineWriterMetadata.BackupSchema">
+ <summary>
+ The <see cref="P:Alphaleonis.Win32.Vss.IVssExamineWriterMetadata.BackupSchema"/> is examined by a requester to determine from the
+ Writer Metadata Document the types of backup operations that a given writer can participate in.
+ </summary>
+ </member>
+ <member name="P:Alphaleonis.Win32.Vss.IVssExamineWriterMetadata.AlternateLocationMappings">
+ <summary>
+ The alternate location mappings of the file sets.
+ </summary>
+ <value>A read-only list containing the alternate location mappings of the file sets.</value>
+ </member>
+ <member name="P:Alphaleonis.Win32.Vss.IVssExamineWriterMetadata.RestoreMethod">
+ <summary>
+ Information about how a writer wants its data to be restored.
+ </summary>
+ </member>
+ <member name="P:Alphaleonis.Win32.Vss.IVssExamineWriterMetadata.Components">
+ <summary>
+ Obtains the Writer Metadata Documents the components supported by this writer.
+ </summary>
+ <value>the Writer Metadata Documents the components supported by this writer.</value>
+ </member>
+ <member name="P:Alphaleonis.Win32.Vss.IVssExamineWriterMetadata.ExcludeFiles">
+ <summary>Information about files that have been explicitly excluded from backup.</summary>
+ <value>a read-only list containing information about files that have been explicitly excluded from backup.</value>
+ </member>
+ <member name="P:Alphaleonis.Win32.Vss.IVssExamineWriterMetadata.InstanceId">
+ <summary>
+ The instance identifier of the writer
+ </summary>
+ <value>The instance id.</value>
+ </member>
+ <member name="P:Alphaleonis.Win32.Vss.IVssExamineWriterMetadata.WriterId">
+ <summary>The class ID of the writer</summary>
+ </member>
+ <member name="P:Alphaleonis.Win32.Vss.IVssExamineWriterMetadata.WriterName">
+ <summary>A string specifying the name of the writer</summary>
+ </member>
+ <member name="P:Alphaleonis.Win32.Vss.IVssExamineWriterMetadata.Usage">
+ <summary>A <see cref="T:Alphaleonis.Win32.Vss.VssUsageType"/> enumeration value indicating how the data managed by the writer is used on the host system.</summary>
+ </member>
+ <member name="P:Alphaleonis.Win32.Vss.IVssExamineWriterMetadata.Source">
+ <summary>A <see cref="T:Alphaleonis.Win32.Vss.VssSourceType"/> enumeration value indicating the type of data managed by the writer.</summary>
+ </member>
+ <member name="P:Alphaleonis.Win32.Vss.IVssExamineWriterMetadata.InstanceName">
+ <summary>
+ Gets the writer instance name.
+ </summary>
+ <remarks>
+ <note>
+ <para>
+ <b>Windows XP and Windows 2003:</b> This property is not supported until Windows 2003 SP1 and will always return
+ <see langword="null"/> on those systems.
+ </para>
+ </note>
+ </remarks>
+ <value>A string specifying the writer instance name.</value>
+ </member>
+ <member name="P:Alphaleonis.Win32.Vss.IVssExamineWriterMetadata.Version">
+ <summary>
+ Gets the version information for a writer application.
+ </summary>
+ <value>The version information for a writer application.</value>
+ <remarks>
+ <para>
+ Only the <see cref="P:System.Version.Major"/> and <see cref="P:System.Version.Minor"/> properties of the <see cref="P:Alphaleonis.Win32.Vss.IVssExamineWriterMetadata.Version"/> instance
+ are used by VSS.
+ </para>
+ <para>
+ <note><b>Windows XP and Windows 2003:</b> This property is not supported until Windows Vista, and will always return version 0.0.0.0</note>
+ </para>
+ </remarks>
+ </member>
+ <member name="P:Alphaleonis.Win32.Vss.IVssExamineWriterMetadata.ExcludeFromSnapshotFiles">
+ <summary>
+ Obtains information about file sets that have been explicitly excluded from a given shadow copy.
+ </summary>
+ <remarks>
+ <para>
+ The <see cref="P:Alphaleonis.Win32.Vss.IVssExamineWriterMetadata.ExcludeFromSnapshotFiles"/> 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.
+ </para>
+ <para>
+ <note>
+ <para><b>Windows XP and Windows 2003:</b> This property is not supported until Windows Vista and will always return an empty list.</para>
+ </note>
+ </para>
+ </remarks>
+ <value>The exclude from snapshot files.</value>
+ </member>
+ <member name="T:Alphaleonis.Win32.Vss.VssSnapshotSetInProgressException">
+ <summary>
+ 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.
+ </summary>
+ </member>
+ <member name="M:Alphaleonis.Win32.Vss.VssSnapshotSetInProgressException.#ctor">
+ <summary>
+ Initializes a new instance of the <see cref="T:Alphaleonis.Win32.Vss.VssSnapshotSetInProgressException"/>
+ class with a system-supplied message describing the error.
+ </summary>
+ </member>
+ <member name="M:Alphaleonis.Win32.Vss.VssSnapshotSetInProgressException.#ctor(System.String)">
+ <summary>
+ Initializes a new instance of the <see cref="T:Alphaleonis.Win32.Vss.VssSnapshotSetInProgressException"/> class with a specified error message.
+ </summary>
+ <param name="message">The message that describes the error</param>
+ </member>
+ <member name="M:Alphaleonis.Win32.Vss.VssSnapshotSetInProgressException.#ctor(System.String,System.Exception)">
+ <summary>
+ Initializes a new instance of the <see cref="T:Alphaleonis.Win32.Vss.VssSnapshotSetInProgressException"/> class with
+ a specified error message and a reference to the inner exception that is the cause of this exception.
+ </summary>
+ <param name="message">The message that describes the error</param>
+ <param name="innerException">The exception that is the cause of the current exception.</param>
+ </member>
+ <member name="M:Alphaleonis.Win32.Vss.VssSnapshotSetInProgressException.#ctor(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">
+ <summary>
+ Initializes a new instance of the <see cref="T:Alphaleonis.Win32.Vss.VssSnapshotSetInProgressException"/> class.
+ </summary>
+ <param name="info">The <see cref="T:System.Runtime.Serialization.SerializationInfo"/> that holds the serialized object data about the exception being thrown.</param>
+ <param name="context">The <see cref="T:System.Runtime.Serialization.StreamingContext"/> that contains contextual information about the source or destination.</param>
+ <exception cref="T:System.ArgumentNullException">The <paramref name="info"/> parameter is null. </exception>
+ <exception cref="T:System.Runtime.Serialization.SerializationException">The class name is null or <see cref="P:System.Exception.HResult"/> is zero (0). </exception>
+ </member>
+ <member name="T:Alphaleonis.Win32.Vss.VssRestoreMethod">
+ <summary>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.</summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Vss.VssRestoreMethod.Undefined">
+ <summary>
+ <para>No restore method is defined.</para>
+ <para>This indicates an error on the part of the writer.</para>
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Vss.VssRestoreMethod.RestoreIfNotThere">
+ <summary>
+ 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.
+ </summary>
+ <remarks>
+ <para>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.</para>
+ <para>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.</para>
+ </remarks>
+ </member>
+ <member name="F:Alphaleonis.Win32.Vss.VssRestoreMethod.RestoreIfCanReplace">
+ <summary>
+ 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.
+ </summary>
+ <remarks>
+ <para>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.</para>
+ <para>If a file's alternate location mapping is defined, files will be written to the alternate location.</para>
+ </remarks>
+ </member>
+ <member name="F:Alphaleonis.Win32.Vss.VssRestoreMethod.StopRestoreStart">
+ <summary>
+ 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.
+ </summary>
+ <remarks>
+ The service to be stopped is specified by an argument to <c>IVssCreateWriterMetadata.SetRestoreMethod</c>.
+ </remarks>
+ </member>
+ <member name="F:Alphaleonis.Win32.Vss.VssRestoreMethod.RestoreToAlternateLocation">
+ <summary>
+ 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.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Vss.VssRestoreMethod.RestoreAtReboot">
+ <summary>
+ A requester will restore the files of a selected component or component set following a reboot of the system.
+ <para>
+ Files to be restored should be copied to a temporary location, and the requester should use <c>File.Move</c> with the <c>DelayUntilReboot</c> flag
+ to complete the restoration of these files to their proper location following reboot. (Using AlphaFS for file operations).
+ </para>
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Vss.VssRestoreMethod.RestoreAtRebootIfCannotReplace">
+ <summary>
+ If possible, a requester will restore the files of a selected component or component set to their correct location immediately.
+ </summary>
+ <remarks>
+ <para>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.</para>
+ <para>In this case, files to be restored should be copied to a temporary location, and the requester should use <c>File.Move</c> with the <c>DelayUntilReboot</c> flag
+ to complete the restoration of these files to their proper location following reboot. (Using AlphaFS for file operations). </para>
+ <note><b>Windows XP:</b> This value is not supported until Windows Server 2003</note>
+ </remarks>
+ </member>
+ <member name="F:Alphaleonis.Win32.Vss.VssRestoreMethod.Custom">
+ <summary>
+ This value indicates that a custom restore method will be used to restore the files managed by the selected component or component set.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Vss.VssRestoreMethod.RestoreStopStart">
+ <summary>
+ The requester should perform the restore operation as follows:
+ <list type="number">
+ <item><description>Send the PreRestore event and wait for all writers to process it.</description></item>
+ <item><description>Restore the files to their original locations.</description></item>
+ <item><description>Send the PostRestore event and wait for all writers to process it.</description></item>
+ <item><description>Stop the service.</description></item>
+ <item><description>Restart the service.</description></item>
+ </list>
+ <para>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 <see cref="P:Alphaleonis.Win32.Vss.IVssExamineWriterMetadata.RestoreMethod"/> property.</para>
+ </summary>
+ </member>
+ <member name="T:Alphaleonis.Win32.Vss.VssProtectionLevel">
+ <summary>
+ Defines the set of volume shadow copy protection levels.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Vss.VssProtectionLevel.OriginalVolume">
+ <summary>
+ 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:
+ <list type="bullet">
+ <item>
+ <description>
+ A write to the original volume occurs.
+ </description>
+ </item>
+ <item>
+ <description>
+ 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.
+ </description>
+ </item>
+ </list>
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Vss.VssProtectionLevel.Snapshot">
+ <summary>
+ 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:
+ <list type="bullet">
+ <item>
+ <description>
+ A write to the original volume occurs.
+ </description>
+ </item>
+ <item>
+ <description>
+ 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.
+ </description>
+ </item>
+ </list>
+ </summary>
+ </member>
+ <member name="T:Alphaleonis.Win32.Vss.VssHardwareOptions">
+ <summary>
+ Defines shadow copy LUN flags.
+ </summary>
+ <remarks>
+ Only supported on Windows Server 2008.
+ </remarks>
+ </member>
+ <member name="F:Alphaleonis.Win32.Vss.VssHardwareOptions.MaskLuns">
+ <summary>
+ The shadow copy LUN will be masked from the host.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Vss.VssHardwareOptions.MakeReadWrite">
+ <summary>
+ The shadow copy LUN will be exposed to the host as a read-write volume.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Vss.VssHardwareOptions.RevertIdentityAll">
+ <summary>
+ 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.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Vss.VssHardwareOptions.RevertIdentityNone">
+ <summary>
+ None of the disk identifiers of the shadow copy LUNs will be reverted.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Vss.VssHardwareOptions.OnLunStateChangeNotifyReadWrite">
+ <summary>
+ 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 <c>IVssHardwareSnapshotProviderEx::OnLunStateChange</c> method.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Vss.VssHardwareOptions.OnLunStateChangeNotifyLunPreRecovery">
+ <summary>
+ 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 <c>IVssHardwareSnapshotProviderEx::OnLunStateChange method</c>.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Vss.VssHardwareOptions.OnLunStateChangeNotifyLunPostRecovery">
+ <summary>
+ 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 <c>IVssHardwareSnapshotProviderEx::OnLunStateChange method</c>.
+ </summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Vss.VssHardwareOptions.OnLunStateChangeDoMaskLuns">
+ <summary>
+ The provider must mask shadow copy LUNs from this computer.
+ For more information, see the <c>IVssHardwareSnapshotProviderEx::OnLunStateChange method</c>.
+ </summary>
+ </member>
+ <member name="T:Alphaleonis.Win32.Vss.VssObjectAlreadyExistsException">
+ <summary>
+ Exception thrown to indicate that the requested object was a duplicate.
+ </summary>
+ </member>
+ <member name="M:Alphaleonis.Win32.Vss.VssObjectAlreadyExistsException.#ctor">
+ <summary>
+ Initializes a new instance of the <see cref="T:Alphaleonis.Win32.Vss.VssObjectAlreadyExistsException"/>
+ class with a system-supplied message describing the error.
+ </summary>
+ </member>
+ <member name="M:Alphaleonis.Win32.Vss.VssObjectAlreadyExistsException.#ctor(System.String)">
+ <summary>
+ Initializes a new instance of the <see cref="T:Alphaleonis.Win32.Vss.VssObjectAlreadyExistsException"/> class with a specified error message.
+ </summary>
+ <param name="message">The message that describes the error</param>
+ </member>
+ <member name="M:Alphaleonis.Win32.Vss.VssObjectAlreadyExistsException.#ctor(System.String,System.Exception)">
+ <summary>
+ Initializes a new instance of the <see cref="T:Alphaleonis.Win32.Vss.VssObjectAlreadyExistsException"/> class with
+ a specified error message and a reference to the inner exception that is the cause of this exception.
+ </summary>
+ <param name="message">The message that describes the error</param>
+ <param name="innerException">The exception that is the cause of the current exception.</param>
+ </member>
+ <member name="M:Alphaleonis.Win32.Vss.VssObjectAlreadyExistsException.#ctor(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">
+ <summary>
+ Initializes a new instance of the <see cref="T:Alphaleonis.Win32.Vss.VssObjectAlreadyExistsException"/> class.
+ </summary>
+ <param name="info">The <see cref="T:System.Runtime.Serialization.SerializationInfo"/> that holds the serialized object data about the exception being thrown.</param>
+ <param name="context">The <see cref="T:System.Runtime.Serialization.StreamingContext"/> that contains contextual information about the source or destination.</param>
+ <exception cref="T:System.ArgumentNullException">The <paramref name="info"/> parameter is null. </exception>
+ <exception cref="T:System.Runtime.Serialization.SerializationException">The class name is null or <see cref="P:System.Exception.HResult"/> is zero (0). </exception>
+ </member>
+ <member name="T:Alphaleonis.Win32.Vss.VssInsufficientStorageException">
+ <summary>
+ Exception thrown to indicate that the system or provider has insufficient storage space.
+ </summary>
+ <remarks>
+ If possible delete any old or unnecessary persistent shadow copies and try again.
+ </remarks>
+ </member>
+ <member name="M:Alphaleonis.Win32.Vss.VssInsufficientStorageException.#ctor">
+ <summary>
+ Initializes a new instance of the <see cref="T:Alphaleonis.Win32.Vss.VssInsufficientStorageException"/>
+ class with a system-supplied message describing the error.
+ </summary>
+ </member>
+ <member name="M:Alphaleonis.Win32.Vss.VssInsufficientStorageException.#ctor(System.String)">
+ <summary>
+ Initializes a new instance of the <see cref="T:Alphaleonis.Win32.Vss.VssInsufficientStorageException"/> class with a specified error message.
+ </summary>
+ <param name="message">The message that describes the error</param>
+ </member>
+ <member name="M:Alphaleonis.Win32.Vss.VssInsufficientStorageException.#ctor(System.String,System.Exception)">
+ <summary>
+ Initializes a new instance of the <see cref="T:Alphaleonis.Win32.Vss.VssInsufficientStorageException"/> class with
+ a specified error message and a reference to the inner exception that is the cause of this exception.
+ </summary>
+ <param name="message">The message that describes the error</param>
+ <param name="innerException">The exception that is the cause of the current exception.</param>
+ </member>
+ <member name="M:Alphaleonis.Win32.Vss.VssInsufficientStorageException.#ctor(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">
+ <summary>
+ Initializes a new instance of the <see cref="T:Alphaleonis.Win32.Vss.VssInsufficientStorageException"/> class.
+ </summary>
+ <param name="info">The <see cref="T:System.Runtime.Serialization.SerializationInfo"/> that holds the serialized object data about the exception being thrown.</param>
+ <param name="context">The <see cref="T:System.Runtime.Serialization.StreamingContext"/> that contains contextual information about the source or destination.</param>
+ <exception cref="T:System.ArgumentNullException">The <paramref name="info"/> parameter is null. </exception>
+ <exception cref="T:System.Runtime.Serialization.SerializationException">The class name is null or <see cref="P:System.Exception.HResult"/> is zero (0). </exception>
+ </member>
+ <member name="T:Alphaleonis.Win32.Vss.VssUnsupportedContextException">
+ <summary>
+ Exception thrown to indicate that the operation is not supported under the current context.
+ </summary>
+ </member>
+ <member name="M:Alphaleonis.Win32.Vss.VssUnsupportedContextException.#ctor">
+ <summary>
+ Initializes a new instance of the <see cref="T:Alphaleonis.Win32.Vss.VssUnsupportedContextException"/>
+ class with a system-supplied message describing the error.
+ </summary>
+ </member>
+ <member name="M:Alphaleonis.Win32.Vss.VssUnsupportedContextException.#ctor(System.String)">
+ <summary>
+ Initializes a new instance of the <see cref="T:Alphaleonis.Win32.Vss.VssUnsupportedContextException"/> class with a specified error message.
+ </summary>
+ <param name="message">The message that describes the error</param>
+ </member>
+ <member name="M:Alphaleonis.Win32.Vss.VssUnsupportedContextException.#ctor(System.String,System.Exception)">
+ <summary>
+ Initializes a new instance of the <see cref="T:Alphaleonis.Win32.Vss.VssUnsupportedContextException"/> class with
+ a specified error message and a reference to the inner exception that is the cause of this exception.
+ </summary>
+ <param name="message">The message that describes the error</param>
+ <param name="innerException">The exception that is the cause of the current exception.</param>
+ </member>
+ <member name="M:Alphaleonis.Win32.Vss.VssUnsupportedContextException.#ctor(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">
+ <summary>
+ Initializes a new instance of the <see cref="T:Alphaleonis.Win32.Vss.VssUnsupportedContextException"/> class.
+ </summary>
+ <param name="info">The <see cref="T:System.Runtime.Serialization.SerializationInfo"/> that holds the serialized object data about the exception being thrown.</param>
+ <param name="context">The <see cref="T:System.Runtime.Serialization.StreamingContext"/> that contains contextual information about the source or destination.</param>
+ <exception cref="T:System.ArgumentNullException">The <paramref name="info"/> parameter is null. </exception>
+ <exception cref="T:System.Runtime.Serialization.SerializationException">The class name is null or <see cref="P:System.Exception.HResult"/> is zero (0). </exception>
+ </member>
+ <member name="T:Alphaleonis.Win32.Vss.VssSnapshotState">
+ <summary>The <see cref="T:Alphaleonis.Win32.Vss.VssSnapshotState"/> enumeration is returned by a provider to specify the state of a given shadow copy operation.</summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Vss.VssSnapshotState.Unknown">
+ <summary><para>Reserved for system use.</para><para>Unknown shadow copy state.</para></summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Vss.VssSnapshotState.Preparing">
+ <summary><para>Reserved for system use.</para><para>Shadow copy is being prepared.</para></summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Vss.VssSnapshotState.ProcessingPrepare">
+ <summary><para>Reserved for system use.</para><para>Processing of the shadow copy preparation is in progress.</para></summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Vss.VssSnapshotState.Prepared">
+ <summary><para>Reserved for system use.</para><para>Shadow copy has been prepared.</para></summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Vss.VssSnapshotState.ProcessingPreCommit">
+ <summary><para>Reserved for system use.</para><para>Processing of the shadow copy precommit is in process.</para></summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Vss.VssSnapshotState.PreComitted">
+ <summary><para>Reserved for system use.</para><para>Shadow copy is precommitted.</para></summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Vss.VssSnapshotState.ProcessingCommit">
+ <summary><para>Reserved for system use.</para><para>Processing of the shadow copy commit is in process.</para></summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Vss.VssSnapshotState.Committed">
+ <summary><para>Reserved for system use.</para><para>Shadow copy is committed.</para></summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Vss.VssSnapshotState.ProcessingPostCommit">
+ <summary><para>Reserved for system use.</para><para>Processing of the shadow copy postcommit is in process.</para></summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Vss.VssSnapshotState.ProcessingPreFinalCommit">
+ <summary><para>Reserved for system use.</para><para>Processing of the shadow copy file commit operation is underway.</para></summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Vss.VssSnapshotState.PreFinalCommitted">
+ <summary><para>Reserved for system use.</para><para>Processing of the shadow copy file commit operation is done.</para></summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Vss.VssSnapshotState.ProcessingPostFinalCommit">
+ <summary><para>Reserved for system use.</para><para>Processing of the shadow copy following the final commit and prior to shadow copy create is underway.</para></summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Vss.VssSnapshotState.Created">
+ <summary><para>Shadow copy is created.</para></summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Vss.VssSnapshotState.Aborted">
+ <summary><para>Reserved for system use.</para><para>Shadow copy creation is aborted.</para></summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Vss.VssSnapshotState.Deleted">
+ <summary><para>Reserved for system use.</para><para>Shadow copy has been deleted.</para></summary>
+ </member>
+ <member name="F:Alphaleonis.Win32.Vss.VssSnapshotState.PostCommitted">
+ <summary><para>Reserved value.</para></summary>
+ </member>
+ <member name="T:Alphaleonis.Win32.Vss.VssWMFileDescription">
+ <summary>
+ The <see cref="T:Alphaleonis.Win32.Vss.VssWMFileDescription"/> 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).
+ </summary>
+ <remarks>
+ The following methods return a <see cref="T:Alphaleonis.Win32.Vss.VssWMFileDescription"/> instance:
+ <list type="bullet">
+ <item><description><see cref="P:Alphaleonis.Win32.Vss.IVssComponent.AlternateLocationMappings"/></description></item>
+ <item><description><see cref="P:Alphaleonis.Win32.Vss.IVssComponent.NewTargets"/></description></item>
+ <item><description><see cref="P:Alphaleonis.Win32.Vss.IVssExamineWriterMetadata.ExcludeFiles"/></description></item>
+ <item><description><see cref="P:Alphaleonis.Win32.Vss.IVssExamineWriterMetadata.AlternateLocationMappings"/></description></item>
+ <item><description><see cref="P:Alphaleonis.Win32.Vss.IVssWMComponent.Files"/></description></item>
+ <item><description><see cref="P:Alphaleonis.Win32.Vss.IVssWMComponent.DatabaseFiles"/></description></item>
+ <item><description><see cref="P:Alphaleonis.Win32.Vss.IVssWMComponent.DatabaseLogFiles"/></description></item>
+ </list>
+ </remarks>
+ </member>
+ <member name="M:Alphaleonis.Win32.Vss.VssWMFileDescription.#ctor(System.String,Alphaleonis.Win32.Vss.VssFileSpecificationBackupType,System.String,System.String,System.Boolean)">
+ <summary>
+ Initializes a new instance of the <see cref="T:Alphaleonis.Win32.Vss.VssWMFileDescription"/> class.
+ </summary>
+ <param name="alternateLocation">The alternate location.</param>
+ <param name="backupTypeMask">The backup type mask.</param>
+ <param name="fileSpecification">The file specification.</param>
+ <param name="path">The path.</param>
+ <param name="isRecursive">if set to <c>true</c> this file description is recursive.</param>
+ </member>
+ <member name="P:Alphaleonis.Win32.Vss.VssWMFileDescription.AlternateLocation">
+ <summary>
+ Obtains the alternate backup location of the component files.
+ </summary>
+ </member>
+ <member name="P:Alphaleonis.Win32.Vss.VssWMFileDescription.BackupTypeMask">
+ <summary>
+ Obtains the file backup specification for a file or set of files.
+ </summary>
+ <remarks><note><b>Windows XP:</b> This value is not supported in Windows XP and will always return <see cref="F:Alphaleonis.Win32.Vss.VssFileSpecificationBackupType.Unknown"/></note></remarks>
+ </member>
+ <member name="P:Alphaleonis.Win32.Vss.VssWMFileDescription.FileSpecification">
+ <summary>
+ Obtains the file specification for the list of files provided.
+ </summary>
+ </member>
+ <member name="P:Alphaleonis.Win32.Vss.VssWMFileDescription.Path">
+ <summary>
+ Obtains the fully qualified directory path for the list of files provided.
+ </summary>
+ </member>
+ <member name="P:Alphaleonis.Win32.Vss.VssWMFileDescription.IsRecursive">
+ <summary>
+ Determines whether only files in the root directory or files in the entire directory hierarchy are considered for backup.
+ </summary>
+ <remarks>VSS API reference: <c>IVssWMFiledesc::GetRecursive()</c></remarks>
+ </member>
+ </members>
+</doc>
diff --git a/thirdparty/alphavss/Homepage.txt b/thirdparty/alphavss/Homepage.txt
new file mode 100644
index 000000000..7db6cb77a
--- /dev/null
+++ b/thirdparty/alphavss/Homepage.txt
@@ -0,0 +1 @@
+http://alphavss.codeplex.com \ No newline at end of file
diff --git a/thirdparty/alphavss/License.txt b/thirdparty/alphavss/License.txt
new file mode 100644
index 000000000..e9c7095ac
--- /dev/null
+++ b/thirdparty/alphavss/License.txt
@@ -0,0 +1,8 @@
+License: The MIT License (MIT)
+Copyright (c) 2008 Peter Palotas
+
+Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. \ No newline at end of file
diff --git a/thirdparty/alphavss/platform/AlphaVSS.Win2003.x64.dll b/thirdparty/alphavss/platform/AlphaVSS.Win2003.x64.dll
new file mode 100644
index 000000000..53e6f596c
--- /dev/null
+++ b/thirdparty/alphavss/platform/AlphaVSS.Win2003.x64.dll
Binary files differ
diff --git a/thirdparty/alphavss/platform/AlphaVSS.Win2003.x86.dll b/thirdparty/alphavss/platform/AlphaVSS.Win2003.x86.dll
new file mode 100644
index 000000000..f212d2d71
--- /dev/null
+++ b/thirdparty/alphavss/platform/AlphaVSS.Win2003.x86.dll
Binary files differ
diff --git a/thirdparty/alphavss/platform/AlphaVSS.Win2008.x64.dll b/thirdparty/alphavss/platform/AlphaVSS.Win2008.x64.dll
new file mode 100644
index 000000000..1c0a8e56e
--- /dev/null
+++ b/thirdparty/alphavss/platform/AlphaVSS.Win2008.x64.dll
Binary files differ
diff --git a/thirdparty/alphavss/platform/AlphaVSS.Win2008.x86.dll b/thirdparty/alphavss/platform/AlphaVSS.Win2008.x86.dll
new file mode 100644
index 000000000..155f88fd2
--- /dev/null
+++ b/thirdparty/alphavss/platform/AlphaVSS.Win2008.x86.dll
Binary files differ
diff --git a/thirdparty/alphavss/platform/AlphaVSS.WinXP.x64.dll b/thirdparty/alphavss/platform/AlphaVSS.WinXP.x64.dll
new file mode 100644
index 000000000..81b7aca47
--- /dev/null
+++ b/thirdparty/alphavss/platform/AlphaVSS.WinXP.x64.dll
Binary files differ
diff --git a/thirdparty/alphavss/platform/AlphaVSS.WinXP.x86.dll b/thirdparty/alphavss/platform/AlphaVSS.WinXP.x86.dll
new file mode 100644
index 000000000..f2c064816
--- /dev/null
+++ b/thirdparty/alphavss/platform/AlphaVSS.WinXP.x86.dll
Binary files differ