244 lines
11 KiB
C#
244 lines
11 KiB
C#
/*
|
|
* Copyright (c) 2022 ETH Zürich, Educational Development and Technology (LET)
|
|
*
|
|
* This Source Code Form is subject to the terms of the Mozilla Public
|
|
* License, v. 2.0. If a copy of the MPL was not distributed with this
|
|
* file, You can obtain one at http://mozilla.org/MPL/2.0/.
|
|
*/
|
|
|
|
namespace SafeExamBrowser.WindowsApi.Constants
|
|
{
|
|
internal static class Constant
|
|
{
|
|
/// <summary>
|
|
/// A window has received mouse capture. This event is sent by the system, never by servers.
|
|
///
|
|
/// See https://msdn.microsoft.com/en-us/library/windows/desktop/dd318066(v=vs.85).aspx.
|
|
/// </summary>
|
|
internal const uint EVENT_SYSTEM_CAPTURESTART = 0x8;
|
|
|
|
/// <summary>
|
|
/// The foreground window has changed. The system sends this event even if the foreground window has changed to another window in
|
|
/// the same thread. Server applications never send this event.
|
|
/// For this event, the WinEventProc callback function's hwnd parameter is the handle to the window that is in the foreground, the
|
|
/// idObject parameter is OBJID_WINDOW, and the idChild parameter is CHILDID_SELF.
|
|
///
|
|
/// See https://msdn.microsoft.com/en-us/library/windows/desktop/dd318066(v=vs.85).aspx.
|
|
/// </summary>
|
|
internal const uint EVENT_SYSTEM_FOREGROUND = 0x3;
|
|
|
|
/// <summary>
|
|
/// The large icon of a window. See https://docs.microsoft.com/en-us/windows/win32/winmsg/wm-geticon#parameters.
|
|
/// </summary>
|
|
internal const int ICON_BIG = 1;
|
|
|
|
/// <summary>
|
|
/// The small icon of a window. See https://docs.microsoft.com/en-us/windows/win32/winmsg/wm-geticon#parameters.
|
|
/// </summary>
|
|
internal const int ICON_SMALL = 0;
|
|
|
|
/// <summary>
|
|
/// The small icon of an application. If an application does not provide one, the system uses a system-generated icon for a window.
|
|
/// See https://docs.microsoft.com/en-us/windows/win32/winmsg/wm-geticon#parameters.
|
|
/// </summary>
|
|
internal const int ICON_SMALL2 = 2;
|
|
|
|
/// <summary>
|
|
/// Minimize all open windows.
|
|
/// </summary>
|
|
internal const int MIN_ALL = 419;
|
|
|
|
/// <summary>
|
|
/// Bitmask to evaluate the origin of a mouse event.
|
|
///
|
|
/// See https://docs.microsoft.com/en-us/windows/desktop/tablet/system-events-and-mouse-messages.
|
|
/// </summary>
|
|
internal const uint MOUSEEVENTF_MASK = 0xFFFFFF00;
|
|
|
|
/// <summary>
|
|
/// The constant for a mouse event generated by a touch interface.
|
|
///
|
|
/// See https://docs.microsoft.com/en-us/windows/desktop/tablet/system-events-and-mouse-messages.
|
|
/// </summary>
|
|
internal const uint MOUSEEVENTF_FROMTOUCH = 0xFF515700;
|
|
|
|
/// <summary>
|
|
/// Specifies the default priority class for processes, i.e. a process with no special scheduling needs.
|
|
///
|
|
/// See https://msdn.microsoft.com/en-us/library/windows/desktop/ms686219(v=vs.85).aspx.
|
|
/// </summary>
|
|
internal const int NORMAL_PRIORITY_CLASS = 0x20;
|
|
|
|
/// <summary>
|
|
/// Standard access rights required for a desktop.
|
|
///
|
|
/// See https://docs.microsoft.com/de-de/windows/desktop/SecAuthZ/standard-access-rights.
|
|
/// </summary>
|
|
internal const int STANDARD_RIGHTS_REQUIRED = 0xF0000;
|
|
|
|
/// <summary>
|
|
/// The constant for the name of a user object.
|
|
///
|
|
/// See https://msdn.microsoft.com/en-us/library/windows/desktop/ms683238(v=vs.85).aspx.
|
|
/// </summary>
|
|
internal const int UOI_NAME = 2;
|
|
|
|
/// <summary>
|
|
/// The callback function is not mapped into the address space of the process that generates the event. Because the hook function
|
|
/// is called across process boundaries, the system must queue events. Although this method is asynchronous, events are guaranteed
|
|
/// to be in sequential order.
|
|
///
|
|
/// See https://msdn.microsoft.com/en-us/library/windows/desktop/dd373640(v=vs.85).aspx.
|
|
/// </summary>
|
|
internal const uint WINEVENT_OUTOFCONTEXT = 0x0;
|
|
|
|
/// <summary>
|
|
/// Sent when the user selects a command item from a menu, when a control sends a notification message to its parent window, or
|
|
/// when an accelerator keystroke is translated.
|
|
///
|
|
/// See https://msdn.microsoft.com/en-us/library/windows/desktop/ms647591(v=vs.85).aspx.
|
|
/// </summary>
|
|
internal const int WM_COMMAND = 0x111;
|
|
|
|
/// <summary>
|
|
/// Sent to a window to retrieve a handle to the large or small icon associated with a window. The system displays the large icon
|
|
/// in the ALT+TAB dialog, and the small icon in the window caption.
|
|
///
|
|
/// See https://docs.microsoft.com/en-us/windows/win32/winmsg/wm-geticon.
|
|
/// </summary>
|
|
internal const int WM_GETICON = 0x7F;
|
|
|
|
/// <summary>
|
|
/// Posted to the window with the keyboard focus when a nonsystem key is pressed. A nonsystem key is a key that is pressed when
|
|
/// the ALT key is not pressed.
|
|
///
|
|
/// See https://msdn.microsoft.com/en-us/library/windows/desktop/ms646280(v=vs.85).aspx.
|
|
/// </summary>
|
|
internal const int WM_KEYDOWN = 0x100;
|
|
|
|
/// <summary>
|
|
/// Posted to the window with the keyboard focus when a nonsystem key is released. A nonsystem key is a key that is pressed when
|
|
/// the ALT key is not pressed, or a keyboard key that is pressed when a window has the keyboard focus.
|
|
///
|
|
/// See https://msdn.microsoft.com/en-us/library/windows/desktop/ms646281(v=vs.85).aspx.
|
|
/// </summary>
|
|
internal const int WM_KEYUP = 0x101;
|
|
|
|
/// <summary>
|
|
/// Posted when the user presses the left mouse button while the cursor is in the client area of a window. If the mouse is not
|
|
/// captured, the message is posted to the window beneath the cursor. Otherwise, the message is posted to the window that has
|
|
/// captured the mouse.
|
|
///
|
|
/// See https://msdn.microsoft.com/en-us/library/windows/desktop/ms645607(v=vs.85).aspx.
|
|
/// </summary>
|
|
internal const int WM_LBUTTONDOWN = 0x201;
|
|
|
|
/// <summary>
|
|
/// Posted when the user releases the left mouse button while the cursor is in the client area of a window. If the mouse is not
|
|
/// captured, the message is posted to the window beneath the cursor. Otherwise, the message is posted to the window that has
|
|
/// captured the mouse.
|
|
///
|
|
/// See https://msdn.microsoft.com/en-us/library/windows/desktop/ms645608(v=vs.85).aspx.
|
|
/// </summary>
|
|
internal const int WM_LBUTTONUP = 0x202;
|
|
|
|
/// <summary>
|
|
/// Posted when the user presses the middle mouse button while the cursor is in the client area of a window. If the mouse is not
|
|
/// captured, the message is posted to the window beneath the cursor. Otherwise, the message is posted to the window that has
|
|
/// captured the mouse.
|
|
///
|
|
/// See https://msdn.microsoft.com/en-us/library/windows/desktop/ms645610(v=vs.85).aspx.
|
|
/// </summary>
|
|
internal const int WM_MBUTTONDOWN = 0x207;
|
|
|
|
/// <summary>
|
|
/// Posted when the user releases the middle mouse button while the cursor is in the client area of a window. If the mouse is not
|
|
/// captured, the message is posted to the window beneath the cursor. Otherwise, the message is posted to the window that has
|
|
/// captured the mouse.
|
|
///
|
|
/// See https://msdn.microsoft.com/en-us/library/windows/desktop/ms645611(v=vs.85).aspx.
|
|
/// </summary>
|
|
internal const int WM_MBUTTONUP = 0x208;
|
|
|
|
/// <summary>
|
|
/// Posted to a window when the cursor moves. If the mouse is not captured, the message is posted to the window that contains the
|
|
/// cursor. Otherwise, the message is posted to the window that has captured the mouse.
|
|
///
|
|
/// See https://msdn.microsoft.com/en-us/library/windows/desktop/ms645616(v=vs.85).aspx.
|
|
/// </summary>
|
|
internal const int WM_MOUSEMOVE = 0x200;
|
|
|
|
/// <summary>
|
|
/// Sent to the focus window when the mouse wheel is rotated. The DefWindowProc function propagates the message to the window's
|
|
/// parent. There should be no internal forwarding of the message, since DefWindowProc propagates it up the parent chain until i
|
|
/// finds a window that processes it.
|
|
///
|
|
/// See https://msdn.microsoft.com/en-us/library/windows/desktop/ms645617(v=vs.85).aspx.
|
|
/// </summary>
|
|
internal const int WM_MOUSEWHEEL = 0x20A;
|
|
|
|
/// <summary>
|
|
/// Posted when the user presses the right mouse button while the cursor is in the client area of a window. If the mouse is not
|
|
/// captured, the message is posted to the window beneath the cursor. Otherwise, the message is posted to the window that has
|
|
/// captured the mouse.
|
|
///
|
|
/// See https://msdn.microsoft.com/en-us/library/windows/desktop/ms646242(v=vs.85).aspx.
|
|
/// </summary>
|
|
internal const int WM_RBUTTONDOWN = 0x204;
|
|
|
|
/// <summary>
|
|
/// Posted when the user releases the right mouse button while the cursor is in the client area of a window. If the mouse is not
|
|
/// captured, the message is posted to the window beneath the cursor. Otherwise, the message is posted to the window that has
|
|
/// captured the mouse.
|
|
///
|
|
/// See https://msdn.microsoft.com/en-us/library/windows/desktop/ms646243(v=vs.85).aspx.
|
|
/// </summary>
|
|
internal const int WM_RBUTTONUP = 0x205;
|
|
|
|
/// <summary>
|
|
/// A window receives this message when the user chooses a command from the Window menu (formerly known as the system or control
|
|
/// menu) or when the user chooses the maximize button, minimize button, restore button, or close button.
|
|
///
|
|
/// See https://msdn.microsoft.com/en-us/library/windows/desktop/ms646360(v=vs.85).aspx.
|
|
/// </summary>
|
|
internal const int WM_SYSCOMMAND = 0x112;
|
|
|
|
/// <summary>
|
|
/// Posted to the window with the keyboard focus when the user presses the F10 key (which activates the menu bar) or holds down
|
|
/// the ALT key and then presses another key. It also occurs when no window currently has the keyboard focus; in this case, the
|
|
/// WM_SYSKEYDOWN message is sent to the active window. The window that receives the message can distinguish between these two
|
|
/// contexts by checking the context code in the lParam parameter.
|
|
///
|
|
/// See https://msdn.microsoft.com/en-us/library/windows/desktop/ms646286(v=vs.85).aspx.
|
|
/// </summary>
|
|
internal const int WM_SYSKEYDOWN = 0x104;
|
|
|
|
/// <summary>
|
|
/// Posted to the window with the keyboard focus when the user releases a key that was pressed while the ALT key was held down.
|
|
/// It also occurs when no window currently has the keyboard focus; in this case, the WM_SYSKEYUP message is sent to the active
|
|
/// window. The window that receives the message can distinguish between these two contexts by checking the context code in the
|
|
/// lParam parameter.
|
|
///
|
|
/// See https://msdn.microsoft.com/en-us/library/windows/desktop/ms646287(v=vs.85).aspx
|
|
/// </summary>
|
|
internal const int WM_SYSKEYUP = 0x105;
|
|
|
|
/// <summary>
|
|
/// Posted when the user presses the first or second X button while the cursor is in the client area of a window. If the mouse is
|
|
/// not captured, the message is posted to the window beneath the cursor. Otherwise, the message is posted to the window that has
|
|
/// captured the mouse.
|
|
///
|
|
/// See https://docs.microsoft.com/de-de/windows/desktop/inputdev/wm-xbuttondown.
|
|
/// </summary>
|
|
internal const int WM_XBUTTONDOWN = 0x20B;
|
|
|
|
/// <summary>
|
|
/// Posted when the user releases the first or second X button while the cursor is in the client area of a window. If the mouse is
|
|
/// not captured, the message is posted to the window beneath the cursor. Otherwise, the message is posted to the window that has
|
|
/// captured the mouse.
|
|
///
|
|
/// See https://docs.microsoft.com/de-de/windows/desktop/inputdev/wm-xbuttonup.
|
|
/// </summary>
|
|
internal const int WM_XBUTTONUP = 0x20C;
|
|
}
|
|
}
|