private void decryptFile_Click(object sender, EventArgs e) { if (currentMode == Mode.Image && image != null) { HiddenFile f; stopwatch.Restart(); if (random.Checked) { f = Steganography.GetFileFromImage(image); } else { if (linear.Checked) { f = Steganography.GetFileFromImageLinear(image); } else { f = Steganography.GetFileFromImage2(image); } } if (f != null) { stopwatch.Stop(); OutputConsole.Write(string.Format("Process completed in {0} ms", stopwatch.ElapsedMilliseconds)); saveFileDialog.FileName = f.filename; DialogResult res = saveFileDialog.ShowDialog(); if (res == System.Windows.Forms.DialogResult.OK) { File.WriteAllBytes(saveFileDialog.FileName, f.file); OutputConsole.Write("File saved"); if (Path.GetExtension(saveFileDialog.FileName) == ".bmp" || Path.GetExtension(saveFileDialog.FileName) == ".png" || Path.GetExtension(saveFileDialog.FileName) == ".jpg") { ImgPreview p = new ImgPreview(Image.FromFile(saveFileDialog.FileName)); p.ShowDialog(); } } } else { //MessageBox.Show("This image doesn't have an encrypted text or an error occurred"); } stopwatch.Reset(); } if (currentMode == Mode.Audio && audio != null) { HiddenFile file; stopwatch.Restart(); if (random.Checked) { file = AudioSteganography.DecryptFile(audio); } else { if (linear.Checked) { file = AudioSteganography.DecryptFileLinear(audio); } else { file = AudioSteganography.DecryptFile2(audio); } } if (file != null) { stopwatch.Stop(); OutputConsole.Write(string.Format("Process completed in {0} ms", stopwatch.ElapsedMilliseconds)); saveFileDialog.FileName = file.filename; DialogResult res = saveFileDialog.ShowDialog(); if (res == System.Windows.Forms.DialogResult.OK) { File.WriteAllBytes(saveFileDialog.FileName, file.file); OutputConsole.Write("File saved"); if (Path.GetExtension(saveFileDialog.FileName) == ".bmp" || Path.GetExtension(saveFileDialog.FileName) == ".png" || Path.GetExtension(saveFileDialog.FileName) == ".jpg") { ImgPreview p = new ImgPreview(Image.FromFile(saveFileDialog.FileName)); p.ShowDialog(); } } } stopwatch.Reset(); } }