public static uint SendMessage(string message) { List <Input> list = new List <Input>(); using (var keyboard = new KeyboardPointer(CultureInfo.CurrentCulture)) { foreach (var c in message) { var vkc = (uint)keyboard.GetVirtualKeyValue(c); var sc = MapVirtualKey(vkc, 0x00); Input msg = new Input(); msg.Type = InputType.Keyboard; msg.Data.Keyboard.dwFlags = KeyEventFlags.ScanCode; msg.Data.Keyboard.wScan = (ScanCode)sc; list.Add(msg); } } //if (list.Count > 0) //{ // Input enter = new Input(); // enter.Type = InputType.Keyboard; // enter.Data.Keyboard.dwFlags = KeyEventFlags.Unicode; // enter.Data.Keyboard.wVk = VirtualKeyCode.RETURN; // enter.Data.Keyboard.time = 0; // list.Add(enter); //} return(SendInput(list.Count, list.ToArray(), Input.Size)); }