在多个窗口之间切换

时间:2019-09-11 14:25:01

标签: c# console-application

我知道有很多类似的问题,但是到目前为止,没有一个答案可以解决我的问题。 我有一个包含多个显示数据的窗口的进程,它们都打算在电视上显示(类似于仪表板)。我正在尝试在所有这些之间切换。我将窗口显示一分钟,然后切换到下一个窗口。我正在使用的代码适用于3个Windows Max,但是当我尝试添加更多窗口时,它不会切换所有窗口,而只会切换前3个窗口。

我要切换的所有窗口都在同一进程下。进程“ dashboard10”包含所有窗口。它所做的全部代码是按alt标签,然后进入休眠状态。如果有人知道实现此目标的其他方法,我将不胜感激。谢谢

class Program
{
    [DllImport("user32.dll")]
    public static extern int SetForegroundWindow(IntPtr hWnd);

    [STAThread]
    static void Main(string[] args)
    {
        while (true)
        {
            Process[] processes = Process.GetProcessesByName("dashboard10");

            foreach (Process proc in processes)
            {
                try
                {
                    SetForegroundWindow(proc.MainWindowHandle);
                    SendKeys.SendWait("^" + "{TAB 2}");
                }
                catch (Exception ex) { Console.WriteLine(ex.Message); }
            }

            Thread.Sleep(60000);
        }
    }
}

0 个答案:

没有答案