SetThreadContext 함수(processthreadsapi.h)

지정된 스레드의 컨텍스트를 설정합니다.

64비트 애플리케이션은 Wow64SetThreadContext 함수를 사용하여 WOW64 스레드의 컨텍스트를 설정할 수 있습니다.

구문

BOOL SetThreadContext(
  [in] HANDLE        hThread,
  [in] const CONTEXT *lpContext
);

매개 변수

[in] hThread

컨텍스트를 설정할 스레드에 대한 핸들입니다. 핸들에는 스레드에 대한 THREAD_SET_CONTEXT 액세스 권한이 있어야 합니다. 자세한 내용은 스레드 보안 및 액세스 권한을 참조하세요.

[in] lpContext

지정된 스레드에서 설정할 컨텍스트를 포함하는 CONTEXT 구조체에 대한 포인터입니다. 이 구조체의 ContextFlags 멤버 값은 설정할 스레드 컨텍스트의 부분을 지정합니다. CONTEXT 구조에서 지정할 수 없는 일부 값은 자동으로 올바른 값으로 설정됩니다. 여기에는 권한 있는 프로세서 모드를 지정하는 CPU 상태 레지스터의 비트, 디버깅 레지스터의 전역 사용 비트 및 운영 체제에서 제어해야 하는 기타 상태가 포함됩니다.

반환 값

컨텍스트가 설정된 경우 반환 값은 0이 아닌 값입니다.

함수가 실패하면 반환 값은 0입니다. 확장 오류 정보를 가져오려면 GetLastError를 호출합니다.

설명

함수는 컨텍스트 구조의 ContextFlags 멤버 값에 따라 스레드 컨텍스트를 설정합니다. hThread 매개 변수로 식별되는 스레드는 일반적으로 디버그되지만 스레드가 디버그되지 않는 경우에도 함수가 작동할 수 있습니다.

실행 중인 스레드에 대한 컨텍스트를 설정하지 마세요. 결과를 예측할 수 없습니다. SuspendThread 함수를 사용하여 SetThreadContext를 호출하기 전에 스레드를 일시 중단합니다.

요구 사항

   
지원되는 최소 클라이언트 Windows XP [데스크톱 앱만 해당]
지원되는 최소 서버 Windows Server 2003 [데스크톱 앱만 해당]
대상 플랫폼 Windows
헤더 processthreadsapi.h(Windows.h 포함)
라이브러리 Kernel32.lib
DLL Kernel32.dll

참고 항목

CONTEXT

디버깅 함수

GetThreadContext

GetXStateFeaturesMask

SetXStateFeaturesMask

SuspendThread