DirectoryCopy Method (KernelTransaction, String, String, CopyOptions, CopyMoveProgressRoutine, Object) |
[AlphaFS] Copies a directory and its contents to a new location,
CopyOptions can be specified,
and the possibility of notifying the application of its progress through a callback function.
Namespace: Alphaleonis.Win32.FilesystemAssembly: AlphaFS (in AlphaFS.dll) Version: 2.0
Syntax public static CopyMoveResult Copy(
KernelTransaction transaction,
string sourcePath,
string destinationPath,
CopyOptions copyOptions,
CopyMoveProgressRoutine progressHandler,
Object userProgressData
)
Public Shared Function Copy (
transaction As KernelTransaction,
sourcePath As String,
destinationPath As String,
copyOptions As CopyOptions,
progressHandler As CopyMoveProgressRoutine,
userProgressData As Object
) As CopyMoveResult
public:
static CopyMoveResult^ Copy(
KernelTransaction^ transaction,
String^ sourcePath,
String^ destinationPath,
CopyOptions copyOptions,
CopyMoveProgressRoutine^ progressHandler,
Object^ userProgressData
)
static member Copy :
transaction : KernelTransaction *
sourcePath : string *
destinationPath : string *
copyOptions : CopyOptions *
progressHandler : CopyMoveProgressRoutine *
userProgressData : Object -> CopyMoveResult
Parameters
- transaction
- Type: Alphaleonis.Win32.FilesystemKernelTransaction
The transaction. - sourcePath
- Type: SystemString
The source directory path. - destinationPath
- Type: SystemString
The destination directory path. - copyOptions
- Type: Alphaleonis.Win32.FilesystemCopyOptions
CopyOptions that specify how the directory is to be copied. This parameter can be . - progressHandler
- Type: Alphaleonis.Win32.FilesystemCopyMoveProgressRoutine
A callback function that is called each time another portion of the directory 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:
CopyMoveResultReturns a
CopyMoveResult class with the status of the Copy action.
Exceptions Remarks Option NoBuffering is recommended for very large file transfers.
Whenever possible, avoid using short file names (such as XXXXXX~1.XXX) with this method.
If two directories have equivalent short file names then this method may fail and raise an exception and/or result in undesirable behavior.
See Also