Freigeben über


ICorDebugProcess::SetThreadContext-Methode

Legt den Kontext für den angegebenen Thread in diesem Prozess fest.

Syntax

HRESULT SetThreadContext(
    [in] DWORD threadID,
    [in] ULONG32 contextSize,
    [in, length_is(contextSize), size_is(contextSize)]
    BYTE context[]);

Die Parameter

threadID [in] Die ID des Threads, für den der Kontext festgelegt werden soll.

contextSize [in] Die Größe des context Arrays.

context [in] Ein Array von Bytes, die den Kontext des Threads beschreiben.

Der Kontext gibt die Architektur des Prozessors an, auf dem der Thread ausgeführt wird.

Bemerkungen

Der Debugger sollte diese Methode anstelle der Win32-Funktion SetThreadContext aufrufen, da sich der Thread tatsächlich in einem "entführerischen" Zustand befindet, in dem der Kontext vorübergehend geändert wurde. Diese Methode sollte nur verwendet werden, wenn sich ein Thread im systemeigenen Code befindet. Verwenden Sie ICorDebugRegisterSet für Threads in verwaltetem Code. Sie sollten niemals den Kontext eines Threads während eines Out-of-Band-Debugereignisses (OOB) ändern müssen.

Die übergebenen Daten müssen eine Kontextstruktur für die aktuelle Plattform sein.

Diese Methode kann die Laufzeit beschädigt, wenn sie nicht ordnungsgemäß verwendet wird.

Anforderungen

Plattformen: Siehe .NET unterstützte Betriebssysteme.

Kopfball: CorDebug.idl, CorDebug.h

Bibliothek: CorGuids.lib

.NET-Versionen: Verfügbar seit .NET Framework 2.0