SetHandleInformation function (handleapi.h)

Sets certain properties of an object handle.

Syntax

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

Parameters

[in] hObject

A handle to an object whose information is to be set.

You can specify a handle to one of the following types of objects: access token, console input buffer, console screen buffer, event, file, file mapping, job, mailslot, mutex, pipe, printer, process, registry key, semaphore, serial communication device, socket, thread, or waitable timer.

[in] dwMask

A mask that specifies the bit flags to be changed. Use the same constants shown in the description of dwFlags.

[in] dwFlags

Set of bit flags that specifies properties of the object handle. This parameter can be 0 or one or more of the following values.

Value Meaning
HANDLE_FLAG_INHERIT
0x00000001
If this flag is set, a child process created with the bInheritHandles parameter of CreateProcess set to TRUE will inherit the object handle.
HANDLE_FLAG_PROTECT_FROM_CLOSE
0x00000002
If this flag is set, calling the CloseHandle function will not close the object handle.

Return value

If the function succeeds, the return value is nonzero.

If the function fails, the return value is zero. To get extended error information, call GetLastError.

Remarks

To set or clear the associated bit flag in dwFlags, you must set a change mask bit flag in dwMask.

Requirements

Requirement Value
Minimum supported client Windows 2000 Professional [desktop apps only]
Minimum supported server Windows 2000 Server [desktop apps only]
Target Platform Windows
Header handleapi.h (include Windows.h)
Library Kernel32.lib
DLL Kernel32.dll

See also

CloseHandle

CreateProcess

GetHandleInformation

Handle and Object Functions