.net利用程序集的GUID解决程序只能运行一次的问题
可以解决同名的程序集(但非同一程序集)只能运行一次的问题,网上很资料都是只检测程序是否同名,不能真正的保证是同一程序集。
private bool prevInstance()
{
Process[] myProcesses= Process.GetProcessesByName(Process.GetCurrentProcess().ProcessName);
if (myProcesses.Length > 1)
{
GuidAttribute curGuid = (GuidAttribute)(Assembly.GetExecutingAssembly().GetCustomAttributes(typeof(GuidAttribute), false)[0]);
foreach (Process process in myProcesses)
{
if (Process.GetCurrentProcess().Id != process.Id)
{
Assembly ass = Assembly.LoadFrom(process.MainModule.FileName);
GuidAttribute[] guids = (GuidAttribute[])ass.GetCustomAttributes(typeof(GuidAttribute), false);
if (guids.Length > 0)
{
if (curGuid.Value.ToString().Equals(guids[0].Value.ToString()))
return true;
}
}
}
}
return false;
}
转载于:https://www.cnblogs.com/blogsChen/p/3884577.html
.net利用程序集的GUID解决程序只能运行一次的问题相关推荐
- 如何分析java程序_如何利用 JConsole观察分析Java程序的运行,进行排错调优
一.JConsole是什么 从Java 5开始 引入了 JConsole.JConsole 是一个内置 Java 性能分析器,可以从命令行或在 GUI shell 中运行.您可以轻松地使用 JCons ...
- 如何利用 JConsole观察分析Java程序的运行,进行排错调优
原文链接:http://jiajun.iteye.com/blog/810150 一.JConsole是什么 从Java 5开始 引入了 JConsole.JConsole 是一个内置 Java 性能 ...
- 让你的程序只能运行一个实例
先说一个循环系统进程的方法吧, //首先取得你的程序当前进程 Process current = Process.GetCurrentProce ...
- 如何利用 JConsole观察分析Java程序的运行,进行排错调优(转)
一.JConsole是什么 从Java 5开始 引入了 JConsole.JConsole 是一个内置 Java 性能分析器,可以从命令行或在 GUI shell 中运行.您可以轻松地使用 JCons ...
- java语言执行过程_Java程序的运行过程(执行流程)分析
万事知其然,要知其所以然,所以本节带大家来详细了解一下 Java 程序的执行过程.从<使用记事本编写运行Java程序>一节的案例可以看出,Java 程序的运行必须经过编写.编译和运行 3 ...
- Java教程:Java程序的运行过程(执行流程)分析
Java教程万事知其然,要知其所以然,所以本节带大家来详细了解一下 Java 程序的执行过程. 本篇文章由 泉州SEO www.234yp.com 整理发布,Java教程 www.234yp.com/ ...
- Java程序的运行过程(执行流程)分析
Java 程序的运行必须经过编写.编译和运行 3 个步骤: 1.编写:是指在 Java 开发环境中进行程序代码的输入,最终形成后缀名为 .java 的 Java 源文件. 2.编译:是指使用 Java ...
- linux下生成guid,在Linux下生成GUID的程序,及编译错误 “uuid/uuid.h: No such file or directory” 的解决办法。...
在Linux下编写生成GUID的程序,如下 guid.c 文件: #include #include void uuid2string(const uuid_t uu, char* const str ...
- VS2022打开项目之后提示:找不到 .NETFramework,Version=v4.0 的引用程序集。要解决此问题,请为此框架版本安装开发人员工具包(SDK/目标包)或者重新定向应用程序。
问题: 使用 vs2022打开带有.net4.0的项目会报错 严重性 代码 说明 项目 文件 行 列 禁止显示状态 错误 MSB3644 找不到 .NETFramework,Version=v4.0 ...
最新文章
- 揭秘Facebook SLAM技术,如何为人们生活增添奇幻的艺术色彩?
- opencv orb
- 前端获取浏览器标识_浏览器缓存机制
- Redis的一些问题
- Redis常用命令之操作SortedSet(有序集合)
- python array_python数组array.array(转帖)
- centos7如何精简容量_只需3步!教你打造精简win10,去除系统自带程序,运行更快...
- OpenGL之gluPerspective浅析
- Java—TCP与HTTP连接
- 火星上首座虚拟房屋以超过50万美元价格售出
- 服务器linux换windows,【服务器运维】如何将linux体系更换成windows体系
- html table奇偶行颜色设置 (CSS选择器)
- 2.15.PHP7.1 狐教程-【PHP 抽象类、抽象方法】
- 编程规范基础学习笔记
- 使用jsoup爬虫超时分析与处理
- iOS 在线下载字体
- RabbitMQ 基本消息模型和消息确认机制
- 多智能体强化学习(五)MARL的挑战
- stack、queue、priority_queue
- 用 iPad 来写Python代码,GitHub 又一代码编辑器,开源了!