CryptCATOpen 函数 (mscat.h)

[ CryptCATOpen 函数可用于“要求”部分中指定的操作系统。 它在后续版本中可能已更改或不可用。]

CryptCATOpen 函数打开目录,并返回打开目录的上下文句柄。

注意 Wintrust.lib 的某些旧版本不包含此函数的导出信息。 在这种情况下,必须使用 LoadLibraryGetProcAddress 函数动态链接到 Wintrust.dll。
 

语法

HANDLE CryptCATOpen(
  [in] LPWSTR     pwszFileName,
  [in] DWORD      fdwOpenFlags,
  [in] HCRYPTPROV hProv,
  [in] DWORD      dwPublicVersion,
  [in] DWORD      dwEncodingType
);

parameters

[in] pwszFileName

指向目录文件名的以 null 结尾的字符串的指针。

[in] fdwOpenFlags

零,用于打开现有目录文件,或以下一个或多个值的按位组合。

含义
CRYPTCAT_OPEN_ALWAYS
打开文件(如果存在)或创建一个新文件(如果需要)。
CRYPTCAT_OPEN_CREATENEW
将创建一个新的目录文件。 如果存在以前创建的文件,则会覆盖该文件。
CRYPTCAT_OPEN_EXISTING
打开现有目录文件。
CRYPTCAT_OPEN_EXCLUDE_PAGE_HASHES
打开现有目录文件。 排除SPC_INDIRECT_DATA中的页面哈希。
CRYPTCAT_OPEN_INCLUDE_PAGE_HASHES
打开现有目录文件。 在SPC_INDIRECT_DATA中包含页哈希。 如果同时设置了上述CRYPTCAT_OPEN_EXCLUDE_PAGE_HASHES,则优先。
CRYPTCAT_OPEN_VERIFYSIGHASH
打开现有目录文件。 验证签名,而不是证书。
CRYPTCAT_OPEN_NO_CONTENT_HCRYPTMSG
打开现有目录文件。 不带内容的 CryptMsgDecode。
CRYPTCAT_OPEN_SORTED
打开现有目录文件。 CertCreateContext (CERT_CREATE_CONTEXT_SORTED_FLAG) 。

[in] hProv

CSP) (加密服务提供程序的句柄。

[in] dwPublicVersion

文件的版本。 这可以是以下值之一。

含义
CRYPTCAT_VERSION_1
0x100
版本 1 文件格式。
CRYPTCAT_VERSION_2
0x200
版本 2 文件格式。

Windows 8 和 Windows Server 2012: 开始支持此值。

[in] dwEncodingType

用于文件的编码类型。 如果此值为 0,则编码类型设置为 PKCS_7_ASN_ENCODING |X509_ASN_ENCODING。

返回值

成功后,此函数将返回打开目录的句柄。 使用完 句柄后,通过调用 CryptCATClose 函数将其关闭。 如果失败,CryptCATOpen 函数将返回INVALID_HANDLE_VALUE。

要求

   
最低受支持的客户端 Windows XP [仅限桌面应用]
最低受支持的服务器 Windows Server 2003 [仅限桌面应用]
目标平台 Windows
标头 mscat.h
Library Wintrust.lib
DLL Wintrust.dll

另请参阅

CryptCATClose