mirror of
https://github.com/reactos/reactos.git
synced 2024-12-28 10:04:49 +00:00
added header file for msgina
svn path=/trunk/; revision=6778
This commit is contained in:
parent
2432b2c7e8
commit
7dde2ec587
1 changed files with 666 additions and 0 deletions
666
reactos/include/WinWlx.h
Normal file
666
reactos/include/WinWlx.h
Normal file
|
@ -0,0 +1,666 @@
|
|||
/*
|
||||
* WinWlx.h
|
||||
*
|
||||
* WinLogon eXtension
|
||||
*
|
||||
* Contributors:
|
||||
* Created by Thomas Weidenmueller <w3seek@users.sourceforge.net>
|
||||
*
|
||||
* THIS SOFTWARE IS NOT COPYRIGHTED
|
||||
*
|
||||
* This source code is offered for use in the public domain. You may
|
||||
* use, modify or distribute it freely.
|
||||
*
|
||||
* This code is distributed in the hope that it will be useful but
|
||||
* WITHOUT ANY WARRANTY. ALL WARRANTIES, EXPRESS OR IMPLIED ARE HEREBY
|
||||
* DISCLAIMED. This includes but is not limited to warranties of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
|
||||
*
|
||||
*/
|
||||
|
||||
#ifndef __WINWLX_H
|
||||
#define __WINWLX_H
|
||||
|
||||
#if __GNUC__ >=3
|
||||
#pragma GCC system_header
|
||||
#endif
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
#pragma pack(push,4)
|
||||
|
||||
|
||||
#define WLX_VERSION_1_0 (0x00010000)
|
||||
#define WLX_VERSION_1_1 (0x00010001)
|
||||
#define WLX_VERSION_1_2 (0x00010002)
|
||||
#define WLX_VERSION_1_3 (0x00010003)
|
||||
#define WLX_VERSION_1_4 (0x00010004)
|
||||
#define WLX_CURRENT_VERSION (WLX_VERSION_1_4)
|
||||
|
||||
#define WLX_SAS_TYPE_TIMEOUT (0x0000)
|
||||
#define WLX_SAS_TYPE_CTRL_ALT_DEL (0x0001)
|
||||
#define WLX_SAS_TYPE_SCRNSVR_TIMEOUT (0x0002)
|
||||
#define WLX_SAS_TYPE_SCRNSVR_ACTIVITY (0x0003)
|
||||
#define WLX_SAS_TYPE_USER_LOGOFF (0x0004)
|
||||
#define WLX_SAS_TYPE_SC_INSERT (0x0005)
|
||||
#define WLX_SAS_TYPE_SC_REMOVE (0x0006)
|
||||
#define WLX_SAS_TYPE_AUTHENTICATED (0x0007)
|
||||
#define WLX_SAS_TYPE_SC_FIRST_READER_ARRIVED (0x0008)
|
||||
#define WLX_SAS_TYPE_SC_LAST_READER_REMOVED (0x0009)
|
||||
#define WLX_SAS_TYPE_SWITCHUSER (0x000A)
|
||||
#define WLX_SAS_TYPE_MAX_MSFT_VALUE (0x007F)
|
||||
|
||||
#define WLX_LOGON_OPT_NO_PROFILE (0x0001)
|
||||
|
||||
#define WLX_PROFILE_TYPE_V1_0 (0x0001)
|
||||
#define WLX_PROFILE_TYPE_V2_0 (0x0002) /* default */
|
||||
|
||||
#define WLX_SAS_ACTION_LOGON (0x0001)
|
||||
#define WLX_SAS_ACTION_NONE (0x0002)
|
||||
#define WLX_SAS_ACTION_LOCK_WKSTA (0x0003)
|
||||
#define WLX_SAS_ACTION_LOGOFF (0x0004)
|
||||
#define WLX_SAS_ACTION_SHUTDOWN (0x0005)
|
||||
#define WLX_SAS_ACTION_PWD_CHANGED (0x0006)
|
||||
#define WLX_SAS_ACTION_TASKLIST (0x0007)
|
||||
#define WLX_SAS_ACTION_UNLOCK_WKSTA (0x0008)
|
||||
#define WLX_SAS_ACTION_FORCE_LOGOFF (0x0009)
|
||||
#define WLX_SAS_ACTION_SHUTDOWN_POWER_OFF (0x000A)
|
||||
#define WLX_SAS_ACTION_SHUTDOWN_REBOOT (0x000B)
|
||||
#define WLX_SAS_ACTION_SHUTDOWN_SLEEP (0x000C)
|
||||
#define WLX_SAS_ACTION_SHUTDOWN_SLEEP2 (0x000D)
|
||||
#define WLX_SAS_ACTION_SHUTDOWN_HIBERNATE (0x000E)
|
||||
#define WLX_SAS_ACTION_RECONNECTED (0x000F)
|
||||
#define WLX_SAS_ACTION_DELAYED_FORCE_LOGOFF (0x0010)
|
||||
#define WLX_SAS_ACTION_SWITCH_CONSOLE (0x0011)
|
||||
|
||||
#define WLX_WM_SAS (WM_USER + 0x0259)
|
||||
|
||||
#define WLX_DLG_SAS (0x0065)
|
||||
#define WLX_DLG_INPUT_TIMEOUT (0x0066) /* Input (keys, ...) timed out */
|
||||
#define WLX_DLG_SCREEN_SAVER_TIMEOUT (0x0067) /* Screen saver activated */
|
||||
#define WLX_DLG_USER_LOGOFF (0x0068) /* User logged off */
|
||||
|
||||
#define WLX_DIRECTORY_LENGTH (0x0100)
|
||||
|
||||
#define WLX_CREDENTIAL_TYPE_V1_0 (0x0001)
|
||||
#define WLX_CREDENTIAL_TYPE_V2_0 (0x0002)
|
||||
|
||||
#define WLX_CONSOLESWITCHCREDENTIAL_TYPE_V1_0 (0x0001)
|
||||
|
||||
#define STATUSMSG_OPTION_NOANIMATION (0x0001)
|
||||
#define STATUSMSG_OPTION_SETFOREGROUND (0x0002)
|
||||
|
||||
|
||||
typedef
|
||||
struct _WLX_CLIENT_CREDENTIALS_INFO
|
||||
{
|
||||
DWORD dwType;
|
||||
PWSTR pszUserName;
|
||||
PWSTR pszDomain;
|
||||
PWSTR pszPassword;
|
||||
BOOL fPromptForPassword;
|
||||
} WLX_CLIENT_CREDENTIALS_INFO_V1_0, *PWLX_CLIENT_CREDENTIALS_INFO_V1_0;
|
||||
|
||||
typedef
|
||||
struct _WLX_CLIENT_CREDENTIALS_INFO_2_0
|
||||
{
|
||||
DWORD dwType;
|
||||
PWSTR pszUserName;
|
||||
PWSTR pszDomain;
|
||||
PWSTR pszPassword;
|
||||
BOOL fPromptForPassword;
|
||||
BOOL fDisconnectOnLogonFailure;
|
||||
} WLX_CLIENT_CREDENTIALS_INFO_V2_0, *PWLX_CLIENT_CREDENTIALS_INFO_V2_0;
|
||||
|
||||
typedef
|
||||
struct _WLX_CONSOLESWITCH_CREDENTIALS_INFO
|
||||
{
|
||||
DWORD dwType;
|
||||
HANDLE UserToken;
|
||||
LUID LogonId;
|
||||
QUOTA_LIMITS Quotas;
|
||||
PWSTR UserName;
|
||||
PWSTR Domain;
|
||||
LARGE_INTEGER LogonTime;
|
||||
BOOL SmartCardLogon;
|
||||
ULONG ProfileLength;
|
||||
DWORD MessageType;
|
||||
USHORT LogonCount;
|
||||
USHORT BadPasswordCount;
|
||||
LARGE_INTEGER ProfileLogonTime;
|
||||
LARGE_INTEGER LogoffTime;
|
||||
LARGE_INTEGER KickOffTime;
|
||||
LARGE_INTEGER PasswordLastSet;
|
||||
LARGE_INTEGER PasswordCanChange;
|
||||
LARGE_INTEGER PasswordMustChange;
|
||||
PWSTR LogonScript;
|
||||
PWSTR HomeDirectory;
|
||||
PWSTR FullName;
|
||||
PWSTR ProfilePath;
|
||||
PWSTR HomeDirectoryDrive;
|
||||
PWSTR LogonServer;
|
||||
ULONG UserFlags;
|
||||
ULONG PrivateDataLen;
|
||||
PBYTE PrivateData;
|
||||
} WLX_CONSOLESWITCH_CREDENTIALS_INFO_V1_0, *PWLX_CONSOLESWITCH_CREDENTIALS_INFO_V1_0;
|
||||
|
||||
typedef
|
||||
struct _WLX_MPR_NOTIFY_INFO
|
||||
{
|
||||
PWSTR pszUserName;
|
||||
PWSTR pszDomain;
|
||||
PWSTR pszPassword;
|
||||
PWSTR pszOldPassword;
|
||||
} WLX_MPR_NOTIFY_INFO, *PWLX_MPR_NOTIFY_INFO;
|
||||
|
||||
typedef
|
||||
struct _WLX_PROFILE_V1_0
|
||||
{
|
||||
DWORD dwType;
|
||||
PWSTR pszProfile;
|
||||
} WLX_PROFILE_V1_0, *PWLX_PROFILE_V1_0;
|
||||
|
||||
typedef
|
||||
struct _WLX_PROFILE_V2_0
|
||||
{
|
||||
DWORD dwType;
|
||||
PWSTR pszProfile;
|
||||
PWSTR pszPolicy;
|
||||
PWSTR pszNetworkDefaultUserProfile;
|
||||
PWSTR pszServerName;
|
||||
PWSTR pszEnvironment;
|
||||
} WLX_PROFILE_V2_0, *PWLX_PROFILE_V2_0;
|
||||
|
||||
typedef
|
||||
struct _WLX_SC_NOTIFICATION_INFO
|
||||
{
|
||||
PWSTR pszCard;
|
||||
PWSTR pszReader;
|
||||
PWSTR pszContainer;
|
||||
PWSTR pszCryptoProvider;
|
||||
} WLX_SC_NOTIFICATION_INFO, *PWLX_SC_NOTIFICATION_INFO;
|
||||
|
||||
typedef
|
||||
struct _WLX_TERMINAL_SERVICES_DATA
|
||||
{
|
||||
WCHAR ProfilePath[WLX_DIRECTORY_LENGTH + 1];
|
||||
WCHAR HomeDir[WLX_DIRECTORY_LENGTH + 1];
|
||||
WCHAR HomeDirDrive[4];
|
||||
} WLX_TERMINAL_SERVICES_DATA, *PWLX_TERMINAL_SERVICES_DATA;
|
||||
|
||||
|
||||
/* GINA Version 1.0 */
|
||||
|
||||
BOOL WINAPI
|
||||
WlxActivateUserShell(
|
||||
PVOID pWlxContext,
|
||||
PWSTR pszDesktopName,
|
||||
PWSTR pszMprLogonScript,
|
||||
PVOID pEnvironment);
|
||||
|
||||
VOID WINAPI
|
||||
WlxDisplayLockedNotice(
|
||||
PVOID pWlxContext);
|
||||
|
||||
VOID WINAPI
|
||||
WlxDisplaySASNotice(
|
||||
PVOID pWlxContext);
|
||||
|
||||
BOOL WINAPI
|
||||
WlxInitialize(
|
||||
LPWSTR lpWinsta,
|
||||
HANDLE hWlx,
|
||||
PVOID pvReserved,
|
||||
PVOID pWinlogonFunctions,
|
||||
PVOID *pWlxContext);
|
||||
|
||||
BOOL WINAPI
|
||||
WlxIsLockOk(
|
||||
PVOID pWlxContext);
|
||||
|
||||
BOOL WINAPI
|
||||
WlxIsLogoffOk(
|
||||
PVOID pWlxContext);
|
||||
|
||||
int WINAPI
|
||||
WlxLoggedOnSAS(
|
||||
PVOID pWlxContext,
|
||||
DWORD dwSasType,
|
||||
PVOID pReserved);
|
||||
|
||||
int WINAPI
|
||||
WlxLoggedOutSAS(
|
||||
PVOID pWlxContext,
|
||||
DWORD dwSasType,
|
||||
PLUID pAuthenticationId,
|
||||
PSID pLogonSid,
|
||||
PDWORD pdwOptions,
|
||||
PHANDLE phToken,
|
||||
PWLX_MPR_NOTIFY_INFO pNprNotifyInfo,
|
||||
PVOID *pProfile);
|
||||
|
||||
VOID WINAPI
|
||||
WlxLogoff(
|
||||
PVOID pWlxContext);
|
||||
|
||||
BOOL WINAPI
|
||||
WlxNegotiate(
|
||||
DWORD dwWinlogonVersion,
|
||||
PDWORD pdwDllVersion);
|
||||
|
||||
VOID WINAPI
|
||||
WlxShutdown(
|
||||
PVOID pWlxContext,
|
||||
DWORD ShutdownType);
|
||||
|
||||
int WINAPI
|
||||
WlxWkstaLockedSAS(
|
||||
PVOID pWlxContext,
|
||||
DWORD dwSasType);
|
||||
|
||||
|
||||
/* GINA Version 1.1 */
|
||||
|
||||
BOOL WINAPI
|
||||
WlxScreenSaverNotify(
|
||||
PVOID pWlxContext,
|
||||
BOOL *pSecure);
|
||||
|
||||
BOOL WINAPI
|
||||
WlxStartApplication(
|
||||
PVOID pWlxContext,
|
||||
PWSTR pszDesktopName,
|
||||
PVOID pEnvironment,
|
||||
PWSTR pszCmdLine);
|
||||
|
||||
|
||||
/* GINA Version 1.3 */
|
||||
|
||||
BOOL WINAPI
|
||||
WlxDisplayStatusMessage(
|
||||
PVOID pWlxContext,
|
||||
HDESK hDesktop,
|
||||
DWORD dwOptions,
|
||||
PWSTR pTitle,
|
||||
PWSTR pMessage);
|
||||
|
||||
BOOL WINAPI
|
||||
WlxGetStatusMessage(
|
||||
PVOID pWlxContext,
|
||||
DWORD *pdwOptions,
|
||||
PWSTR pMessage,
|
||||
DWORD dwBufferSize);
|
||||
|
||||
BOOL
|
||||
WINAPI
|
||||
WlxNetworkProviderLoad(
|
||||
PVOID pWlxContext,
|
||||
PWLX_MPR_NOTIFY_INFO pNprNotifyInfo);
|
||||
|
||||
BOOL WINAPI
|
||||
WlxRemoveStatusMessage(
|
||||
PVOID pWlxContext);
|
||||
|
||||
|
||||
/* GINA Version 1.4 */
|
||||
|
||||
VOID WINAPI
|
||||
WlxDisconnectNotify(
|
||||
PVOID pWlxContext);
|
||||
|
||||
BOOL WINAPI
|
||||
WlxGetConsoleSwitchCredentials(
|
||||
PVOID pWlxContext,
|
||||
PVOID pCredInfo);
|
||||
|
||||
VOID WINAPI
|
||||
WlxReconnectNotify(
|
||||
PVOID pWlxContext);
|
||||
|
||||
|
||||
/* Services that Winlogon provides */
|
||||
|
||||
#define WLX_DESKTOP_NAME (0x0001) /* Name present */
|
||||
#define WLX_DESKTOP_HANDLE (0x0002) /* Handle present */
|
||||
|
||||
#define WLX_CREATE_INSTANCE_ONLY (0x0001)
|
||||
#define WLX_CREATE_USER (0x0002)
|
||||
|
||||
#define WLX_OPTION_USE_CTRL_ALT_DEL (0x0001)
|
||||
#define WLX_OPTION_CONTEXT_POINTER (0x0002)
|
||||
#define WLX_OPTION_USE_SMART_CARD (0x0003)
|
||||
#define WLX_OPTION_FORCE_LOGOFF_TIME (0x0004)
|
||||
#define WLX_OPTION_IGNORE_AUTO_LOGON (0x0008)
|
||||
#define WLX_OPTION_NO_SWITCH_ON_SAS (0x0009)
|
||||
|
||||
#define WLX_OPTION_SMART_CARD_PRESENT (0x00010001)
|
||||
#define WLX_OPTION_SMART_CARD_INFO (0x00010002)
|
||||
#define WLX_OPTION_DISPATCH_TABLE_SIZE (0x00010003)
|
||||
|
||||
typedef
|
||||
struct _WLX_DESKTOP
|
||||
{
|
||||
DWORD Size;
|
||||
DWORD Flags;
|
||||
HDESK hDesktop;
|
||||
PWSTR pszDesktopName;
|
||||
} WLX_DESKTOP, *PWLX_DESKTOP;
|
||||
|
||||
typedef
|
||||
int (WINAPI *PWLX_ASSIGN_SHELL_PROTECTION)(
|
||||
HANDLE hWlx,
|
||||
HANDLE hToken,
|
||||
HANDLE hProcess,
|
||||
HANDLE hThread);
|
||||
|
||||
typedef
|
||||
BOOL (WINAPI *PWLX_CLOSE_USER_DESKTOP)(
|
||||
HANDLE hWlx,
|
||||
PWLX_DESKTOP pDesktop,
|
||||
HANDLE hToken);
|
||||
|
||||
typedef
|
||||
int (WINAPI *PWLX_CHANGE_PASSWORD_NOTIFY)(
|
||||
HANDLE hWlx,
|
||||
PWLX_MPR_NOTIFY_INFO pMprInfo,
|
||||
DWORD dwChangeInfo);
|
||||
|
||||
typedef
|
||||
int (WINAPI *PWLX_CHANGE_PASSWORD_NOTIFY_EX)(
|
||||
HANDLE hWlx,
|
||||
PWLX_MPR_NOTIFY_INFO pMprInfo,
|
||||
DWORD dwChangeInfo,
|
||||
PWSTR ProviderName,
|
||||
PVOID Reserved);
|
||||
|
||||
typedef
|
||||
BOOL (WINAPI *PWLX_CREATE_USER_DESKTOP)(
|
||||
HANDLE hWlx,
|
||||
HANDLE hToken,
|
||||
DWORD Flags,
|
||||
PWSTR pszDesktopName,
|
||||
PWLX_DESKTOP *ppDesktop);
|
||||
|
||||
typedef
|
||||
int (WINAPI *PWLX_DIALOG_BOX)(
|
||||
HANDLE hWlx,
|
||||
HANDLE hInst,
|
||||
LPWSTR lpszTemplate,
|
||||
HWND hwndOwner,
|
||||
DLGPROC dlgprc);
|
||||
|
||||
typedef
|
||||
int (WINAPI *PWLX_DIALOG_BOX_INDIRECT)(
|
||||
HANDLE hWlx,
|
||||
HANDLE hInst,
|
||||
LPCDLGTEMPLATE hDialogTemplate,
|
||||
HWND hwndOwner,
|
||||
DLGPROC dlgprc);
|
||||
|
||||
typedef
|
||||
int (WINAPI *PWLX_DIALOG_BOX_INDIRECT_PARAM)(
|
||||
HANDLE hWlx,
|
||||
HANDLE hInst,
|
||||
LPCDLGTEMPLATE hDialogTemplate,
|
||||
HWND hwndOwner,
|
||||
DLGPROC dlgprc,
|
||||
LPARAM dwInitParam);
|
||||
|
||||
typedef
|
||||
int (WINAPI *PWLX_DIALOG_BOX_PARAM)(
|
||||
HANDLE hWlx,
|
||||
HANDLE hInst,
|
||||
LPWSTR lpszTemplate,
|
||||
HWND hwndOwner,
|
||||
DLGPROC dlgprc,
|
||||
LPARAM dwInitParam);
|
||||
|
||||
typedef
|
||||
BOOL (WINAPI *PWLX_DISCONNECT)();
|
||||
|
||||
typedef
|
||||
BOOL (WINAPI *PWLX_GET_OPTION)(
|
||||
HANDLE hWlx,
|
||||
DWORD Option,
|
||||
ULONG_PTR *Value);
|
||||
|
||||
typedef
|
||||
BOOL (WINAPI *PWLX_GET_SOURCE_DESKTOP)(
|
||||
HANDLE hWlx,
|
||||
PWLX_DESKTOP *ppDesktop);
|
||||
|
||||
typedef
|
||||
int (WINAPI *PWLX_MESSAGE_BOX)(
|
||||
HANDLE hWlx,
|
||||
HWND hwndOwner,
|
||||
LPWSTR lpszText,
|
||||
LPWSTR lpszTitle,
|
||||
UINT fuStyle);
|
||||
|
||||
typedef
|
||||
BOOL (WINAPI *PWLX_QUERY_CLIENT_CREDENTIALS)(
|
||||
PWLX_CLIENT_CREDENTIALS_INFO_V1_0 pCred);
|
||||
|
||||
typedef
|
||||
DWORD (WINAPI *PWLX_QUERY_CONSOLESWITCH_CREDENTIALS)(
|
||||
PWLX_CONSOLESWITCH_CREDENTIALS_INFO_V1_0 pCred);
|
||||
|
||||
typedef
|
||||
BOOL (WINAPI *PWLX_QUERY_IC_CREDENTIALS)(
|
||||
PWLX_CLIENT_CREDENTIALS_INFO_V1_0 pCred);
|
||||
|
||||
typedef
|
||||
DWORD (WINAPI *PWLX_QUERY_TERMINAL_SERVICES_DATA)(
|
||||
HANDLE hWlx,
|
||||
PWLX_TERMINAL_SERVICES_DATA pTSData,
|
||||
WCHAR *UserName,
|
||||
WCHAR *Domain);
|
||||
|
||||
typedef
|
||||
BOOL (WINAPI *PWLX_QUERY_TS_LOGON_CREDENTIALS)(
|
||||
PWLX_CLIENT_CREDENTIALS_INFO_V2_0 pCred);
|
||||
|
||||
typedef
|
||||
VOID (WINAPI *PWLX_SAS_NOTIFY)(
|
||||
HANDLE hWlx,
|
||||
DWORD dwSasType);
|
||||
|
||||
typedef
|
||||
VOID (WINAPI *PWLX_SET_CONTEXT_POINTER)(
|
||||
HANDLE hWlx,
|
||||
PVOID pWlxContext);
|
||||
|
||||
typedef
|
||||
BOOL (WINAPI *PWLX_SET_RETURN_DESKTOP)(
|
||||
HANDLE hWlx,
|
||||
PWLX_DESKTOP pDesktop);
|
||||
|
||||
typedef
|
||||
BOOL (WINAPI *PWLX_SET_OPTION)(
|
||||
HANDLE hWlx,
|
||||
DWORD Option,
|
||||
ULONG_PTR Value,
|
||||
ULONG_PTR *OldValue);
|
||||
|
||||
typedef
|
||||
BOOL (WINAPI *PWLX_SET_TIMEOUT)(
|
||||
HANDLE hWlx,
|
||||
DWORD Timeout);
|
||||
|
||||
typedef
|
||||
int (WINAPI *PWLX_SWITCH_DESKTOP_TO_USER)(
|
||||
HANDLE hWlx);
|
||||
|
||||
typedef
|
||||
int (WINAPI *PWLX_SWITCH_DESKTOP_TO_WINLOGON)(
|
||||
HANDLE hWlx);
|
||||
|
||||
typedef
|
||||
VOID (WINAPI *PWLX_USE_CTRL_ALT_DEL)(
|
||||
HANDLE hWlx);
|
||||
|
||||
typedef
|
||||
VOID (WINAPI *PWLX_WIN31_MIGRATE)(
|
||||
HANDLE hWlx);
|
||||
|
||||
|
||||
/* function dispatch tables */
|
||||
|
||||
typedef
|
||||
struct _WLX_DISPATCH_VERSION_1_0
|
||||
{
|
||||
PWLX_USE_CTRL_ALT_DEL WlxUseCtrlAltDel;
|
||||
PWLX_SET_CONTEXT_POINTER WlxSetContextPointer;
|
||||
PWLX_SAS_NOTIFY WlxSasNotify;
|
||||
PWLX_SET_TIMEOUT WlxSetTimeout;
|
||||
PWLX_ASSIGN_SHELL_PROTECTION WlxAssignShellProtection;
|
||||
PWLX_MESSAGE_BOX WlxMessageBox;
|
||||
PWLX_DIALOG_BOX WlxDialogBox;
|
||||
PWLX_DIALOG_BOX_PARAM WlxDialogBoxParam;
|
||||
PWLX_DIALOG_BOX_INDIRECT WlxDialogBoxIndirect;
|
||||
PWLX_DIALOG_BOX_INDIRECT_PARAM WlxDialogBoxIndirectParam;
|
||||
PWLX_SWITCH_DESKTOP_TO_USER WlxSwitchDesktopToUser;
|
||||
PWLX_SWITCH_DESKTOP_TO_WINLOGON WlxSwitchDesktopToWinlogon;
|
||||
PWLX_CHANGE_PASSWORD_NOTIFY WlxChangePasswordNotify;
|
||||
} WLX_DISPATCH_VERSION_1_0, *PWLX_DISPATCH_VERSION_1_0;
|
||||
|
||||
typedef
|
||||
struct _WLX_DISPATCH_VERSION_1_1
|
||||
{
|
||||
PWLX_USE_CTRL_ALT_DEL WlxUseCtrlAltDel;
|
||||
PWLX_SET_CONTEXT_POINTER WlxSetContextPointer;
|
||||
PWLX_SAS_NOTIFY WlxSasNotify;
|
||||
PWLX_SET_TIMEOUT WlxSetTimeout;
|
||||
PWLX_ASSIGN_SHELL_PROTECTION WlxAssignShellProtection;
|
||||
PWLX_MESSAGE_BOX WlxMessageBox;
|
||||
PWLX_DIALOG_BOX WlxDialogBox;
|
||||
PWLX_DIALOG_BOX_PARAM WlxDialogBoxParam;
|
||||
PWLX_DIALOG_BOX_INDIRECT WlxDialogBoxIndirect;
|
||||
PWLX_DIALOG_BOX_INDIRECT_PARAM WlxDialogBoxIndirectParam;
|
||||
PWLX_SWITCH_DESKTOP_TO_USER WlxSwitchDesktopToUser;
|
||||
PWLX_SWITCH_DESKTOP_TO_WINLOGON WlxSwitchDesktopToWinlogon;
|
||||
PWLX_CHANGE_PASSWORD_NOTIFY WlxChangePasswordNotify;
|
||||
PWLX_GET_SOURCE_DESKTOP WlxGetSourceDesktop;
|
||||
PWLX_SET_RETURN_DESKTOP WlxSetReturnDesktop;
|
||||
PWLX_CREATE_USER_DESKTOP WlxCreateUserDesktop;
|
||||
PWLX_CHANGE_PASSWORD_NOTIFY_EX WlxChangePasswordNotifyEx;
|
||||
} WLX_DISPATCH_VERSION_1_1, *PWLX_DISPATCH_VERSION_1_1;
|
||||
|
||||
typedef
|
||||
struct _WLX_DISPATCH_VERSION_1_2
|
||||
{
|
||||
PWLX_USE_CTRL_ALT_DEL WlxUseCtrlAltDel;
|
||||
PWLX_SET_CONTEXT_POINTER WlxSetContextPointer;
|
||||
PWLX_SAS_NOTIFY WlxSasNotify;
|
||||
PWLX_SET_TIMEOUT WlxSetTimeout;
|
||||
PWLX_ASSIGN_SHELL_PROTECTION WlxAssignShellProtection;
|
||||
PWLX_MESSAGE_BOX WlxMessageBox;
|
||||
PWLX_DIALOG_BOX WlxDialogBox;
|
||||
PWLX_DIALOG_BOX_PARAM WlxDialogBoxParam;
|
||||
PWLX_DIALOG_BOX_INDIRECT WlxDialogBoxIndirect;
|
||||
PWLX_DIALOG_BOX_INDIRECT_PARAM WlxDialogBoxIndirectParam;
|
||||
PWLX_SWITCH_DESKTOP_TO_USER WlxSwitchDesktopToUser;
|
||||
PWLX_SWITCH_DESKTOP_TO_WINLOGON WlxSwitchDesktopToWinlogon;
|
||||
PWLX_CHANGE_PASSWORD_NOTIFY WlxChangePasswordNotify;
|
||||
PWLX_GET_SOURCE_DESKTOP WlxGetSourceDesktop;
|
||||
PWLX_SET_RETURN_DESKTOP WlxSetReturnDesktop;
|
||||
PWLX_CREATE_USER_DESKTOP WlxCreateUserDesktop;
|
||||
PWLX_CHANGE_PASSWORD_NOTIFY_EX WlxChangePasswordNotifyEx;
|
||||
PWLX_CLOSE_USER_DESKTOP WlxCloseUserDesktop ;
|
||||
} WLX_DISPATCH_VERSION_1_2, *PWLX_DISPATCH_VERSION_1_2;
|
||||
|
||||
typedef
|
||||
struct _WLX_DISPATCH_VERSION_1_3
|
||||
{
|
||||
PWLX_USE_CTRL_ALT_DEL WlxUseCtrlAltDel;
|
||||
PWLX_SET_CONTEXT_POINTER WlxSetContextPointer;
|
||||
PWLX_SAS_NOTIFY WlxSasNotify;
|
||||
PWLX_SET_TIMEOUT WlxSetTimeout;
|
||||
PWLX_ASSIGN_SHELL_PROTECTION WlxAssignShellProtection;
|
||||
PWLX_MESSAGE_BOX WlxMessageBox;
|
||||
PWLX_DIALOG_BOX WlxDialogBox;
|
||||
PWLX_DIALOG_BOX_PARAM WlxDialogBoxParam;
|
||||
PWLX_DIALOG_BOX_INDIRECT WlxDialogBoxIndirect;
|
||||
PWLX_DIALOG_BOX_INDIRECT_PARAM WlxDialogBoxIndirectParam;
|
||||
PWLX_SWITCH_DESKTOP_TO_USER WlxSwitchDesktopToUser;
|
||||
PWLX_SWITCH_DESKTOP_TO_WINLOGON WlxSwitchDesktopToWinlogon;
|
||||
PWLX_CHANGE_PASSWORD_NOTIFY WlxChangePasswordNotify;
|
||||
PWLX_GET_SOURCE_DESKTOP WlxGetSourceDesktop;
|
||||
PWLX_SET_RETURN_DESKTOP WlxSetReturnDesktop;
|
||||
PWLX_CREATE_USER_DESKTOP WlxCreateUserDesktop;
|
||||
PWLX_CHANGE_PASSWORD_NOTIFY_EX WlxChangePasswordNotifyEx;
|
||||
PWLX_CLOSE_USER_DESKTOP WlxCloseUserDesktop ;
|
||||
PWLX_SET_OPTION WlxSetOption;
|
||||
PWLX_GET_OPTION WlxGetOption;
|
||||
PWLX_WIN31_MIGRATE WlxWin31Migrate;
|
||||
PWLX_QUERY_CLIENT_CREDENTIALS WlxQueryClientCredentials;
|
||||
PWLX_QUERY_IC_CREDENTIALS WlxQueryInetConnectorCredentials;
|
||||
PWLX_DISCONNECT WlxDisconnect;
|
||||
PWLX_QUERY_TERMINAL_SERVICES_DATA WlxQueryTerminalServicesData;
|
||||
} WLX_DISPATCH_VERSION_1_3, *PWLX_DISPATCH_VERSION_1_3;
|
||||
|
||||
typedef
|
||||
struct _WLX_DISPATCH_VERSION_1_4
|
||||
{
|
||||
PWLX_USE_CTRL_ALT_DEL WlxUseCtrlAltDel;
|
||||
PWLX_SET_CONTEXT_POINTER WlxSetContextPointer;
|
||||
PWLX_SAS_NOTIFY WlxSasNotify;
|
||||
PWLX_SET_TIMEOUT WlxSetTimeout;
|
||||
PWLX_ASSIGN_SHELL_PROTECTION WlxAssignShellProtection;
|
||||
PWLX_MESSAGE_BOX WlxMessageBox;
|
||||
PWLX_DIALOG_BOX WlxDialogBox;
|
||||
PWLX_DIALOG_BOX_PARAM WlxDialogBoxParam;
|
||||
PWLX_DIALOG_BOX_INDIRECT WlxDialogBoxIndirect;
|
||||
PWLX_DIALOG_BOX_INDIRECT_PARAM WlxDialogBoxIndirectParam;
|
||||
PWLX_SWITCH_DESKTOP_TO_USER WlxSwitchDesktopToUser;
|
||||
PWLX_SWITCH_DESKTOP_TO_WINLOGON WlxSwitchDesktopToWinlogon;
|
||||
PWLX_CHANGE_PASSWORD_NOTIFY WlxChangePasswordNotify;
|
||||
PWLX_GET_SOURCE_DESKTOP WlxGetSourceDesktop;
|
||||
PWLX_SET_RETURN_DESKTOP WlxSetReturnDesktop;
|
||||
PWLX_CREATE_USER_DESKTOP WlxCreateUserDesktop;
|
||||
PWLX_CHANGE_PASSWORD_NOTIFY_EX WlxChangePasswordNotifyEx;
|
||||
PWLX_CLOSE_USER_DESKTOP WlxCloseUserDesktop ;
|
||||
PWLX_SET_OPTION WlxSetOption;
|
||||
PWLX_GET_OPTION WlxGetOption;
|
||||
PWLX_WIN31_MIGRATE WlxWin31Migrate;
|
||||
PWLX_QUERY_CLIENT_CREDENTIALS WlxQueryClientCredentials;
|
||||
PWLX_QUERY_IC_CREDENTIALS WlxQueryInetConnectorCredentials;
|
||||
PWLX_DISCONNECT WlxDisconnect;
|
||||
PWLX_QUERY_TERMINAL_SERVICES_DATA WlxQueryTerminalServicesData;
|
||||
PWLX_QUERY_CONSOLESWITCH_CREDENTIALS WlxQueryConsoleSwitchCredentials;
|
||||
PWLX_QUERY_TS_LOGON_CREDENTIALS WlxQueryTsLogonCredentials;
|
||||
} WLX_DISPATCH_VERSION_1_4, *PWLX_DISPATCH_VERSION_1_4;
|
||||
|
||||
|
||||
/* non-GINA notification DLLs*/
|
||||
|
||||
typedef
|
||||
DWORD (*PFNMSGECALLBACK)(
|
||||
BOOL bVerbose,
|
||||
LPWSTR lpMessage);
|
||||
|
||||
typedef
|
||||
struct _WLX_NOTIFICATION_INFO
|
||||
{
|
||||
ULONG Size;
|
||||
ULONG Flags;
|
||||
PWSTR UserName;
|
||||
PWSTR Domain;
|
||||
PWSTR WindowStation;
|
||||
HANDLE hToken;
|
||||
HDESK hDesktop;
|
||||
PFNMSGECALLBACK pStatusCallback;
|
||||
} WLX_NOTIFICATION_INFO, *PWLX_NOTIFICATION_INFO;
|
||||
|
||||
|
||||
#pragma pack(pop)
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
||||
#endif /*__WINWLX_H */
|
||||
|
||||
/* EOF */
|
Loading…
Reference in a new issue