SetHandleInformation 函数 (handleapi.h)

设置对象句柄的某些属性。

语法

BOOL SetHandleInformation(
  [in] HANDLE hObject,
  [in] DWORD  dwMask,
  [in] DWORD  dwFlags
);

parameters

[in] hObject

要设置其信息的 对象的句柄。

可以指定以下对象类型之一的句柄:访问令牌、控制台输入缓冲区、控制台屏幕缓冲区、事件、文件、文件映射、作业、mailslot、互斥体、管道、打印机、进程、注册表项、信号灯、串行通信设备、套接字、线程或可等待计时器。

[in] dwMask

一个掩码,指定要更改的位标志。 使用 dwFlags 说明中显示的相同常量。

[in] dwFlags

指定对象句柄的属性的位标志集。 此参数可以是 0 或以下一个或多个值。

含义
HANDLE_FLAG_INHERIT
0x00000001
如果设置了此标志,则使用 CreateProcess 设置为 TRUEbInheritHandles 参数创建的子进程将继承对象句柄。
HANDLE_FLAG_PROTECT_FROM_CLOSE
0x00000002
如果设置了此标志,则调用 CloseHandle 函数不会关闭对象句柄。

返回值

如果该函数成功,则返回值为非零值。

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

注解

若要在 dwFlags 中设置或清除关联的位标志,必须在 dwMask 中设置更改掩码位标志。

要求

   
最低受支持的客户端 Windows 2000 Professional [仅限桌面应用]
最低受支持的服务器 Windows 2000 Server [仅限桌面应用]
目标平台 Windows
标头 handleapi.h (包括 Windows.h)
Library Kernel32.lib
DLL Kernel32.dll

另请参阅

CloseHandle

CreateProcess

GetHandleInformation

句柄和对象函数