gpt4 book ai didi

c++ - CreateMutex—— "Access is denied"

转载 作者:太空狗 更新时间:2023-10-29 21:27:02 26 4
gpt4 key购买 nike

以下代码有时可以正常工作,有时会抛出“访问被拒绝”错误。行为不一致。

_hMutex = CreateMutex(NULL, FALSE, MutexName);
if (_hMutex == NULL)
{
throw MY_ERROR(GetLastError(), L"Error creating mutex handle");
}

我运行具有此代码的独立可执行文件,执行操作并退出。它不是多线程应用程序。每次运行此程序时,我都使用相同的用户凭据登录。

你能帮我解决这个问题吗?

谢谢,下摆

最佳答案

如果互斥锁是一个命名的互斥锁,并且对象在这个函数调用之前已经存在,则返回值是现有对象的句柄,GetLastError返回ERROR_ALREADY_EXISTS,bInitialOwner被忽略,调用线程未被授予所有权。

但是,如果调用者的访问权限有限,该函数将失败并返回 ERROR_ACCESS_DENIED,调用者应使用 OpenMutex 函数。

MSDN

关于c++ - CreateMutex—— "Access is denied",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10139958/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com