Exemplo n.º 1
0
        private void SaveFileSystemImageToFile(FileSystemDrive fileSystemDrive, string path, string password)
        {
            var storageManagerProgress = new Progress <StorageManagerProgress>();

            LoadAndSaveProgressBar.Visible          = true;
            storageManagerProgress.ProgressChanged += (s, e) =>
            {
                LoadAndSaveProgressBar.Value      = e.ProgressPercentage;
                LoadAndSaveProgressInfoLabel.Text = e.Text;
            };

            saveAsToolStripMenuItem.Enabled = false;
            saveToolStripMenuItem.Enabled   = false;

            Task.Run(async() =>
            {
                var settings       = new StorageManagerSettings(true, Environment.ProcessorCount, true, password);
                var storageManager = new StorageManager(settings);

                bool success = await storageManager.SerializeObjectToFileAsync(fileSystemDrive, path, storageManagerProgress);

                OutcomeEventArgs outcomeEventArgs   = success ? OutcomeEventArgs.Success : OutcomeEventArgs.Failure;
                SaveFileEventHandler onSaveComplete = HandleSaveFileComplete;

                BeginInvoke(onSaveComplete, this, outcomeEventArgs);
            });
        }
Exemplo n.º 2
0
 public void RemoveOnSaveFile(SaveFileEventHandler handler)
 {
     OnSaveFileHandler -= handler;
 }
Exemplo n.º 3
0
 public void AddOnSaveFile(SaveFileEventHandler handler)
 {
     OnSaveFileHandler += handler;
 }