OpenSemaphoreW 函数 (synchapi.h) 您所在的位置:网站首页 createsemaphore OpenSemaphoreW 函数 (synchapi.h)

OpenSemaphoreW 函数 (synchapi.h)

2023-05-07 12:41| 来源: 网络整理| 查看: 265

OpenSemaphoreW 函数 (synchapi.h) 项目 10/05/2022

打开现有的命名信号灯对象。

语法 HANDLE OpenSemaphoreW( [in] DWORD dwDesiredAccess, [in] BOOL bInheritHandle, [in] LPCWSTR lpName ); 参数

[in] dwDesiredAccess

对信号灯对象的访问。 如果指定对象的安全描述符不允许调用进程的请求访问,函数将失败。 有关访问权限的列表,请参阅 Synchronization Object Security and Access Rights。

[in] bInheritHandle

如果此值为 TRUE,则此过程创建的进程将继承句柄。 否则,进程不会继承此句柄。

[in] lpName

要打开的信号灯的名称。 名称比较区分大小写。

此函数可以在专用命名空间中打开对象。 有关详细信息,请参阅 对象命名空间。

终端服务: 该名称可以具有“全局”或“本地”前缀,以显式打开全局或会话命名空间中的对象。 名称的其余部分可以包含除反斜杠字符 (\) 以外的任何字符。 有关详细信息,请参阅 内核对象命名空间。

注意 使用终端服务会话实现快速用户切换。 第一个登录用户使用会话 0、下一个登录的用户使用会话 1 等。 内核对象名称必须遵循终端服务概述的准则,以便应用程序可以支持多个用户。

返回值

如果函数成功,则返回值是信号灯对象的句柄。

如果函数失败,则返回值为 NULL。 要获得更多的错误信息,请调用 GetLastError。

注解

OpenSemaphore 函数允许多个进程打开同一信号灯对象的句柄。 仅当某些进程已使用 CreateSemaphore 函数创建信号灯时,该函数才会成功。 调用过程可以在任何需要信号灯对象的句柄(如 等待函数)中使用返回的句柄,但受 dwDesiredAccess 参数中指定的访问的限制。

可以使用 DuplicateHandle 函数复制句柄。 使用 CloseHandle 函数关闭句柄。 系统在进程终止时自动关闭句柄。 信号灯对象在关闭其最后一个句柄时被销毁。

要求     最低受支持的客户端 Windows XP [桌面应用|UWP 应用] 最低受支持的服务器 Windows Server 2003 [桌面应用|UWP 应用] 目标平台 Windows 标头 synchapi.h (包括 Windows.h) Library Kernel32.lib DLL Kernel32.dll 另请参阅

CloseHandle

CreateSemaphore

DuplicateHandle

对象名称

ReleaseSemaphore

信号灯对象

同步函数



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有