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

備註

如果您指定 NotificationClass 參數的NOTIFY_CLASS_PACKAGE_CHANGE值,下列值代表有效的變更。

Description
SECPKG_PACKAGE_CHANGE_LOAD 已載入套件。
SECPKG_PACKAGE_CHANGE_UNLOAD 封裝已卸除。
SECPKG_PACKAGE_CHANGE_SELECT 新的套件已成為慣用 的安全性套件
 

RegisterNotification 函式的指標可在 SpInitialize 函式收到的LSA_SECPKG_FUNCTION_TABLE結構中使用。

規格需求

需求
最低支援的用戶端 Windows XP [僅限傳統型應用程式]
最低支援的伺服器 Windows Server 2003 [僅限桌面應用程式]
目標平台 Windows
標頭 ntsecpkg.h

另請參閱

LSA_SECPKG_FUNCTION_TABLE

SpInitialize