zoukankan
html css js c++ java
C#程序多用户只启动一个进程的方法
Main函数
[STAThread]
static
void
Main()
{
Application.EnableVisualStyles();
Application.SetCompatibleTextRenderingDefault(
false
);
webscreenshot wb
=
new
webscreenshot();
Process current
=
Process.GetCurrentProcess();
bool
newinstance
=
true
;
Process[] processes
=
Process.GetProcessesByName(current.ProcessName);
//
遍历正在有相同名字运行的例程
foreach
(Process process
in
processes)
{
//
忽略现有的例程
if
(process.Id
!=
current.Id)
{
//
确保例程从EXE文件运行
if
(Assembly.GetExecutingAssembly().Location.Replace(
"
/
"
,
"
\\
"
)
==
current.MainModule.FileName)
{
//
返回另一个例程实例
current
=
process;
newinstance
=
false
;
break
;
}
}
}
if
(newinstance)
{
Application.Run(wb);
}
else
{
ShowWindowAsync(current.MainWindowHandle,
1
);
//
设置真实例程为foreground window
SetForegroundWindow(current.MainWindowHandle);
}
}
引入这两个API函数
[DllImport(
"
User32.dll
"
)]
private
static
extern
bool
ShowWindowAsync( IntPtr hWnd,
int
cmdShow);
[DllImport(
"
User32.dll
"
)]
private
static
extern
bool
SetForegroundWindow(IntPtr hWnd);
}
查看全文
相关阅读:
.NET Cache缓存
异步
es6常用功能
vue-router路由懒加载
vue中nextTick和$nextTick
动态模板中 swiper 划不动问题
javaScript正则判断手机号
Mac终端使用技巧
alert IOS自带域名
vue css background路径不对
原文地址:https://www.cnblogs.com/scgw/p/1563364.html
最新文章
oracle学习第三天
Java获取某年某周的最后一天
Cookie / Session / URL重写
Jstl标签库/Filter过滤器
Spring的多配置文件加载
MD5/SHA加密
Spring的特点
Struts2 多文件下载
struts2的单文件下载
Spring 和 MyBatis 环境整合
热门文章
Linux常用命令集合
本地sql远程连接服务上的sql 无法连接解决方案
.net core中使用swagger 配置Startup.cs
.net api项目在本地运行,将本地localhostg访问改成ip访问(局域网联调调试本地项目)
.net core中FTP上传文件(简单用法)
.NET core中IOC控制反转简单用法
UDP中接收和发送数据
sql中存储过程找表
.net lambad表达式操作数据库
VS2015 无法启动 IIS Express Web 服务器 解决方案
Copyright © 2011-2022 走看看