Функция CryptSetProviderA (wincrypt.h)
Если задан поставщик по умолчанию текущего пользователя, этот поставщик по умолчанию получается при любом вызове этого пользователя к CryptAcquireContext с указанием типа поставщика dwProvType , но не имени CSP.
Также доступна расширенная версия этой функции CryptSetProviderEx.
Синтаксис
BOOL CryptSetProviderA(
[in] LPCSTR pszProvName,
[in] DWORD dwProvType
);
Параметры
[in] pszProvName
Имя нового поставщика служб конфигурации по умолчанию. На компьютере должен быть установлен именованный CSP. Список доступных поставщиков шифрования см. в разделе Имена поставщиков служб шифрования.
[in] dwProvType
Тип поставщика CSP, указанный в параметре pszProvName.
Возвращаемое значение
Если функция выполнена успешно, возвращаемое значение не равно нулю (TRUE).
Если функция завершается ошибкой, возвращаемое значение равно нулю (FALSE). Для получения дополнительных сведений об ошибке вызовите Метод GetLastError. В следующей таблице перечислены некоторые возможные коды ошибок.
Код возврата | Описание |
---|---|
|
Один из параметров указывает недопустимый дескриптор. |
|
Один из параметров содержит недопустимое значение. Чаще всего это недопустимый указатель. |
|
Во время операции в операционной системе не хватает памяти. |
Ошибки также могут распространяться из внутренних вызовов RegCreateKeyEx и RegSetValueEx.
Комментарии
Типичные приложения не указывают имя CSP при вызове CryptAcquireContext; однако приложение может выбрать конкретный поставщик служб конфигурации. Это дает пользователю возможность выбирать CSP с соответствующим уровнем безопасности.
Так как вызов CryptSetProvider определяет CSP указанного типа, используемого всеми приложениями, которые выполняются с этого момента, эта функция не должна вызываться без согласия пользователей.
Примечание
Заголовок wincrypt.h определяет CryptSetProvider в качестве псевдонима, который автоматически выбирает версию ANSI или Юникод этой функции на основе определения константы препроцессора ЮНИКОД. Использование псевдонима, не зависящий от кодирования, с кодом, который не является нейтральным для кодировки, может привести к несоответствиям, которые приводят к ошибкам компиляции или времени выполнения. Дополнительные сведения см. в разделе Соглашения для прототипов функций.
Требования
Минимальная версия клиента | Windows XP [только классические приложения] |
Минимальная версия сервера | Windows Server 2003 [только классические приложения] |
Целевая платформа | Windows |
Header | wincrypt.h |
Библиотека | Advapi32.lib |
DLL | Advapi32.dll |