Исключите некоторые папки при сжатии C и диска D с помощью библиотеки C# Ioni c .zip - PullRequest
0 голосов
/ 09 июля 2020

Привет, я новичок ie на C# и пытаюсь выполнить резервное копирование целиком C и D.

У меня 2 вопроса

  1. Я хотел бы добавить в свой код оператор «исключенная папка». Я хотел бы исключить папки «$ Recycle.Bin» «windows» и имя файла «bootmgr» одновременно, как я могу исключить эти папки и файл в мой код

  2. Хотя Ioni c .zip имеет 256 AES-шифрование и защиту паролем, он не шифрует имена файлов и файловую структуру в zip-файле, аналогично winrar "Шифровать Имена файлов ". Есть ли какой-нибудь внешний exe-файл, куда я могу позвонить в коде c# каждого zip-файла и зашифровать. Как ты делаешь, чтобы файловая структура не показывала? используете ли вы другие инструменты zip или есть ли какая-либо платная или нет библиотека, которую я могу импортировать C# для использования.

Оцените ваши ответы

using Ionic.Zip;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;



namespace compresszippasswordsplit
{
    class Program
    {
        static void Main(string[] args)
        {
            using (var zipC = new ZipFile())
            {
                // Zip C
                int SizeBackupMB = 10000;
                string Password = "MysecurePassword";
                string ZipLocation = @"E:\Allbackups\C-backup" + DateTime.Now.ToString("-dd-MM-yyyy") + ".zip";
                string ZipDirectory = @"C:\";

                zipC.Password = Password;
                zipC.Encryption = EncryptionAlgorithm.WinZipAes256;
                zipC.AddDirectory(ZipDirectory);
                zipC.MaxOutputSegmentSize = 1024 * 1024 * SizeBackupMB;
                zipC.Save(ZipLocation);

            }
            using (var zipD = new ZipFile())
            {
                // Zip D
                int SizeBackupMB = 10000;
                string Password = "MysecurePassword";
                string ZipLocation = @"E:\Allbackups\D-backup" + DateTime.Now.ToString("-dd-MM-yyyy") + ".zip";
                string ZipDirectory = @"D:\";

                zipD.Password = Password;
                zipD.Encryption = EncryptionAlgorithm.WinZipAes256;
                zipD.AddDirectory(ZipDirectory);
                zipD.MaxOutputSegmentSize = 1024 * 1024 * SizeBackupMB;
                zipD.Save(ZipLocation);

            }
        }
    }
}
...