Функция CryptContextAddRef (wincrypt.h)
Синтаксис
BOOL CryptContextAddRef(
[in] HCRYPTPROV hProv,
[in] DWORD *pdwReserved,
[in] DWORD dwFlags
);
Параметры
[in] hProv
[in] pdwReserved
Зарезервировано для дальнейшего использования и должно быть NULL.
[in] dwFlags
Зарезервировано для будущего использования и должно быть равно нулю.
Возвращаемое значение
Если функция выполнена успешно, возвращаемое значение ненулевое (TRUE).
Если функция завершается ошибкой, возвращаемое значение равно нулю (FALSE). Для получения расширенных сведений об ошибке вызовите GetLastError. Ниже приведен один из возможных кодов ошибок.
Возвращаемый код | Описание |
---|---|
|
Один из параметров содержит недопустимое значение. Чаще всего это недопустимый указатель. |
Замечания
Эта функция увеличивает число ссылок для дескриптора HCRYPTPROV, чтобы для фактического выпуска дескриптора требуется несколько вызовов CryptReleaseContext.
Примеры
В следующем примере увеличивается число ссылок для полученного дескриптора CSP.
//--------------------------------------------------------------------
// hCryptProv is a HCRYPTPROV variable that was previously acquired
// by using CryptAcquireContext or CryptAcquireCertificatePrivateKey.
if(CryptContextAddRef(
hCryptProv,
NULL,
0))
{
printf("CryptContextAddRef succeeded. \n");
}
else
{
printf("Error during CryptContextAddRef!\n");
exit(1);
}
//--------------------------------------------------------------------
// The reference count on hCryptProv is now greater than one. The
// first call to CryptReleaseContext will not release the provider
// handle. A second call to CryptReleaseContext would be needed to
// release the context.
Другой пример, использующий эту функцию, см. в разделе Пример программы C: использованиеCryptAcquireContext.
Требования
Требование | Ценность |
---|---|
минимальные поддерживаемые клиентские | Windows XP [только классические приложения] |
минимальный поддерживаемый сервер | Windows Server 2003 [только классические приложения] |
целевая платформа | Виндоус |
заголовка | wincrypt.h |
библиотеки |
Advapi32.lib |
DLL | Advapi32.dll |
См. также
функции поставщика услуг