OpenThread

Opens an existing thread object.

Syntax

HANDLE OpenThread(
         DWORD dwDesiredAccess,
         BOOL bInheritHandle,
         DWORD dwThreadId
)  

Parameters

dwDesiredAccess
Type: DWORD 

[in] The access to the thread object. This access right is checked against the security descriptor for the thread. This parameter can be one or more of the thread access rights.

If the caller has enabled the SeDebugPrivilege privilege, t he requested access is granted regardless of the contents of the security descriptor.

bInheritHandle
Type: BOOL 

[in] If this value is TRUE, processes created by this process will inherit the handle. Otherwise, the processes do not inherit this handle.

dwThreadId
Type: DWORD 

[in] The identifier of the thread to be opened.

Return value

Type: HANDLE 

If the function succeeds, the return value is an open handle to the specified thread.

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

Remarks

The handle returned by OpenThread can be used in any function that requires a handle to a thread, such as the wait functions, provided you requested the appropriate access rights. The handle is granted access to the thread object only to the extent it was specified in the dwDesiredAccess parameter.

When you are finished with the handle, be sure to close it by using the CloseHandle function.

Requirements

Header: Declared in processthreadsapi.h.

Library: Use kernelx.lib.