BCryptQueryContextFunctionProperty 函数 (bcrypt.h)
BCryptQueryContextFunctionProperty 函数获取现有 CNG 上下文中加密函数的命名属性的值。
语法
NTSTATUS BCryptQueryContextFunctionProperty(
[in] ULONG dwTable,
[in] LPCWSTR pszContext,
[in] ULONG dwInterface,
[in] LPCWSTR pszFunction,
[in] LPCWSTR pszProperty,
[in, out] ULONG *pcbValue,
[in, out] PUCHAR *ppbValue
);
参数
[in] dwTable
标识上下文所在的配置表。 这可以是以下值之一。
值 | 含义 |
---|---|
|
上下文存在于本地计算机配置表中。 |
|
此值不可使用。 |
[in] pszContext
指向以 null 结尾的 Unicode 字符串的指针,该字符串包含要从中获取函数属性的上下文的标识符。
[in] dwInterface
标识函数所在的加密接口。 这可以是以下值之一。
[in] pszFunction
指向以 null 结尾的 Unicode 字符串的指针,该字符串包含要获取其 属性的加密函数的标识符。
[in] pszProperty
指向以 null 结尾的 Unicode 字符串的指针,该字符串包含要获取的属性的标识符。
[in, out] pcbValue
输入时包含 ppbValue 指向的缓冲区的大小(以字节为单位)的 ULONG 变量的地址。 如果此大小不足以保存属性值,则此函数将失败并 出现STATUS_BUFFER_TOO_SMALL。
此函数返回后,此变量包含复制到 ppbValue 缓冲区的字节数。
[in, out] ppbValue
指向接收属性数据的缓冲区的指针的地址。 此缓冲区的大小和格式取决于要检索的属性的格式。 由印刷量值参数指向的值包含此缓冲区的大小。
如果此参数指向的值为 NULL,则此函数将分配所需的内存。 当不再需要此内存时,必须通过将此指针传递给 BCryptFreeBuffer 函数来释放此内存。
如果此参数为 NULL,此函数会将所需大小(以字节为单位)放在由STATUS_BUFFER_TOO_SMALL值参数指向的变量中。
返回值
返回指示函数成功或失败的状态代码。
可能的返回代码包括但不限于以下内容。
返回代码 | 说明 |
---|---|
|
函数成功。 |
|
ppbValue 参数不为 NULL,并且由印刷电路板值参数指向的值不够大,无法容纳上下文集。 |
|
一个或多个参数无效。 |
|
内存分配失败。 |
|
找不到指定的上下文、函数或属性。 |
注解
BCryptQueryContextFunctionProperty 只能在用户模式下调用。
要求
要求 | 值 |
---|---|
最低受支持的客户端 | Windows Vista [仅限桌面应用] |
最低受支持的服务器 | Windows Server 2008 [仅限桌面应用] |
目标平台 | Windows |
标头 | bcrypt.h |
Library | Bcrypt.lib |
DLL | Bcrypt.dll |