GetThreadContext 函数 (processthreadsapi.h)

检索指定线程的上下文。

64 位应用程序可以使用 Wow64GetThreadContext 检索 WOW64 线程的上下文。

语法

BOOL GetThreadContext(
  [in]      HANDLE    hThread,
  [in, out] LPCONTEXT lpContext
);

参数

[in] hThread

要检索其上下文的线程的句柄。 句柄必须具有 对线程THREAD_GET_CONTEXT 访问权限。 有关详细信息,请参阅 线程安全和访问权限

Windows XP 或 Windows Server 2003: 句柄还必须具有 THREAD_QUERY_INFORMATION 访问权限。

[in, out] lpContext

指向 CONTEXT 结构的指针 (,例如接收指定线程的适当上下文 的 ARM64_NT_CONTEXT) 。 此结构的 ContextFlags 成员的值指定检索线程上下文的哪些部分。 CONTEXT 结构高度特定于处理器。 有关此结构的特定于处理器的定义和任何对齐要求,请参阅 WinNT.h 头文件。

返回值

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

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

注解

此函数用于检索指定线程的线程上下文。 函数基于上下文结构的 ContextFlags 成员的值检索选择性上下文。 hThread 参数标识的线程通常正在调试中,但当线程未调试时,函数也可以运行。

无法获取正在运行的线程的有效上下文。 在调用 GetThreadContext 之前,使用 SuspendThread 函数挂起线程。

如果为当前线程调用 GetThreadContext ,函数将成功返回;但是,返回的上下文无效。

要求

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

另请参阅