Поделиться через


Функция NCryptNotifyChangeKey (ncrypt.h)

Функция NCryptNotifyChangeKey создает или удаляет уведомление об изменении ключа.

Дескриптор, предоставляемый этой функцией, является тем же дескриптором, который возвращается функцией FindFirstChangeNotification . Функции ожидания используются для ожидания передачи сигнала дескриптора уведомления.

Синтаксис

SECURITY_STATUS NCryptNotifyChangeKey(
  [in]      NCRYPT_PROV_HANDLE hProvider,
  [in, out] HANDLE             *phEvent,
  [in]      DWORD              dwFlags
);

Параметры

[in] hProvider

Дескриптор поставщика хранилища ключей. Этот дескриптор получается с помощью функции NCryptOpenStorageProvider .

[in, out] phEvent

Адрес переменной HANDLE , которая получает или содержит дескриптор события уведомления об изменении ключа. Это тот же дескриптор, который возвращается функцией FindFirstChangeNotification . Дополнительные сведения см. в описании параметра dwFlags .

[in] dwFlags

Набор флагов, которые изменяют поведение этой функции. Этот параметр содержит сочетание одного или нескольких из следующих значений.

Значение Значение
NCRYPT_REGISTER_NOTIFY_FLAG
0x00000001
Создайте новое уведомление об изменениях. Параметр phEvent получит дескриптор уведомления об изменении ключа.
NCRYPT_UNREGISTER_NOTIFY_FLAG
0x00000002
Удалите существующее уведомление об изменениях. Параметр phEvent должен содержать допустимый дескриптор уведомления об изменении ключа. Этот дескриптор больше недействителен после вызова этой функции с этим флагом, а значение INVALID_HANDLE_VALUE помещается в этот дескриптор.
NCRYPT_MACHINE_KEY_FLAG
0x00000020
Получать уведомления об изменениях ключей в хранилище ключей компьютера. Если этот флаг не указан, события уведомления об изменениях будут возникать только для ключей в хранилище ключей вызывающего пользователя. Этот флаг действителен только в сочетании с флагом NCRYPT_REGISTER_NOTIFY_FLAG .

Возвращаемое значение

Возвращает код состояния, указывающий на успешное или неудачное выполнение функции.

Возможные коды возврата включают, помимо прочего, следующие.

Код возврата Описание
ERROR_SUCCESS
Функция выполнена успешно.
NTE_BAD_FLAGS
Параметр dwFlags содержит недопустимое значение.
NTE_INVALID_HANDLE
Недопустимый параметр hProvider .
NTE_INVALID_PARAMETER
Один или несколько параметров недопустимы.

Комментарии

Служба не должна вызывать эту функцию из функции StartService. Если служба вызывает эту функцию из функции StartService, может возникнуть взаимоблокировка, и служба может перестать отвечать.

Требования

Требование Значение
Минимальная версия клиента Windows Vista [только классические приложения]
Минимальная версия сервера Windows Server 2008 [только классические приложения]
Целевая платформа Windows
Header ncrypt.h
Библиотека Ncrypt.lib
DLL Ncrypt.dll

См. также раздел

FindFirstChangeNotification