/// <summary> /// /// </summary> /// <param name="callbackSink"></param> /// <param name="owner"></param> /// <param name="isRecycle"></param> public IIFileOperation(FileOperationProgressSink callbackSink, IntPtr owner, Boolean isRecycle) { this._CallbackSink = callbackSink; this._FileOperation = (IFileOperation)Activator.CreateInstance(_FileOperationType); var flags = isRecycle ? FileOperationFlags.FOF_NOCONFIRMMKDIR | FileOperationFlags.FOF_ALLOWUNDO : FileOperationFlags.FOF_NOCONFIRMMKDIR; this._FileOperation.SetOperationFlags(flags); if (this._CallbackSink != null) { this._SinkCookie = this._FileOperation.Advise(_CallbackSink); } if (owner != IntPtr.Zero) { this._FileOperation.SetOwnerWindow((uint)owner); } }
public IIFileOperation(FileOperationProgressSink callbackSink, IntPtr owner, Boolean isRecycle, Boolean isCopyInSameFolder) { this._CallbackSink = callbackSink; this._IsCopyInSameFolder = isCopyInSameFolder; _FileOperation = (IFileOperation)Activator.CreateInstance(_FileOperationType); if (!isRecycle) { this._FileOperation.SetOperationFlags(FileOperationFlags.FOF_NOCONFIRMMKDIR); } if (_CallbackSink != null) { _SinkCookie = _FileOperation.Advise(_CallbackSink); } if (owner != IntPtr.Zero) { _FileOperation.SetOwnerWindow((uint)owner); } }
/// <summary> /// /// </summary> /// <param name="callbackSink"></param> /// <param name="isRecycle"></param> public IIFileOperation(FileOperationProgressSink callbackSink, Boolean isRecycle) : this(callbackSink, IntPtr.Zero, isRecycle) { }