cryptSIPGetSignedDataMsg 函数 (mssip.h)
CryptSIPGetSignedDataMsg 函数从文件中检索验证码签名。
语法
BOOL CryptSIPGetSignedDataMsg(
[in] SIP_SUBJECTINFO *pSubjectInfo,
[out] DWORD *pdwEncodingType,
[in] DWORD dwIndex,
[in, out] DWORD *pcbSignedDataMsg,
[out] BYTE *pbSignedDataMsg
);
参数
[in] pSubjectInfo
指向包含有关邮件主题信息的 SIP_SUBJECTINFO 结构的指针。
[out] pdwEncodingType
Authenticode 签名的编码类型。
此参数可以是以下一个或多个值的组合。
值 | 含义 |
---|---|
|
指定 PKCS #7 消息编码。 |
|
指定 X.509 证书编码。 |
[in] dwIndex
此参数是保留的,应设置为零。
[in, out] pcbSignedDataMsg
pbSignedDataMsg 参数指向的缓冲区的长度(以字节为单位)。
[out] pbSignedDataMsg
指向用于接收返回的 Authenticode 签名的缓冲区的指针。
若要确定所需缓冲区的大小,请将 pbSignedDataMsg 参数设置为 NULL 并调用 CryptSIPGetSignedDataMsg 函数。 此函数会将所需缓冲区大小(以字节为单位)放在 由SignedDataMsg 指向的值中。 有关详细信息,请参阅 检索未知长度的数据。
返回值
如果函数成功,则函数返回 TRUE。
如果函数失败,则返回 FALSE。 有关扩展的错误信息,请调用 GetLastError。 下面是一些可能的错误代码。
返回代码 | 说明 |
---|---|
|
找不到索引指定的签名。 |
|
使用者接口包 (SIP) 的指定数据或文件格式无效。 |
|
[SIP_SUBJECTINFO] (/windows/desktop/api/mssip/ns-mssip-sip_subjectinfo) 结构为空指针。 |
|
消息缓冲区的大小不足以保存检索到的数据, 已设置的DbSignedDataMsg 参数来指示所需的缓冲区大小。 |
|
指定的主题类型无效。 |
注解
主题包括但不限于可移植的可执行映像 (.exe) 、cabinet (.cab) 映像、平面文件和目录文件。 每个主题类型使用其数据的不同子集进行哈希计算,并且需要不同的存储和检索过程。 因此,每个主题类型都具有唯一的 SIP 规范。
要求
要求 | 值 |
---|---|
最低受支持的客户端 | Windows XP [仅限桌面应用] |
最低受支持的服务器 | Windows Server 2003 [仅限桌面应用] |
目标平台 | Windows |
标头 | mssip.h |
Library | Crypt32.lib |
DLL | Crypt32.dll |