Имитация нажатия ctrl + v через API - C#
Формулировка задачи:
Нужно вставить текст в чужое приложение, решил вставлять через буфер обмену, соответственно нужно юзать API вставку. Пробовал так, но не работает. Помогите.
[DllImport("user32.dll")] public static extern void keybd_event(Keys bVk, byte bScan, UInt32 dwFlags, IntPtr dwExtraInfo); public const UInt32 KEYEVENTF_EXTENDEDKEY = 1; public const UInt32 KEYEVENTF_KEYUP = 2; private void button1_Click(object sender, EventArgs e) { keybd_event(Keys.Control, 0, 0, IntPtr.Zero); keybd_event(Keys.V, 0, 0, IntPtr.Zero); keybd_event(Keys.V, 0, KEYEVENTF_KEYUP, IntPtr.Zero); keybd_event(Keys.Control, 0, KEYEVENTF_KEYUP, IntPtr.Zero); }
Решение задачи: «Имитация нажатия ctrl + v через API»
textual
Листинг программы
if ((TbKeys.Text == textBox4.Text.ToUpper()) && (TbKeys.Text != "")) { Clipboard.SetText(textBox3.Text.ToString(), TextDataFormat.UnicodeText); Thread.Sleep(30); textBox3.Focus(); // или textbox3.SetFocus(); SendCtrlhotKey('V'); }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д