当前位置:首页 > 手机电脑 > windows系统 > 用命名内核对象判断程序是否有实例正在运行

用命名内核对象判断程序是否有实例正在运行

2017-01-22 09:34:16[windows系统]点击数:作者:未知 来源: 网络
随机为您推荐的文章:Windows 中为git添加ssh认证

在Windows下开发使用git已经有段时间了,以前在Ubuntu中一直都是使用的命令行,而且git服务器也是使用的公司内部搭建的git服务器。这两天,自己在做一个项目,代码的同步就想到了gi

命名内核对象可以进程之间共享句柄

通过让进程每次运行创建一个命名内核对象,判断创建是否成功

用GetLastError()获得错误代码,即可判断程序是否有实例正在运行

代码页比较简单,不做过多描述,详情参考《windows核心编程》

#include <iostream>
#include <windows.h>

int main()
{
	HANDLE hMutex = CreateMutex( NULL, false, "unique");

	//但是这没有达到共享,只能检测是否有实例在运行
	if ( ERROR_ALREADY_EXISTS == GetLastError() )
	{
		std::cout << "已有一个实例在运行" << std::endl;
		goto ERR;
	}
	std::cout << "没有实例正在运行" <<std ::endl;

ERR:getchar();
	CloseHandle( hMutex );
	return 0;
}


以上就是用命名内核对象判断程序是否有实例正在运行的全文介绍,希望对您学习Windows的使用有所帮助.

这些内容可能对你也有帮助

更多windows系统可查看windows系统列表页。