public UnpackArchive(UnpackParameters parameters) { if (parameters == null) { throw new ArgumentNullException("parameters"); } _parameters = parameters; }
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); } }