如果签名字段是旧的,则FileIsSignedEx不会获取信息

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

我正在使用以下API来验证文件是否已签名CoSign Signature Local > Signature Local COM Methods for Signing and Verifying > SAPICryptCOM Functions > FileIsSignedEx

例:

SAPI.FileIsSignedEx(
          hSession,
          SAPI_ENUM_FILE_TYPE.SAPI_ENUM_FILE_OFFICE_XML_PACKAGE,
          fileName,
          null,
          0,
          ref isSigned
      );

`

如果文件具有较新的签名字段,则此方法有效。 * .docx文件中字段的名称类似于{388F8850-55AF-4729-BE27-F1E5FCAC5A8F}

但是,如果.docx文件包含较旧的签名字段,则即使文件已签名,该函数也始终返回0(false)。旧签名字段的名称是ArGrDigsig2

SignatureFieldInfoGet这样的相关函数即使今天签名也不会为旧字段返回任何内容。

知道这里发生了什么吗?

Old field and new field

c# docusignapi cosign-api
1个回答
1
投票

名为“ArGrDigsign”的旧签名字段是ARX CoSign Legacy签名字段。这些签名是ARX CoSign办公文档的专有签名。这些签名使用MS宏实现,只能在MS Office应用程序中使用。只有新的标准Office或DocuSign签名行签名也可以通过SAPA API(如SAPI Local)使用。

© www.soinside.com 2019 - 2024. All rights reserved.