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


функция обратного вызова LSA_REGISTER_NOTIFICATION (ntsecpkg.h)

Предоставляет механизм уведомления пакета безопасности . Уведомление может происходить через фиксированные интервалы, при сигнале объекта события или во время определенных системных событий.

Синтаксис

LSA_REGISTER_NOTIFICATION LsaRegisterNotification;

HANDLE LsaRegisterNotification(
  [in] SEC_THREAD_START StartFunction,
  [in] PVOID Parameter,
  [in] ULONG NotificationType,
  [in] ULONG NotificationClass,
  [in] ULONG NotificationFlags,
  [in] ULONG IntervalMinutes,
  [in] HANDLE WaitEvent
)
{...}

Параметры

[in] StartFunction

Функция, вызываемая для принятия уведомлений.

[in] Parameter

Аргумент функции, указанной в параметре StartFunction .

[in] NotificationType

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

Значение Значение
NOTIFIER_TYPE_INTERVAL
Уведомлять через фиксированные интервалы. Используйте параметр IntervalMinutes , чтобы указать длину интервала.
NOTIFIER_TYPE_HANDLE_WAIT
Уведомлять о сигнале дескриптора события, указанного параметром WaitEvent .
NOTIFIER_TYPE_STATE_CHANGE
Уведомлять об изменении домена или типа установки компьютера.
NOTIFIER_TYPE_NOTIFY_EVENT
Уведомлять о возникновении события безопасности. Используйте параметр NotificationClass , чтобы указать интересующее событие.
NOTIFIER_TYPE_IMMEDIATE
Немедленное уведомление. Это значение подразумевает NOTIFIER_FLAG_ONE_SHOT.

[in] NotificationClass

Указывает класс событий, создающих уведомления. Укажите ноль, если для параметра NotificationType не задано значение NOTIFIER_TYPE_NOTIFY_EVENT.

Значение Значение
NOTIFY_CLASS_PACKAGE_CHANGE
Пакет был загружен или выбран новый пакет в качестве предпочтительного пакета. Дополнительные сведения см. в подразделе "Примечания".
NOTIFY_CLASS_ROLE_CHANGE
Зарезервировано для внутреннего использования.
NOTIFY_CLASS_DOMAIN_CHANGE
Зарезервировано для внутреннего использования.

[in] NotificationFlags

Задает флаги, управляющие поведением уведомлений.

Значение Значение
NOTIFIER_FLAG_NEW_THREAD
Дождитесь уведомления с помощью нового потока.
NOTIFIER_FLAG_ONE_SHOT
Уведомлять только один раз.
NOTIFIER_FLAG_SECONDS
Параметр IntervalMinutes указывает секунды.

[in] IntervalMinutes

Указывает временную задержку между уведомлениями.

[in] WaitEvent

Необязательный элемент. Дескриптор объекта события. Когда объект получает сигнал, происходит уведомление. Это значение используется в сочетании со значением NotificationType NOTIFIER_TYPE_HANDLE_WAIT.

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

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

Если функция завершается сбоем, возвращается значение NULL.

Комментарии

Если указать значение NOTIFY_CLASS_PACKAGE_CHANGE для параметра NotificationClass , следующие значения представляют допустимые изменения.

Значение Описание
SECPKG_PACKAGE_CHANGE_LOAD Пакет загружен.
SECPKG_PACKAGE_CHANGE_UNLOAD Пакет выгружен.
SECPKG_PACKAGE_CHANGE_SELECT Новый пакет стал предпочтительным пакетом безопасности.
 

Указатель на функцию RegisterNotification доступен в структуре LSA_SECPKG_FUNCTION_TABLE , полученной функцией SpInitialize .

Требования

Требование Значение
Минимальная версия клиента Windows XP [только классические приложения]
Минимальная версия сервера Windows Server 2003 [только классические приложения]
Целевая платформа Windows
Header ntsecpkg.h

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

LSA_SECPKG_FUNCTION_TABLE

SpInitialize