Функция BCryptQueryContextConfiguration (bcrypt.h)
[BCryptQueryContextConfiguration доступен для использования в операционных системах, указанных в разделе Требования. Он может быть изменен или недоступен в последующих версиях.]
Функция BCryptQueryContextConfiguration извлекает текущую конфигурацию для указанного контекста CNG.
Синтаксис
NTSTATUS BCryptQueryContextConfiguration(
[in] ULONG dwTable,
[in] LPCWSTR pszContext,
[in, out] ULONG *pcbBuffer,
[in, out] PCRYPT_CONTEXT_CONFIG *ppBuffer
);
Параметры
[in] dwTable
Определяет таблицу конфигурации, в котором существует контекст. Это может быть одно из следующих значений.
Значение | Значение |
---|---|
|
Контекст существует в таблице конфигурации локального компьютера. |
|
Это значение недоступно для использования. |
[in] pszContext
Указатель на строку Юникода, завершающуюся значением NULL, которая содержит идентификатор контекста для получения сведений о конфигурации.
[in, out] pcbBuffer
Адрес переменной ULONG , которая при входе содержит размер буфера, на который указывает ppBuffer, в байтах. Если этот размер недостаточно велик для хранения сведений о контексте, эта функция завершится сбоем с STATUS_BUFFER_TOO_SMALL.
После возврата этой функции эта переменная содержит количество байтов, скопированных в буфер ppBuffer .
[in, out] ppBuffer
Адрес указателя на структуру CRYPT_CONTEXT_CONFIG , которая получает сведения о конфигурации контекста, полученные этой функцией. Значение, на которое указывает параметр pcbBuffer , содержит размер этого буфера.
Если значение, на которое указывает этот параметр, равно NULL, эта функция выделяет необходимую память. Эта память должна быть освобождена, если она больше не нужна, путем передачи этого указателя в функцию BCryptFreeBuffer .
Если этот параметр имеет значение NULL, эта функция поместит необходимый размер в байтах в переменную, на которую указывает параметр pcbBuffer , и вернет STATUS_BUFFER_TOO_SMALL.
Дополнительные сведения об использовании этого параметра см. в разделе Примечания.
Возвращаемое значение
Возвращает код состояния, указывающий на успешное или неудачное выполнение функции.
Возможные коды возврата включают, помимо прочего, следующие.
Код возврата | Описание |
---|---|
|
Функция выполнена успешно. |
|
Параметр ppBuffer не имеет значение NULL, а значение, на которое указывает параметр pcbBuffer , недостаточно велико для хранения набора контекстов. |
|
Один или несколько параметров являются недопустимыми. |
|
Произошел сбой выделения памяти. |
|
Не удалось найти указанный контекст. |
Комментарии
Каждый контекст имеет только один набор сведений о конфигурации, поэтому, хотя параметр ppBuffer , как представляется, используется в качестве массива, эта функция рассматривает его как массив только с одним элементом. В следующем примере показано, как используется этот параметр.
// Get the configuration information for the context.
CRYPT_CONTEXT_CONFIG config;
ULONG uSize = sizeof(config);
PCRYPT_CONTEXT_CONFIG pConfig = &config;
status = BCryptQueryContextConfiguration(
CRYPT_LOCAL,
pszContextID,
&uSize,
&pConfig);
BCryptQueryContextConfiguration можно вызывать только в пользовательском режиме.
Требования
Требование | Значение |
---|---|
Минимальная версия клиента | Windows Vista [только классические приложения] |
Минимальная версия сервера | Windows Server 2008 [только классические приложения] |
Целевая платформа | Windows |
Header | bcrypt.h |
Библиотека | Bcrypt.lib |
DLL | Bcrypt.dll |