/*
* Copyright (c) 2017 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/.
*/
using System;
using System.Runtime.InteropServices;
namespace SafeExamBrowser.WindowsApi.Constants
{
///
/// See http://www.pinvoke.net/default.aspx/Structures/KBDLLHOOKSTRUCT.html.
///
[StructLayout(LayoutKind.Sequential)]
public struct KBDLLHOOKSTRUCT
{
///
/// A virtual-key code. The code must be a value in the range 1 to 254.
///
public uint KeyCode;
///
/// A hardware scan code for the key.
///
public uint ScanCode;
///
/// The extended-key flag, event-injected flags, context code, and transition-state flag. This member is specified as follows. An
/// application can use the following values to test the keystroke flags. Testing LLKHF_INJECTED (bit 4) will tell you whether the
/// event was injected. If it was, then testing LLKHF_LOWER_IL_INJECTED (bit 1) will tell you whether or not the event was injected
/// from a process running at lower integrity level.
///
public KBDLLHOOKSTRUCTFlags Flags;
///
/// The time stamp for this message, equivalent to what GetMessageTime would return for this message.
///
public uint Time;
///
/// Additional information associated with the message.
///
public IntPtr DwExtraInfo;
}
}