防止程序启动两次的方法CreateMutex()

来源:互联网 发布:java 两个线start 编辑:程序博客网 时间:2024/05/16 02:05

防止程序启动两次的方法CreateMutex()


因为Createmutex产生的内核对象的命名空间是系统全局的,所以你可以再用

             CreateMutex再创建一个同名的内核对象,因为重名,所以这个函数会失败,这样就只能启动一个进程了。


             在WINMAIN函数开始处或者基于MFC的Application->InitiInstance()函数开始处加入如下代码


HANDLE hMutex = CreateMutex(NULL, false, "anyname");
if (GetLastError() == ERROR_ALREADY_EXISTS){        CloseHandle(hMutex);        return 0;}