C++程序运行一个实例(互斥量法)
2012-05-08 16:12
246 查看
.h文件中:
public: HANDLE m_hMutex;
.cpp文件中:
程序刚启动时:
//---------------一下是程序只启动一个实例的方法(互斥量法)------------
m_hMutex = CreateMutex(NULL, TRUE, _T("earthworm"));
// 检测是否已经创建Mutex
// 如果已经创建,就终止进程的启动
if ((m_hMutex != NULL) && (GetLastError() == ERROR_ALREADY_EXISTS))
{
ReleaseMutex(m_hMutex);
MessageBox(NULL, _T("本程序已经启动"), _T("警告!"), MB_OK);
return FALSE;
}
//---------------以上是程序只启动一个实例的方法-------------------------
程序退出时:
if (m_hMutex != NULL)
{
ReleaseMutex(m_hMutex);
CloseHandle(m_hMutex);
}
public: HANDLE m_hMutex;
.cpp文件中:
程序刚启动时:
//---------------一下是程序只启动一个实例的方法(互斥量法)------------
m_hMutex = CreateMutex(NULL, TRUE, _T("earthworm"));
// 检测是否已经创建Mutex
// 如果已经创建,就终止进程的启动
if ((m_hMutex != NULL) && (GetLastError() == ERROR_ALREADY_EXISTS))
{
ReleaseMutex(m_hMutex);
MessageBox(NULL, _T("本程序已经启动"), _T("警告!"), MB_OK);
return FALSE;
}
//---------------以上是程序只启动一个实例的方法-------------------------
程序退出时:
if (m_hMutex != NULL)
{
ReleaseMutex(m_hMutex);
CloseHandle(m_hMutex);
}
相关文章推荐
- C++控制程序只运行一个实例
- 让程序只运行一个实例
- Windows下qt的环境配置及运行一个c++"hello world"实例详细步骤
- 如何让程序只运行一个实例(VC)
- 只能运行一个程序实例的两种方法对比
- 让你的程序只运行一个实例
- Qt让程序只运行一个实例
- 让程序只运行一个实例
- WPF程序只有一个实例运行
- VC让程序只运行一个实例的方法
- 只允许允许一个程序实例,即使是通过虚拟桌面方式连接过来的,也是只允许一个人运行。
- QT实现只允许运行一个程序实例
- 让Delphi程序只运行一个实例
- 避免一个程序多个实例同时运行
- 转:让程序只运行一个实例的四种方法
- 程序只运行一个实例(二)
- 确保一个程序只存在一个实例运行
- C++ 一个exe的两个运行实例之间共享数据
- Winform(C#)限制程序只运行一个实例
- 只运行一个程序实例