Click or drag to resize
FileInfoCopyTo Method (String, CopyOptions, Boolean, CopyMoveProgressRoutine, Object)
[AlphaFS] Copies an existing file to a new file, allowing the overwriting of an existing file, CopyOptions can be specified.

and the possibility of notifying the application of its progress through a callback function.

Namespace: Alphaleonis.Win32.Filesystem
Assembly: AlphaFS (in AlphaFS.dll) Version: 2.0
Syntax
public CopyMoveResult CopyTo(
	string destinationPath,
	CopyOptions copyOptions,
	bool preserveDates,
	CopyMoveProgressRoutine progressHandler,
	Object userProgressData
)

Parameters

destinationPath
Type: SystemString
The name of the new file to copy to.
copyOptions
Type: Alphaleonis.Win32.FilesystemCopyOptions
CopyOptions that specify how the file is to be copied.
preserveDates
Type: SystemBoolean
if original Timestamps must be preserved, otherwise.
progressHandler
Type: Alphaleonis.Win32.FilesystemCopyMoveProgressRoutine
A callback function that is called each time another portion of the file has been copied. This parameter can be .
userProgressData
Type: SystemObject
The argument to be passed to the callback function. This parameter can be .

Return Value

Type: CopyMoveResult

Returns a CopyMoveResult class with the status of the Copy action.

Returns a new file, or an overwrite of an existing file if copyOptions is not FailIfExists.

If the file exists and copyOptions contains FailIfExists, an IOException is thrown.

Exceptions
ExceptionCondition
ArgumentExceptionPassed when the path parameter contains invalid characters, is empty, or contains only white spaces.
ArgumentNullExceptionPassed when path is .
DirectoryNotFoundExceptionPassed when the directory was not found.
FileNotFoundExceptionPassed if the file was not found.
IOExceptionPassed when an I/O error occurs.
NotSupportedException
UnauthorizedAccessException
Remarks

Option NoBuffering is recommended for very large file transfers.

Use this method to allow or prevent overwriting of an existing file.

Whenever possible, avoid using short file names (such as XXXXXX~1.XXX) with this method.

If two files have equivalent short file names then this method may fail and raise an exception and/or result in undesirable behavior.

See Also