c# wpf单实例运行并激活前实例 收藏
先创建程序设置:
Properties——Settings.settings
名称 类型 范围 值
w long 用户 0
在App.g.cs文件中加入:
using System.Threading;
using System.Runtime.InteropServices;
using System.Reflection;
using xxxxxxxxxxxxxxxxxxxxxxx.Properties;//项目的名称
#region Win32 API 函数
//该函数设置由不同线程产生的窗口的显示状态;
//如果函数原来可见,返回值为非零;如果函数原来被隐藏,返回值为零。
[DllImport("user32.dll")]
private static extern bool ShowWindowAsync(IntPtr hWnd, int nCmdShow);
//该函数将创建指定窗口的线程设置到前台,并且激活该窗口。键盘输入转向该窗口,并为用户改各种可视的记号。系统给创建前台窗口的线程分配的权限稍高于其他线程。
//如果窗口设入了前台,返回值为非零;如果窗口未被设入前台,返回值为零。
[DllImport("user32.dll")]
private static extern bool SetForegroundWindow(IntPtr hWnd);
// IsIconic、IsZoomed ------ 分别判断窗口是否