Control Exception PDF File
Contents
[
Hide
]
PdfFileSecurity class allows you to control exceptions. To do this, you need to set AllowExceptions property to false or true. If you set the operation to false, the result of DecryptFile will return true or false depending on the correctness of the password.
// For complete examples and data files, visit https://github.com/aspose-pdf/Aspose.PDF-for-.NET
private static void ControlExceptionPDFFile()
{
// The path to the documents directory
var dataDir = RunExamples.GetDataDir_AsposePdf_SecuritySignatures();
using (var fileSecurity = new Aspose.Pdf.Facades.PdfFileSecurity())
{
// Bind PDF document
fileSecurity.BindPdf(dataDir + "sample_encrypted.pdf");
// Disallow exceptions
fileSecurity.AllowExceptions = false;
// Decrypt PDF document
if (!fileSecurity.DecryptFile("IncorrectPassword"))
{
Console.WriteLine("Something wrong...");
Console.WriteLine($"Last exception: {fileSecurity.LastException.Message}");
}
// Save PDF document
fileSecurity.Save(dataDir + "SampleDecrtypted_out.pdf");
}
}
If you set AllowExceptions property to true, then you can get the result of the operation using the try-catch operator.
// For complete examples and data files, visit https://github.com/aspose-pdf/Aspose.PDF-for-.NET
private static void ControlExceptionPDFFile2()
{
// The path to the documents directory
var dataDir = RunExamples.GetDataDir_AsposePdf_SecuritySignatures();
using (var fileSecurity = new Aspose.Pdf.Facades.PdfFileSecurity())
{
// Bind PDF document
fileSecurity.BindPdf(dataDir + "sample_encrypted.pdf");
// Allow exceptions
fileSecurity.AllowExceptions = true;
try
{
// Decrypt PDF document
fileSecurity.DecryptFile("IncorrectPassword");
}
catch (Exception ex)
{
Console.WriteLine("Something wrong...");
Console.WriteLine($"Exception: {ex.Message}");
}
// Save PDF document
fileSecurity.Save(dataDir + "SampleDecrtypted_out.pdf");
}
}