Example #1
0
 /// <summary>
 /// Calls the Win32 SendInput method to simulate a KeyUp.
 /// </summary>
 /// <param name="keyCode">The <see cref="VirtualKeyCode"/> to lift up</param>
 public IKeyboardSimulator KeyUp(VirtualKeyCode keyCode)
 {
     unsafe
     {
         var input = stackalloc INPUT[1];
         input[0] = InputBuilder.MakeKeyUp(keyCode, _inputSimulator.ExtraInfo);
         _messageDispatcher.DispatchInput(input, 1);
     }
     return(this);
 }
Example #2
0
        /// <summary>
        /// Calls the Win32 SendInput method with a KeyDown and KeyUp message in the same input sequence in order to simulate a Key PRESS.
        /// </summary>
        /// <param name="keyCode">The <see cref="VirtualKeyCode"/> to press</param>
        public IKeyboardSimulator KeyPress(VirtualKeyCode keyCode)
        {
            unsafe
            {
                var input = stackalloc INPUT[2];
                input[0] = InputBuilder.MakeKeyDown(keyCode, _inputSimulator.ExtraInfo);
                input[1] = InputBuilder.MakeKeyUp(keyCode, _inputSimulator.ExtraInfo);

                _messageDispatcher.DispatchInput(input, 2);
            }

            //var inputList = new InputBuilder(){ ExtraInfo = _inputSimulator.ExtraInfo }.AddKeyPress(keyCode).ToArray();
            //SendSimulatedInput(inputList);
            return(this);
        }