事件處理常式函式原型回呼函式
[事件處理常式原型函式已不再可供 Windows Server 2008 和 Windows Vista 使用。 ]
事件處理常式原型函式會用於處理 Winlogon 通知事件的所有函式。 由預留位置 Event_Handler_Function_Name所代表的函式名稱,通常會反映函式處理的事件名稱。 例如,處理登入事件的函式可能會命名為: WLEventLogon。
語法
void Event_Handler_Function_Name(
_In_ PWLX_NOTIFICATION_INFO pInfo
);
參數
-
pInfo [in]
-
包含事件詳細資料的 WLX_NOTIFICATION_INFO 結構的指標。
傳回值
這個回呼函式不會傳回值。
備註
如果您的事件處理常式需要建立子進程,它應該呼叫 CreateProcessAsUser 函 式。 否則,新的程式將會在 Winlogon 桌面上建立,而不是使用者的桌面。
範例
下列範例示範如何實作 Winlogon 事件的事件處理常式。 為了簡單起見,只會顯示 Logon 和 Logoff 事件處理常式的實作。 您可以以完全相同的方式實作其餘事件的處理常式。
// Copyright (C) Microsoft. All rights reserved.
#include <windows.h>
// Here is the entrance function for the DLL.
BOOL WINAPI LibMain(HINSTANCE hInstance, DWORD dwReason, LPVOID lpReserved)
{
switch (dwReason)
{
case DLL_PROCESS_ATTACH:
{
// Disable DLL_THREAD_ATTACH & DLL_THREAD_DETACH
// notification calls. This is a performance optimization
// for multithreaded applications that do not need
// thread-level notifications of attachment or
// detachment.
DisableThreadLibraryCalls (hInstance);
}
break;
}
return TRUE;
}
// Here is the event handler for the Winlogon Logon event.
void WLEventLogon (PWLX_NOTIFICATION_INFO pInfo)
{
// Print the name of the handler to debug output.
// You can replace this with more useful functionality.
OutputDebugString (TEXT("NOTIFY: Entering WLEventLogon.\r\n"));
}
// Here is the event handler for the Winlogon Logoff event.
void WLEventLogoff (PWLX_NOTIFICATION_INFO pInfo)
{
// Print the name of the handler to debug output.
// You can replace this with more useful functionality.
OutputDebugString (TEXT("NOTIFY: Entering WLEventLogff.\r\n"));
}
規格需求
需求 | 值 |
---|---|
最低支援的用戶端 |
Windows XP [僅限傳統型應用程式] |
最低支援的伺服器 |
Windows Server 2003 [僅限桌面應用程式] |
用戶端支援結束 |
Windows XP |
伺服器終止支援 |
Windows Server 2003 |