`
BabyDuncan
  • 浏览: 573546 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

用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);
            }
        }
    }
}

分享到:
评论

相关推荐

    C#中英文切换

    主要方法是添加资源文件,其实是字符串id与内容的列表,每种语言一个资源,然后你要设置当前线程的语言。当然比如控件的显示等也是必须写成从资源提取,不能直接在属性窗口里设置。

    C# 保存当前窗口的位置,大小,支持多显示之间屏幕切换,无需ini文件[WindowsSize]

    可以保存当前窗口的位置,大小,支持多显示之间屏幕切换,无需ini文件,利用app.config.本程序在2005编译通过,附执行程序(本程序代码里有日文字符,打开时选择日语)

    C# WInForm 桌面辅助侧边栏 (源码)

    这是一个在桌面侧边显示当前桌面上的窗口的程序,可用于快速切换或关闭窗口。功能有些像 Win+Tab 和 Alt+Tab,不过他可以停靠在桌面的左侧,不遮挡其他任何窗口内容,不用时还可以收缩。(本资源为原创,别的地方找不...

    C#浏览器编程,学习使用

    3) 例如,当用户用鼠标点击一个超链的起点时,控制程序就调用一个客户从所需文档所在的远地服务器上取回该文档,并调用解释程序向用户显示该文档 4) HTML 解释程序是必不可少的,而其他的解释程序则是可选的。 5) ...

    显示窗口句柄 Spy++ Lite是一款强有力的编程辅助工具 功能强大 免费 绿色 可用 好用

    除此以外,您还可以把它当作一个截图的小工具来用。:) 下面举两个例子来小试牛刀: 1、激活灰色按钮: 打开任一文件的属性窗口,它的右下角处“应用”按钮都是不可用的(灰色的)。拖动本软件的探测器指针选中该...

    C# for CSDN 乱七八糟的看不懂

    也可以退出当前模块,使用一个空 while 循环,示例如下: void CH(double X1) { bool bl=true; while (bl) { if (X1==1.0) { MessageBox.Show("YES"); break; } MessageBox.Show("no"); bl=false; } } 输出格式 ...

    C#程序开发范例宝典(第2版).part08

    精选570个典型范例,全面覆盖实用和热点技术,涉及面广,实用性强源于实际项目开发,帮助读者短时间掌握更多实用技术,提高编程水平范例经过精心编排,重点、难点突出,易学易懂书后附录提供快速索引,即查、即学、...

    C#程序开发范例宝典(第2版).part02

    精选570个典型范例,全面覆盖实用和热点技术,涉及面广,实用性强源于实际项目开发,帮助读者短时间掌握更多实用技术,提高编程水平范例经过精心编排,重点、难点突出,易学易懂书后附录提供快速索引,即查、即学、...

    C#程序开发范例宝典(第2版).part12

    精选570个典型范例,全面覆盖实用和热点技术,涉及面广,实用性强源于实际项目开发,帮助读者短时间掌握更多实用技术,提高编程水平范例经过精心编排,重点、难点突出,易学易懂书后附录提供快速索引,即查、即学、...

    免费DataGridView打印及.NET轻松打印控件5.6版(VB打印,C#打印)

    1、增加了一个新打印组件SimpleReport组件,该组件与DGVPrint组件一样在运行时可进行打印参数设置,但比DGVPrint组件功能更强大,可以自动管理多个打印方案,在打印预览时可以自由在各个打印方案之间切换;...

    免费DataGridView打印及.NET轻松打印控件5.7版(VB打印,C#打印,Excel导入导出,多表头显示与打印)

    25、5.6版新增的SimpleReport组件允许您在一个方案文件中管理多个打印方案,在打印预览时能自由在各个打印方案之间切换。 26、5.7版控件增加了使用开源的NPOI从Excel文件中导入数据到DataGridView的功能,以及...

    cozy:这是一个用于学习C#的开源项目

    Cozy这是一个用于学习C#的开源项目 && 做点东西玩玩交流QQ群 - 373862115源码结构Learn - 学习工程目录StoreCozy - win8.1 store app学习工程MvvmCozy - Mvvm和MvvmLight学习工程Public - 公共代码目录Practice - ...

    C#程序开发范例宝典(第2版).part13

    精选570个典型范例,全面覆盖实用和热点技术,涉及面广,实用性强源于实际项目开发,帮助读者短时间掌握更多实用技术,提高编程水平范例经过精心编排,重点、难点突出,易学易懂书后附录提供快速索引,即查、即学、...

Global site tag (gtag.js) - Google Analytics