SetThreadContext

From aldeid
Jump to navigation Jump to search

Description

Sets the context for the specified thread. Some injection techniques use SetThreadContext.

A 64-bit application can set the context of a WOW64 thread using the Wow64SetThreadContext function.

Syntax

BOOL WINAPI SetThreadContext(
  _In_  HANDLE hThread,
  _In_  const CONTEXT *lpContext
);

Parameters

hThread [in]
A handle to the thread whose context is to be set. The handle must have the THREAD_SET_CONTEXT access right to the thread.
lpContext [in]
A pointer to a CONTEXT structure that contains the context to be set in the specified thread. The value of the ContextFlags member of this structure specifies which portions of a thread's context to set. Some values in the CONTEXT structure that cannot be specified are silently set to the correct value. This includes bits in the CPU status register that specify the privileged processor mode, global enabling bits in the debugging register, and other states that must be controlled by the operating system.

Return value

If the context was set, the return value is nonzero.

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