private static void SendCharacterToStream(SafeFileHandle hIn, char c) { var count = 0; var keyInputRecord = new KeyInputRecord { bKeyDown = true, wRepeatCount = 1, wVirtualKeyCode = 0, wVirtualScanCode = 0, UnicodeChar = c, dwControlKeyState = 0 }; Kernel32.WriteConsoleInput(hIn, keyInputRecord, 1, out count); keyInputRecord.bKeyDown = false; Kernel32.WriteConsoleInput(hIn, keyInputRecord, 1, out count); }
public static extern bool WriteConsoleInput(SafeFileHandle hIn, [MarshalAs(UnmanagedType.LPStruct)] KeyInputRecord r, Int32 count, out Int32 countOut);