| using Microsoft.VisualStudio.TestTools.UnitTesting; | |
| using OfficeOpenXml; | |
| using System.IO; | |
| namespace EPPlusTest | |
| { | |
| [TestClass] | |
| public class Encrypt : TestBase | |
| { | |
| [TestMethod] | |
| [Ignore] | |
| public void ReadWriteEncrypt() | |
| { | |
| using (ExcelPackage pck = new ExcelPackage(new FileInfo(@"Test\Drawing.xlsx"), true)) | |
| { | |
| pck.Encryption.Password = "EPPlus"; | |
| pck.Encryption.Algorithm = EncryptionAlgorithm.AES192; | |
| pck.Workbook.Protection.SetPassword("test"); | |
| pck.Workbook.Protection.LockStructure = true; | |
| pck.Workbook.Protection.LockWindows = true; | |
| pck.SaveAs(new FileInfo(@"Test\DrawingEncr.xlsx")); | |
| } | |
| using (ExcelPackage pck = new ExcelPackage(new FileInfo(_worksheetPath + @"\DrawingEncr.xlsx"), true, "EPPlus")) | |
| { | |
| pck.Encryption.IsEncrypted = false; | |
| pck.SaveAs(new FileInfo(_worksheetPath + @"\DrawingNotEncr.xlsx")); | |
| } | |
| FileStream fs = new FileStream(_worksheetPath + @"\DrawingEncr.xlsx", FileMode.Open, FileAccess.ReadWrite); | |
| using (ExcelPackage pck = new ExcelPackage(fs, "EPPlus")) | |
| { | |
| pck.Encryption.IsEncrypted = false; | |
| pck.SaveAs(new FileInfo(_worksheetPath + @"DrawingNotEncr.xlsx")); | |
| } | |
| } | |
| [TestMethod] | |
| [Ignore] | |
| public void WriteEncrypt() | |
| { | |
| ExcelPackage package = new ExcelPackage(); | |
| //Load the sheet with one string column, one date column and a few random numbers. | |
| var ws = package.Workbook.Worksheets.Add("First line test"); | |
| ws.Cells[1, 1].Value = "1; 1"; | |
| ws.Cells[2, 1].Value = "2; 1"; | |
| ws.Cells[1, 2].Value = "1; 2"; | |
| ws.Cells[2, 2].Value = "2; 2"; | |
| ws.Row(1).Style.Font.Bold = true; | |
| ws.Column(1).Style.Font.Bold = true; | |
| //package.Encryption.Algorithm = EncryptionAlgorithm.AES256; | |
| //package.SaveAs(new FileInfo(@"c:\temp\encrTest.xlsx"), "ABxsw23edc"); | |
| package.Encryption.Password = "test"; | |
| package.Encryption.IsEncrypted = true; | |
| package.SaveAs(new FileInfo(@"c:\temp\encrTest.xlsx")); | |
| } | |
| [TestMethod] | |
| [Ignore] | |
| public void WriteProtect() | |
| { | |
| ExcelPackage package = new ExcelPackage(new FileInfo(@"c:\temp\workbookprot2.xlsx"), ""); | |
| //Load the sheet with one string column, one date column and a few random numbers. | |
| //package.Workbook.Protection.LockWindows = true; | |
| //package.Encryption.IsEncrypted = true; | |
| package.Workbook.Protection.SetPassword("t"); | |
| package.Workbook.Protection.LockStructure = true; | |
| package.Workbook.View.Left = 585; | |
| package.Workbook.View.Top = 150; | |
| package.Workbook.View.Width = 17310; | |
| package.Workbook.View.Height = 38055; | |
| var ws = package.Workbook.Worksheets.Add("First line test"); | |
| ws.Cells[1, 1].Value = "1; 1"; | |
| ws.Cells[2, 1].Value = "2; 1"; | |
| ws.Cells[1, 2].Value = "1; 2"; | |
| ws.Cells[2, 2].Value = "2; 2"; | |
| package.SaveAs(new FileInfo(@"c:\temp\workbookprot2.xlsx")); | |
| } | |
| [TestMethod] | |
| [Ignore] | |
| public void DecrypTest() | |
| { | |
| var p = new ExcelPackage(new FileInfo(@"c:\temp\encr.xlsx"), "test"); | |
| var n = p.Workbook.Worksheets[1].Name; | |
| p.Encryption.Password = null; | |
| p.SaveAs(new FileInfo(@"c:\temp\encrNew.xlsx")); | |
| } | |
| [TestMethod] | |
| [Ignore] | |
| public void EncrypTest() | |
| { | |
| var f = new FileInfo(@"c:\temp\encrwrite.xlsx"); | |
| if (f.Exists) | |
| { | |
| f.Delete(); | |
| } | |
| var p = new ExcelPackage(f); | |
| p.Workbook.Protection.SetPassword(""); | |
| p.Workbook.Protection.LockStructure = true; | |
| p.Encryption.Version = EncryptionVersion.Agile; | |
| var ws = p.Workbook.Worksheets.Add("Sheet1"); | |
| for (int r = 1; r < 1000; r++) | |
| { | |
| ws.Cells[r, 1].Value = r; | |
| } | |
| p.Save(); | |
| } | |
| } | |
| } |