NCryptQueryProtectionDescriptorName 函数 (ncryptprotect.h)

NCryptQueryProtectionDescriptorName 函数检索与已注册的描述符显示名称关联的保护描述符规则字符串。

语法

SECURITY_STATUS NCryptQueryProtectionDescriptorName(
  [in]      LPCWSTR pwszName,
  [out]     LPWSTR  pwszDescriptorString,
  [in, out] SIZE_T  *pcDescriptorString,
            DWORD   dwFlags
);

参数

[in] pwszName

保护描述符的已注册显示名称。 通过调用 NCryptRegisterProtectionDescriptorName 函数来注册名称。

[out] pwszDescriptorString

包含保护描述符规则的以 null 结尾的 Unicode 字符串。 将此值设置为 NULL ,并在初始调用此函数时将 pcDescriptorString 参数指向的描述符字符串的大小设置为零。 有关详细信息,请参阅“备注”。

[in, out] pcDescriptorString

指向变量的指针,该变量包含 pwszDescriptorString 参数中检索到的字符串中的字符数。 在初始调用此函数时,将 变量设置为零。 有关详细信息,请参阅“备注”。

dwFlags

指定要查询已注册名称的注册表配置单元的标志。 这可以是零以在 HKEY_CURRENT_USER 配置单元中查找,也可以指定 NCRYPT_MACHINE_KEY_FLAG 来查询 HKEY_LOCAL_MACHINE 配置单元。

返回值

返回指示函数成功或失败的状态代码。 可能的返回代码包括但不限于以下内容。

返回代码 说明
ERROR_SUCCESS
函数成功。
NTE_INVALID_PARAMETER
pwszName 参数不能为 NULL,参数指向的值不能为空字符串。
NTE_BAD_FLAGS
dwFlags 参数必须为零或NCRYPT_MACHINE_KEY_FLAG

注解

若要检索保护描述符规则字符串,必须调用此函数两次。 首次调用时,将 pwszDescriptorString 参数设置为 NULL ,并将 pcDescriptorString 参数指向的值设置为零。 第一次调用将检索描述符字符串中的字符数。 使用此数字为字符串分配内存,并检索指向已分配缓冲区的指针。 若要检索字符串,请使用 指针再次调用函数。

要求

要求
最低受支持的客户端 Windows 8 [仅限桌面应用]
最低受支持的服务器 Windows Server 2012 [仅限桌面应用]
目标平台 Windows
标头 ncryptprotect.h
Library NCrypt.lib
DLL NCrypt.dll

另请参阅

CNG DPAPI 函数

NCryptRegisterProtectionDescriptorName