CryptCATPutCatAttrInfo 函数 (mscat.h)

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

CryptCATPutCatAttrInfo 函数为目录文件属性分配内存,并将其添加到目录。

语法

CRYPTCATATTRIBUTE * CryptCATPutCatAttrInfo(
  [in] HANDLE hCatalog,
  [in] LPWSTR pwszReferenceTag,
  [in] DWORD  dwAttrTypeAndAction,
  [in] DWORD  cbData,
  [in] BYTE   *pbData
);

parameters

[in] hCatalog

CryptCATOpenCryptCATHandleFromStore 函数获取的目录的句柄。

[in] pwszReferenceTag

指向属性名称的以 null 结尾的字符串的指针。

[in] dwAttrTypeAndAction

一个 值,该值表示以下标志的按位组合。 调用方必须至少指定 CRYPTCAT_ATTR_DATAASCIICRYPTCAT_ATTR_DATABASE64

含义
CRYPTCAT_ATTR_AUTHENTICATED
0x10000000
属性已经过身份验证。
CRYPTCAT_ATTR_UNAUTHENTICATED
0x20000000
属性未经身份验证。
CRYPTCAT_ATTR_NAMEASCII
0x00000001
属性是 ASCII 字符串。
CRYPTCAT_ATTR_NAMEOBJID
0x00000002
特性是 OID) (加密 对象标识符
CRYPTCAT_ATTR_DATAASCII
0x00010000
属性包含不应解码的简单 ASCII 字符。
CRYPTCAT_ATTR_DATABASE64
0x00020000
属性采用 base 64 格式。
CRYPTCAT_ATTR_DATAREPLACE
0x00040000
特性替换现有属性的值。

[in] cbData

一个 值,该值指定 pbData 缓冲区中的字节数。

[in] pbData

指向包含属性值的内存缓冲区的指针。

返回值

指向包含目录属性的 CRYPTCATATTRIBUTE 结构的指针。 调用方不得释放此指针或其任何成员。

如果此函数返回 NULL,可以通过调用 GetLastError 函数来获取其他错误信息。 GetLastError 将返回以下错误代码之一。

返回代码 说明
ERROR_INVALID_PARAMETER
一个或多个参数无效。
ERROR_NOT_ENOUGH_MEMORY
操作系统在操作期间内存不足。

要求

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