Firmar digitalmente un proyecto de código VBA con un certificado

Firmar digitalmente un proyecto de código VBA con un certificado en C#

El siguiente código de ejemplo ilustra cómo hacer uso del método Workbook.VbaProject.Sign(). Aquí están los archivos de entrada y salida del código de ejemplo. Puede usar cualquier archivo de Excel y cualquier certificado para probar este código.

// For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-Java
String password = "1234";
String pfxPath = sourceDir + "sampleDigitallySignVbaProjectWithCertificate.pfx";;
String comment = "Signing Digital Signature using Aspose.Cells";
// Load the certificate into an instance of InputStream
InputStream inStream = new FileInputStream(pfxPath);
// Create an instance of KeyStore with PKCS12 cryptography
KeyStore inputKeyStore = KeyStore.getInstance("PKCS12");
// Use the KeyStore.load method to load the certificate stream and its password
inputKeyStore.load(inStream, password.toCharArray());
inStream.close();
// Create an instance of DigitalSignature and pass the instance of KeyStore, password, comments and time
DigitalSignature signature = new DigitalSignature(inputKeyStore, password, comment,
DateTime.getNow());
Workbook wb = new Workbook(sourceDir + "sampleDigitallySignVbaProjectWithCertificate.xlsm");
wb.getVbaProject().sign(signature);
wb.save(outputDir + "outputDigitallySignVbaProjectWithCertificate.xlsm");