[WLNOTIFY]

Add the winlogon notification dll.
Right now it exports only test functions for the winlogon notifications.

svn path=/trunk/; revision=68722
This commit is contained in:
Eric Kohl 2015-08-16 19:11:21 +00:00
parent 170f294d1c
commit c332df16c6
8 changed files with 109 additions and 0 deletions

View file

@ -40,6 +40,7 @@ set(baseaddress_avicap32 0x75b10000)
set(baseaddress_cabinet 0x75ac0000)
set(baseaddress_dsound 0x75a50000)
set(baseaddress_glu32 0x75950000)
set(baseaddress_wlnotify 0x758f0000)
set(baseaddress_opengl32 0x75720000)
set(baseaddress_riched20 0x75690000)
set(baseaddress_smdll 0x75670000)

View file

@ -40,6 +40,7 @@ set(baseaddress_avicap32 0x752f0000)
set(baseaddress_cabinet 0x75290000)
set(baseaddress_dsound 0x751f0000)
set(baseaddress_glu32 0x750a0000)
set(baseaddress_wlnotify 0x75040000)
set(baseaddress_opengl32 0x74d90000)
set(baseaddress_riched20 0x74cd0000)
set(baseaddress_smdll 0x74cb0000)

View file

@ -0,0 +1,17 @@
spec2def(wlnotify.dll wlnotify.spec ADD_IMPORTLIB)
list(APPEND SOURCE
test.c
wlnotify.c
precomp.h)
add_library(wlnotify SHARED
${SOURCE}
wlnotify.rc
${CMAKE_CURRENT_BINARY_DIR}/wlnotify.def)
set_module_type(wlnotify win32dll UNICODE ENTRYPOINT DllMain 12)
add_importlibs(wlnotify kernel32 ntdll)
add_pch(wlnotify precomp.h SOURCE)
add_cd_file(TARGET wlnotify DESTINATION reactos/system32 FOR all)

View file

@ -0,0 +1,3 @@
/**/
#include <windows.h>
#include <winwlx.h>

View file

@ -0,0 +1,48 @@
/*
* PROJECT: ReactOS system libraries
* LICENSE: GPL - See COPYING in the top level directory
* FILE: dll/win32/wlnotify/test.c
* PURPOSE: Winlogon notifications
* PROGRAMMER: Eric Kohl
*/
#include "precomp.h"
#define _NDEBUG
#include <debug.h>
VOID
WINAPI
TestLogonEvent(
PWLX_NOTIFICATION_INFO pInfo)
{
DPRINT1("TestLogonEvent\n");
DPRINT1("Size: %lu\n", pInfo->Size);
DPRINT1("Flags: %lx\n", pInfo->Flags);
DPRINT1("UserName: %S\n", pInfo->UserName);
DPRINT1("Domain: %S\n", pInfo->Domain);
DPRINT1("WindowStation: %S\n", pInfo->WindowStation);
DPRINT1("hToken: %p\n", pInfo->hToken);
DPRINT1("hDesktop: %p\n", pInfo->hDesktop);
DPRINT1("pStatusCallback: %p\n", pInfo->pStatusCallback);
}
VOID
WINAPI
TestLogoffEvent(
PWLX_NOTIFICATION_INFO pInfo)
{
DPRINT1("TestLogoffEvent\n");
DPRINT1("Size: %lu\n", pInfo->Size);
DPRINT1("Flags: %lx\n", pInfo->Flags);
DPRINT1("UserName: %S\n", pInfo->UserName);
DPRINT1("Domain: %S\n", pInfo->Domain);
DPRINT1("WindowStation: %S\n", pInfo->WindowStation);
DPRINT1("hToken: %p\n", pInfo->hToken);
DPRINT1("hDesktop: %p\n", pInfo->hDesktop);
DPRINT1("pStatusCallback: %p\n", pInfo->pStatusCallback);
}
/* EOF */

View file

@ -0,0 +1,32 @@
/*
* PROJECT: ReactOS system libraries
* LICENSE: GPL - See COPYING in the top level directory
* FILE: dll/win32/wlnotify/wlnotify.c
* PURPOSE: Winlogon notifications
* PROGRAMMER: Eric Kohl
*/
#include "precomp.h"
#define _NDEBUG
#include <debug.h>
BOOL
WINAPI
DllMain(
HINSTANCE hInstance,
DWORD dwReason,
LPVOID lpReserved)
{
switch (dwReason)
{
case DLL_PROCESS_ATTACH:
DisableThreadLibraryCalls(hInstance);
break;
}
return TRUE;
}
/* EOF */

View file

@ -0,0 +1,5 @@
#define REACTOS_VERSION_DLL
#define REACTOS_STR_FILE_DESCRIPTION "Common DLL to receive Winlogon notifications"
#define REACTOS_STR_INTERNAL_NAME "wlnotify"
#define REACTOS_STR_ORIGINAL_FILENAME "wlnotify.dll"
#include <reactos/version.rc>

View file

@ -0,0 +1,2 @@
@ stdcall TestLogonEvent(ptr)
@ stdcall TestLogoffEvent(ptr)