public void ExtractToDirectoryFromBytes(string directoryName, byte[] bytes)
        {
            FileManager fileMan      = new FileManager();
            string      tempFileName = fileMan.GenerateTempFileName("ExtractBytes");

            using (AutoDeleteFiles autoDelete = new AutoDeleteFiles(tempFileName))
            {
                // Create/Write the bytes to a file
                fileMan.CreateWriteBytes(tempFileName, bytes);

                // Create a temp archiver
                CryptoArchiver tempArchiver = new CryptoArchiver(tempFileName, this);
                tempArchiver.ExtractToDirectory(directoryName);
            }
        }
        public byte[] GetBytesFromDirectory(string directoryName)
        {
            FileManager fileMan = new FileManager();

            byte[] bytes;
            string tempFileName = fileMan.GenerateTempFileName("GetBytes");

            using (AutoDeleteFiles autoDelete = new AutoDeleteFiles(tempFileName))
            {
                // Create a temp archiver
                CryptoArchiver tempArchiver = new CryptoArchiver(tempFileName, this);
                tempArchiver.CreateFromDirectory(directoryName);

                // Read Bytes and delete file
                bytes = File.ReadAllBytes(tempFileName);
            }
            return(bytes);
        }