C# 实现程序只启动一次(多次运行激活第一个实例,使其获得焦点,并在最前端显示)
摘要:
防止程序运行多个实例的方法有多种,如:通过使用互斥量和进程名等.而我想要实现的是:在程序运行多个实例时激活的是第一个实例,使其获得焦点,并在前端显示.主要用到两个API 函数:ShowWindowAsync 该函数设置由不同线程产生的窗口的显示状态。SetForegroundWindow 该函数将创建指定窗口的线程设置到前台,并且激活该窗口。键盘输入转向该窗口,并为用户改各种可视的记号。系统给创建前台窗口的线程分配的权限稍高于其他线程。代码如下:引用以下命名空间:using System.Runtime.InteropServices;using System.Diagnostics;usin 阅读全文
posted @ 2013-03-19 10:12 .net — 粉丝 阅读(643) 评论(2) 推荐(0) 编辑