EPPlus-如何删除数字签名

问题描述 投票:0回答:1

我想从VBA签名的excel宏文件中删除digital signature。但是,当我查看EPPlus的库时,我发现“ Signature”属性是只读的,并且将Certificate设置为null似乎不会删除它,只会使文件中的签名无效:

using (ExcelPackage xlPackage = new ExcelPackage(fiNew))
{
    xlPackage.Workbook.VbaProject.Signature.Certificate = null;
    xlPackage.Save();
}

调用dispose方法也不起作用,保存时出错。有人知道如何在EPPlus中执行此操作吗?

c# excel certificate digital-signature epplus
1个回答
0
投票

查看source仅提供没有私钥的证书-参见第137行。

        internal void Save(ExcelVbaProject proj)
        {
            if (Certificate == null)
            {
                return;
            }

            if (Certificate.HasPrivateKey==false)    //No signature. Remove any Signature part
© www.soinside.com 2019 - 2024. All rights reserved.