Freigeben über


SetThreadContext-Funktion (processthreadsapi.h)

Legt den Kontext für den angegebenen Thread fest.

Hinweis

Eine 64-Bit-Anwendung kann den Kontext eines WOW64-Threads mithilfe der Wow64SetThreadContext-Funktion festlegen.

Syntax

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

Die Parameter

[in] hThread

Ein Handle für den Thread, dessen Kontext festgelegt werden soll. Das Handle muss über das THREAD_SET_CONTEXT Zugriffsrecht auf den Thread verfügen. Weitere Informationen finden Sie unter Thread Security and Access Rights.

[in] lpContext

Ein Zeiger auf eine CONTEXT-Struktur , die den kontext enthält, der im angegebenen Thread festgelegt werden soll. Der Wert des ContextFlags-Elements dieser Struktur gibt an, welche Teile des Kontexts eines Threads festgelegt werden sollen. Einige Werte in der KONTEXT-Struktur , die nicht angegeben werden können, werden im Hintergrund auf den richtigen Wert festgelegt. Dazu gehören Bits im CPU-Statusregister, die den privilegierten Prozessormodus angeben, globale Aktivierungsbits im Debugregister und andere Zustände, die vom Betriebssystem gesteuert werden müssen.

Rückgabewert

Wenn der Kontext festgelegt wurde, ist der Rückgabewert nicht null.

Wenn die Funktion fehlschlägt, ist der Rückgabewert null. Rufen Sie GetLastErrorauf, um erweiterte Fehlerinformationen zu erhalten.

Bemerkungen

Die Funktion legt den Threadkontext basierend auf dem Wert des ContextFlags-Elements der Kontextstruktur fest. Der vom hThread-Parameter identifizierte Thread wird in der Regel gedebuggt, aber die Funktion kann auch ausgeführt werden, wenn der Thread nicht gedebuggt wird.

Versuchen Sie nicht, den Kontext für einen ausgeführten Thread festzulegen; die Ergebnisse sind unvorhersehbar. Verwenden Sie die SuspendThread-Funktion , um den Thread anzusetzen, bevor Sie SetThreadContext aufrufen.

Anforderungen

Anforderung Wert
Mindestens unterstützter Client Windows XP [nur Desktop-Apps]
Mindestanforderungen für unterstützte Server Windows Server 2003 [Nur Desktop-Apps]
Zielplattform Fenster
Überschrift processthreadsapi.h (include Windows.h)
Bibliothek Kernel32.lib
DLL Kernel32.dll

Siehe auch

CONTEXT-

Debugfunktionen

GetThreadContext-

GetXStateFeaturesMask

SetXStateFeaturesMask-

SuspendThread