2010-02-26 11:43:19 +00:00
|
|
|
#pragma once
|
2006-02-17 00:04:10 +00:00
|
|
|
|
2006-08-02 21:01:37 +00:00
|
|
|
#include <windows.h>
|
2007-08-13 14:20:36 +00:00
|
|
|
#include <userenv.h>
|
2006-08-02 21:01:37 +00:00
|
|
|
#include <winwlx.h>
|
|
|
|
#include "resource.h"
|
2006-02-17 00:04:10 +00:00
|
|
|
|
2006-08-04 19:44:35 +00:00
|
|
|
/* Values for GINA_CONTEXT.AutoLogonState */
|
|
|
|
#define AUTOLOGON_CHECK_REGISTRY 1
|
|
|
|
#define AUTOLOGON_ONCE 2
|
|
|
|
#define AUTOLOGON_DISABLED 3
|
|
|
|
|
|
|
|
typedef struct
|
|
|
|
{
|
2006-08-02 21:01:37 +00:00
|
|
|
HANDLE hWlx;
|
|
|
|
LPWSTR station;
|
|
|
|
PWLX_DISPATCH_VERSION_1_3 pWlxFuncs;
|
|
|
|
HANDLE hDllInstance;
|
|
|
|
HWND hStatusWindow;
|
2006-08-04 19:44:35 +00:00
|
|
|
DWORD AutoLogonState;
|
2006-08-02 21:01:37 +00:00
|
|
|
|
|
|
|
/* Informations to be filled during logon */
|
2006-08-10 18:41:23 +00:00
|
|
|
HANDLE UserToken;
|
2006-08-02 21:01:37 +00:00
|
|
|
PLUID pAuthenticationId;
|
|
|
|
PDWORD pdwOptions;
|
2007-08-13 14:54:14 +00:00
|
|
|
PWLX_MPR_NOTIFY_INFO pMprNotifyInfo;
|
2006-08-02 21:01:37 +00:00
|
|
|
PVOID *pProfile;
|
2006-08-03 13:54:44 +00:00
|
|
|
|
|
|
|
/* Current logo to display */
|
|
|
|
HBITMAP hBitmap;
|
2006-02-17 00:04:10 +00:00
|
|
|
} GINA_CONTEXT, *PGINA_CONTEXT;
|
|
|
|
|
2009-10-18 18:52:56 +00:00
|
|
|
extern HINSTANCE hDllInstance;
|
2006-02-17 00:04:10 +00:00
|
|
|
|
2006-08-02 21:01:37 +00:00
|
|
|
typedef BOOL (*PFGINA_INITIALIZE)(PGINA_CONTEXT);
|
|
|
|
typedef BOOL (*PFGINA_DISPLAYSTATUSMESSAGE)(PGINA_CONTEXT, HDESK, DWORD, PWSTR, PWSTR);
|
2006-08-04 19:44:35 +00:00
|
|
|
typedef BOOL (*PFGINA_REMOVESTATUSMESSAGE)(PGINA_CONTEXT);
|
2006-08-02 21:01:37 +00:00
|
|
|
typedef VOID (*PFGINA_DISPLAYSASNOTICE)(PGINA_CONTEXT);
|
|
|
|
typedef INT (*PFGINA_LOGGEDONSAS)(PGINA_CONTEXT, DWORD);
|
|
|
|
typedef INT (*PFGINA_LOGGEDOUTSAS)(PGINA_CONTEXT);
|
2006-08-10 18:41:23 +00:00
|
|
|
typedef INT (*PFGINA_LOCKEDSAS)(PGINA_CONTEXT);
|
2006-08-02 21:01:37 +00:00
|
|
|
typedef struct _GINA_UI
|
|
|
|
{
|
|
|
|
PFGINA_INITIALIZE Initialize;
|
|
|
|
PFGINA_DISPLAYSTATUSMESSAGE DisplayStatusMessage;
|
2006-08-04 19:44:35 +00:00
|
|
|
PFGINA_REMOVESTATUSMESSAGE RemoveStatusMessage;
|
2006-08-02 21:01:37 +00:00
|
|
|
PFGINA_DISPLAYSASNOTICE DisplaySASNotice;
|
|
|
|
PFGINA_LOGGEDONSAS LoggedOnSAS;
|
|
|
|
PFGINA_LOGGEDOUTSAS LoggedOutSAS;
|
2006-08-10 18:41:23 +00:00
|
|
|
PFGINA_LOCKEDSAS LockedSAS;
|
2006-08-02 21:01:37 +00:00
|
|
|
} GINA_UI, *PGINA_UI;
|
|
|
|
|
|
|
|
/* msgina.c */
|
|
|
|
|
|
|
|
BOOL
|
|
|
|
DoLoginTasks(
|
|
|
|
IN OUT PGINA_CONTEXT pgContext,
|
|
|
|
IN PWSTR UserName,
|
|
|
|
IN PWSTR Domain,
|
|
|
|
IN PWSTR Password);
|
|
|
|
|
2006-02-17 00:04:10 +00:00
|
|
|
/* EOF */
|