Beispiel #1
0
        private void ExecuteOperations(DirectoryInfo sourceDirectory, DirectoryInfo destDirectory, DifferenceCalculationResults results)
        {
            IEnumerable <FileOperationItem> operations = results
                                                         .Where(x => x.OperationError.ErrorLevel <= OperationErrorLevel.Information)
                                                         .Select(x => x.FileOperationItem);

#if DEBUG
            List <FileOperationItem> operationsList = operations.ToList();
            operations = operationsList;
#endif
            if (!operations.Any())
            {
                MessageBox.Show(this, "No differences were detected, No action is required.", "", MessageBoxButtons.OK, MessageBoxIcon.Information);
                return;
            }

            FileOperation.FileOperation fileOperation = null;
            try
            {
                fileOperation = new FileOperation.FileOperation(Handle)
                {
                    OperationsFlags = FileOperationFlags.NoConfirmDirectoryCreation |
                                      FileOperationFlags.NoConfirmation
                };
                foreach (FileOperationItem operation in operations)
                {
                    fileOperation.AddOperation(operation);
                }

                if (MessageBox.Show(this, "Are you sure you want to start the operations?", "Confirmation", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.No)
                {
                    return;
                }

                fileOperation.PerformOperations();

                MessageBox.Show(this, "Done.", "", MessageBoxButtons.OK, MessageBoxIcon.Information);
                //this.Btn_Ok.Enabled = false;
            }
            finally
            {
                fileOperation?.Dispose();
            }
        }
Beispiel #2
0
 private void Form1_Load(object sender, EventArgs e)
 {
     using (var fileOperation = new FileOperation.FileOperation(this.Handle))
     {
         fileOperation.AddOperation(new CopyFileOperation(
                                        @"D:\Program Files (x86)\3DO\Heroes 3 Complete\H3MAPED.HLP",
                                        @"D:\Desktop"
                                        ));
         fileOperation.AddOperation(new DeleteFileOperation(
                                        @"D:\Desktop\a.txt"
                                        ));
         fileOperation.AddOperation(new CopyFileOperation(
                                        @"D:\Program Files (x86)\3DO\Heroes 3 Complete\h3ccmped.cnt",
                                        @"D:\\Desktop"
                                        ));
         fileOperation.AddOperation(new CopyFileOperation(
                                        @"D:\Program Files (x86)\3DO\Heroes 3 Complete\H3AB_Manual.pdf",
                                        @"D:\Desktop"
                                        ));
         fileOperation.PerformOperations();
     }
 }
Beispiel #3
0
 internal override void AddToFileOperationQueue(FileOperation fileOperation)
 {
     fileOperation.AddRenameFileOperation(this);
 }
Beispiel #4
0
 public FileOperationProgressSink(FileOperation fileOperation)
 {
     this.fileOperation = fileOperation;
 }