日期:2014-05-17  浏览次数:21107 次

用C#实现了一个切换当前活动窗口的功能
说明,按钮一打开播放器,按钮二实现切换播放器为活动窗口并代替键盘按下CTRL+U。
代码如下:
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.Diagnostics;

namespace testKMPlayerWinForm
{
    public partial class Form1 : Form
    {
        [System.Runtime.InteropServices.DllImport("user32.dll")]
        public static extern bool SetForegroundWindow(IntPtr hWnd);

        System.Diagnostics.Process Proc;
        String pn;
        public Form1()
        {
            InitializeComponent();

        }

        private void button1_Click(object sender, EventArgs e)
        {
            Proc = new System.Diagnostics.Process();
            Proc.StartInfo.FileName = "C:/Program Files/The KMPlayer/KMPlayer.exe";
            Proc.Start();
            pn = Proc.ProcessName;
            System.Threading.Thread.Sleep(1000);
            SendKeys.Send("^u");
        }

        private void button2_Click(object sender, EventArgs e)
        {
            System.Diagnostics.Process[] p = System.Diagnostics.Process.GetProcessesByName(pn);
            if (p.Length > 0)
            {
                SetForegroundWindow(p[0].MainWindowHandle);
                System.Threading.Thread.Sleep(1000);
                SendKeys.Send("^u");
            }
            else
            {
                button1_Click(sender, e);
            }
        }
    }
}