تحقق ما إذا كان التوقيع الرقمي لشيفر آلي VBA صالحًا

تحقق ما إذا كان التوقيع الرقمي لشيفر آلي VBA صالحًا في C#

الكود التالي يوضح استخدام هذه الخاصية باستخدام ملف الإكسل العيني الذي يمكنك تنزيله من الرابط المُقدم. يحتوي نفس ملف Excel على توقيع صالح ولكن عند تعديل شيفر آلي VBA وحفظ سجل العمل ثم إعادة التحقق ، نجد أن توقيعه أصبح غير صالح.

// For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-.NET
// The path to the documents directory.
string dataDir = RunExamples.GetDataDir(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType);
Workbook workbook = new Workbook(dataDir + "sampleVBAProjectSigned.xlsm");
// Signature is valid
Console.WriteLine("Is VBA Code Project Valid Signed: " + workbook.VbaProject.IsValidSigned);
// Modify the VBA Code, save the workbook then reload
// VBA Code Signature will now be invalid
string code = workbook.VbaProject.Modules[1].Codes;
code = code.Replace("Welcome to Aspose", "Welcome to Aspose.Cells");
workbook.VbaProject.Modules[1].Codes = code;
// Save
workbook.Save(dataDir + "output_out.xlsm");
// Reload
workbook = new Workbook(dataDir + "output_out.xlsm");
// Now the signature is invalid
Console.WriteLine("Is VBA Code Project Valid Signed: " + workbook.VbaProject.IsValidSigned);