Exemplo n.º 1
0
        public UnpackArchive(UnpackParameters parameters)
        {
            if (parameters == null)
            {
                throw new ArgumentNullException("parameters");
            }

            _parameters = parameters;
        }
Exemplo n.º 2
0
        public static void RestoreToPointedFolderHelper(ImageReader openedReader, MetaRecord record, string pointedFolder, bool imageDataIsPasswordProtected, string password)
        {
            try
            {
                string tempFile = Path.GetTempFileName();

                UnpackParameters unpackParameters;
                if (imageDataIsPasswordProtected)
                {
                    unpackParameters = new UnpackParameters(password, tempFile, pointedFolder);
                }
                else
                {
                    unpackParameters = new UnpackParameters(tempFile, pointedFolder);
                }

                try
                {
                    openedReader.Extract(record, tempFile);

                    UnpackArchive aup = new UnpackArchive(unpackParameters);
                    aup.StartJob();
                }
                finally
                {
                    if (imageDataIsPasswordProtected)
                    {
                        BackupProcess.OverwriteFileWithZerosWithoutLogging(tempFile);
                    }

                    File.Delete(tempFile);
                }
            }
            catch (Exception exc)
            {
                MessageBox.Show(exc.Message, string.Empty, MessageBoxButtons.OK, MessageBoxIcon.Error, MessageBoxDefaultButton.Button1, 0);
            }
        }