Имитация нажатия 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');
- }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д