任何想法原因:
HANDLE hEvent = OpenEvent(EVENT_MODIFY_STATE, FALSE, L"Global\\MyEventName");
即使创建事件的进程不再运行,也会成功打开事件?
我能想到的唯一原因是创建事件的过程在终止时没有关闭它,但是我假设如果创建命名事件的进程在没有关闭的情况下终止事件,那么事件由OS关闭,这是一个错误的假设吗?
如果命名事件的创建者在没有关闭的情况下终止,那么它的状态是什么?
我在Windows 10 x64上进行测试,两个进程(Creator / OpenEvent)都作为系统窗口服务运行,因此权限问题已不在游戏中。
答案 0 :(得分:0)
事件对象在最后一个句柄关闭时被销毁。
它不是事件对象在其创建者退出时被销毁。
因此,很可能是有另一个进程可以打开这个事件对象。