SendKeys (или что-то подобное) в несколько процессов с одинаковым именем - C#
Формулировка задачи:
Здраствуйте програмисты!
столкнулся с такой проблемой. как можно сделать SendKeys на несколько одноимённых процессов (окна не активны).
Вот кусок кода,того что пытался сделать (сильно не ругайте, только начал изучать ).
Эмулирует нажатие клавишь только в 1 активное окно .
private void button1_Click(object sender, EventArgs e) { for (int i = 1; i < 10; i++) { System.Diagnostics.Process[] proc1; proc1 = System.Diagnostics.Process.GetProcessesByName("название процесса"); foreach (System.Diagnostics.Process inst in proc1) { SendKeys.SendWait("{F1}"); System.Threading.Thread.Sleep(1000); SendKeys.SendWait("{F2}"); System.Threading.Thread.Sleep(1000); SendKeys.SendWait("{F3}"); System.Threading.Thread.Sleep(1000); } } }
Решение задачи: «SendKeys (или что-то подобное) в несколько процессов с одинаковым именем»
textual
Листинг программы
using System.Runtime.InteropServices; public partial class Form1 : Form { public Form1() { InitializeComponent(); } [DllImport("User32.dll")] static extern int SetForegroundWindow(IntPtr hWnd); private void button1_Click(object sender, EventArgs e) { System.Diagnostics.Process[] process = System.Diagnostics.Process.GetProcesses(); foreach (System.Diagnostics.Process pro in process) { if (pro.ProcessName == "Totalcmd") try { IntPtr hWnd = pro.MainWindowHandle; SetForegroundWindow(hWnd); SendKeys.Send("%{F7}"); break; } catch { } } }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д