首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > VC/MFC >

为什么CreateEvent不能起到:一个应用程序只有一个实例解决办法

2012-04-27 
为什么CreateEvent不能起到:一个应用程序只有一个实例而CreateMutex可以呢??2. CreateEvent的其中一个参数

为什么CreateEvent不能起到:一个应用程序只有一个实例
而CreateMutex可以呢??


2. CreateEvent的其中一个参数 是名字,这个名字到底起什么作用??

[解决办法]
名字标识了该Event,不能创建两个相同名字的Event。
你可以在程序初始化的时候,CreateEvent,名字随便起一个,但是别设为空,要是创建失败并返回已存在,则说明已运行了一个程序的实例,起到了一个应用程序只有一个实例
[解决办法]
都可以的

C/C++ code
HANDLE hEvent = CreateEvent(NULL, FALSE, FALSE, _T("MyAppWindow"));    if((NULL != hEvent) && (ERROR_ALREADY_EXISTS == GetLastError()))    {        CloseHandle(hEvent);        return FALSE;    }
[解决办法]
探讨
我已经解决了,呵呵


插个题外话:

msdn:

The name can have a "Global\" or "Local\" prefix to explicitly create the object in the global or session namespace. The remainder of the name can contain any charact……

热点排行