既に署名されているExcelファイルにデジタル署名を追加する(C++)

可能な使用シナリオ

Aspose.Cellsは、既に署名されたExcelファイルにデジタル署名を追加するためのWorkbook::AddDigitalSignature(DigitalSignatureCollectionPtr digitalSignatureCollection)メソッドを提供します。

すでに署名されたExcelファイルにデジタル署名を追加する方法

以下のコード例は、Workbook::AddDigitalSignatureを使用して署名済みExcelファイルにデジタル署名を追加する例です。サンプルExcelファイル(50528280.xlsx)は事前に署名済みです。出力ファイル(50528281.xlsx)は結果を示します。デモ証明書[ AsposeDemo.pfx ](50528279.pfx)とパスワードasposeを使用しています。

todo:image_alt_text

サンプルコード

#include <iostream>
#include "Aspose.Cells.h"
using namespace Aspose::Cells;
using namespace Aspose::Cells::DigitalSignatures;

int main()
{
    Aspose::Cells::Startup();

    // Source and output directories
    U16String srcDir(u"..\\Data\\01_SourceDirectory\\");
    U16String outDir(u"..\\Data\\02_OutputDirectory\\");

    // Certificate and workbook paths
    U16String certFilePath = srcDir + u"AsposeDemo.pfx";
    U16String inputFilePath = srcDir + u"sampleDigitallySignedByCells.xlsx";
    U16String outputFilePath = outDir + u"outputDigitallySignedByCells.xlsx";

    // Load digitally signed workbook
    Workbook workbook(inputFilePath);

    // Create digital signature collection
    DigitalSignatureCollection dsCollection;

    // Create digital signature using PFX certificate
    U16String password = u"aspose";
    U16String comments = u"Aspose.Cells added new digital signature in existing digitally signed workbook.";
    DigitalSignature signature(certFilePath, password, comments, Date());

    // Add signature to collection
    dsCollection.Add(signature);

    // Apply digital signatures to workbook
    workbook.AddDigitalSignature(dsCollection);

    // Save modified workbook
    workbook.Save(outputFilePath);

    std::cout << "Digital signature added successfully." << std::endl;

    Aspose::Cells::Cleanup();
    return 0;
}